[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9235D6609DB808459E95D78E17F2E43D40A477A5@CHN-SV-EXMX02.mchp-main.com>
Date: Tue, 18 Apr 2017 22:09:41 +0000
From: <Woojung.Huh@...rochip.com>
To: <eric.dumazet@...il.com>, <james.hughes@...pberrypi.org>
CC: <netdev@...r.kernel.org>, <steve.glendinning@...well.net>,
<UNGLinuxDriver@...rochip.com>
Subject: RE: [PATCH v2] smsc95xx: Use skb_cow_head to deal with cloned skbs
> > @@ -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
Powered by blists - more mailing lists