]> git.baikalelectronics.ru Git - kernel.git/commit
atl1c: Fix misuse of netdev_alloc_skb in refilling rx ring
authorEric Dumazet <edumazet@google.com>
Mon, 29 Jul 2013 17:24:04 +0000 (10:24 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 31 Jul 2013 01:12:07 +0000 (18:12 -0700)
commit33d177442a85b0a47eb59f535c1ba8c401cdd26a
treebcbc0648f8fb8a1715eda99ec25c9053a0525d47
parentc805aeaa871913f40e670f0548e8eec56f18d447
atl1c: Fix misuse of netdev_alloc_skb in refilling rx ring

On Mon, 2013-07-29 at 08:30 -0700, Eric Dumazet wrote:
> On Mon, 2013-07-29 at 13:09 +0100, Luis Henriques wrote:
>
> >
> > I confirm that I can't reproduce the issue using this patch.
> >
>
> Thanks, I'll send a polished patch, as this one had an error if
> build_skb() returns NULL (in case sk_buff allocation fails)

Please try the following patch : It should use 2K frags instead of 4K
for normal 1500 mtu

Thanks !

[PATCH] atl1c: use custom skb allocator

We had reports ( https://bugzilla.kernel.org/show_bug.cgi?id=54021 )
that using high order pages for skb allocations is problematic for atl1c

We do not know exactly what the problem is, but we suspect that crossing
4K pages is not well supported by this hardware.

Use a custom allocator, using page allocator and 2K fragments for
optimal stack behavior. We might make this allocator generic
in future kernels.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Luis Henriques <luis.henriques@canonical.com>
Cc: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/atheros/atl1c/atl1c.h
drivers/net/ethernet/atheros/atl1c/atl1c_main.c