> > @@ -2067,13 +2067,9 @@ static struct sk_buff *smsc95xx_tx_fixup(struct
> usbnet *dev,
> >     /* We do not advertise SG, so skbs should be already linearized */
> >     BUG_ON(skb_shinfo(skb)->nr_frags);
> >
> > -   if (skb_headroom(skb) < overhead) {
> > -           struct sk_buff *skb2 = skb_copy_expand(skb,
> > -                   overhead, 0, flags);
> > -           dev_kfree_skb_any(skb);
> > -           skb = skb2;
> > -           if (!skb)
> > -                   return NULL;
> > +   /* Make writable and expand header space by overhead if required
> */
> > +   if (skb_cow_head(skb, overhead)) {
> 
> I believe you still need to
>               dev_kfree_skb_any(skb);
> 
I think caller of usbnet_start_xmit() takes care of free when return NULL.

- Woojung

Reply via email to