Hello Eli,

      To optimize ipoib_ud_skb_put_frags(), the patch could be like this
since we know the first buf only has IPOIB_UD_HEAD_SIZE, how do you think?

static void ipoib_ud_skb_put_frags(struct sk_buff *skb, unsigned int
length)
{
        skb_frag_t *frag = &skb_shinfo(skb)->frags[0];
        if (skb_shinfo(skb)->nr_frags) {
                /*
                 * we know only two buffers here, first buf size is
                 * IPOIB_UD_HEAD_SIZE
                 */
                skb->tail += IPOIB_UD_HEAD_SIZE;
                frag->size = length - IPOIB_UD_HEAD_SIZE;
                skb->data_len += frag->size;
                skb->truesize += frag->size;
                skb->len += length;
        } else
                skb_put(skb, length);
}

Thanks
Shirley
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to