Messages in this thread | | | Subject | Re: [PATCH] tcp: Avoid infinite loop on recvmsg bug | From | Eric Dumazet <> | Date | Wed, 07 Nov 2012 15:33:12 -0800 |
| |
On Wed, 2012-11-07 at 13:14 -0800, Julius Werner wrote: > > What I find very sad in all this is that you didnt mention the driver > > that was triggering this bug. > > Sorry, I was just trying to keep this thread focussed on one patch. > The bug report that led me to this is publicly accessible at > http://crosbug.com/35827. We have encountered the problem only once, > on an Acer AC700 Chromebook that ran automated tests. The ethernet > interface for the offending socket was provided by a USB-to-Ethernet > dongle using the smsc95xx/usbnet module (v1.0.4).
This driver uses interesting skb_clone() games and skb->truesize lies :
skb->truesize = size + sizeof(struct sk_buff);
So you probably are fighting a bug we already fixed in upstream kernel.
(commit c8628155ece363 "tcp: reduce out_of_order memory use" did not played well with cloned skbs.)
This issue was already discussed on netdev in the past.
| |