Re: [PATCH] tcp: Avoid infinite loop on recvmsg bug
From: Eric Dumazet
Date: Wed Nov 07 2012 - 18:33:04 EST
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.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/