Re: [PATCH v1 3/3] usb: gadget: NCM: Stop RX TCP Bursts getting dropped.
From: Jim Baxter <hidden>
Date: 2014-05-30 11:25:55
Also in:
lkml
From: Jim Baxter <hidden>
Date: 2014-05-30 11:25:55
Also in:
lkml
On 29/05/14 20:04, Eric Dumazet wrote:
On Thu, 2014-05-29 at 18:12 +0100, Jim Baxter wrote:quoted
This fixes a problem with dropped packets over 16k CDC-NCM when the connection is being heavily used. The issue was that the skb truesize for the unpacked NCM packets was too high after they were cloned from the 16k skb, this lead to the potential memory calculated by the Kernel running out of memory earlier then it should. Signed-off-by: Jim Baxter <redacted> ---Note the patch is OK, but changelog a bit misleading ;) Kernel was not running out of memory, because truesize was correct. The problem here is that a frame was consuming more kernel memory than really needed, so chances of hitting socket sk_rcvbuf limit was high. BTW : #define NTB_OUT_SIZE 16384 alloc_skb(size) -> kmalloc(16384 + sizeof(struct skb_shared_info)) -> roundup() => 32768 So truesize of the skb was infact ~32KB, which is really insane indeed. After your patch, its back to ~2KB Acked-by: Eric Dumazet <edumazet@google.com>
Thank you, I will clarify the description. Jim