linux/drivers/net/ethernet
Eric Dumazet 7b70176421 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>
2013-07-30 18:12:07 -07:00
..
3com net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
8390 net/trivial: replace numeric with standard PM state macros 2013-06-28 22:11:48 -07:00
adaptec net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
adi net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
aeroflex net: ethernet: use platform_{get,set}_drvdata() 2013-05-25 21:27:58 -07:00
allwinner drivers: net: sun4i-emac: select MDIO_SUN4I 2013-07-26 13:57:58 -07:00
alteon net/ethernet/alteon/acenic: Use module_pci_driver to register driver 2013-05-22 14:35:04 -07:00
amd amd8111e: use pdev->pm_cap instead of pci_find_capability(.., PCI_CAP_ID_PM) 2013-06-19 22:22:56 -07:00
apple net: Restore unintentional reverts. 2013-06-24 12:43:40 -07:00
arc arc_emac: fix compile-time errors & warnings on PPC64 2013-06-26 01:35:44 -07:00
atheros atl1c: Fix misuse of netdev_alloc_skb in refilling rx ring 2013-07-30 18:12:07 -07:00
broadcom net/tg3: Fix warning from pci_disable_device() 2013-07-26 14:28:00 -07:00
brocade Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-07-09 18:24:39 -07:00
cadence drivers/net/ethernet/cadence: don't use devm_pinctrl_get_select_default() in probe 2013-07-11 17:18:26 -07:00
calxeda net: ethernet: remove unnecessary platform_set_drvdata() 2013-05-27 22:34:51 -07:00
chelsio cxgb3: Missing rtnl lock in error recovery 2013-07-02 12:37:48 -07:00
cirrus net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
cisco drivers/net: enic: release rtnl_lock on error-path 2013-07-09 12:55:48 -07:00
davicom net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
dec net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
dlink net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
emulex be2net: Fix to avoid hardware workaround when not needed 2013-07-16 13:01:57 -07:00
faraday net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
freescale net/fec: Don't let ndo_start_xmit return NETDEV_TX_BUSY without link 2013-07-30 16:05:04 -07:00
fujitsu Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-05-01 14:08:52 -07:00
hp
i825xx drivers:net: Remove unnecessary OOM messages after netdev_alloc_skb 2013-03-09 16:09:19 -05:00
ibm Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-07-09 18:24:39 -07:00
icplus net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
intel igb: fix vlan filtering in promisc mode when not in VT mode 2013-07-28 13:17:17 -07:00
marvell net: mv643xx_eth: do not use port number as platform device id 2013-07-09 12:51:47 -07:00
mellanox mlx5: use after free in mlx5_cmd_comp_handler() 2013-07-24 15:44:51 -07:00
micrel net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
microchip net: ethernet: enc28j60: use spi_get_drvdata() and spi_set_drvdata() 2013-04-07 16:48:19 -04:00
myricom net/trivial: replace numeric with standard PM state macros 2013-06-28 22:11:48 -07:00
natsemi net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
neterion treewide: Fix typo in printk 2013-06-18 13:48:45 +02:00
nuvoton net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
nvidia net/ethernet/nvidia/forcedeth: Use module_pci_driver to register driver 2013-05-22 14:35:05 -07:00
nxp net: ethernet: remove unnecessary platform_set_drvdata() 2013-05-27 22:34:51 -07:00
octeon Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2013-07-13 14:52:21 -07:00
oki-semi net: pch_gbe depends on x86 2013-07-22 14:43:30 -07:00
packetengines net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
pasemi drivers:net: dma_alloc_coherent: use __GFP_ZERO instead of memset(, 0) 2013-03-17 12:50:24 -04:00
qlogic qlcnic: Fix diagnostic interrupt test for 83xx adapters. 2013-07-27 20:03:02 -07:00
rdc net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
realtek r8169: fix lockdep warning when removing interface 2013-07-24 15:42:59 -07:00
renesas sh_eth: SH_ETH should depend on HAS_DMA 2013-07-10 19:47:14 -07:00
seeq net: ethernet: remove unnecessary platform_set_drvdata() 2013-05-27 22:34:51 -07:00
sfc sfc: Enable RX scatter for flows steered by RFS 2013-07-22 18:03:50 -07:00
sgi net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
silan net/ethernet/silan/sc92031: Use module_pci_driver to register driver 2013-05-22 14:35:03 -07:00
sis net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
smsc net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
stmicro dt:net:stmmac: Add dt specific phy reset callback support. 2013-07-04 14:34:17 -07:00
sun sunvnet: vnet_port_remove must call unregister_netdev 2013-07-10 13:35:52 -07:00
tehuti net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
ti Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-07-09 18:24:39 -07:00
tile tile: support new Tilera hypervisor 2013-05-02 16:20:31 -04:00
toshiba net/ethernet/toshiba/tc35815: Use module_pci_driver to register driver 2013-05-22 14:35:04 -07:00
tundra net: ethernet: remove unnecessary platform_set_drvdata() 2013-05-27 22:34:51 -07:00
via via-rhine: fix dma mapping errors 2013-07-12 16:28:02 -07:00
wiznet net: ethernet: remove unnecessary platform_set_drvdata() 2013-05-27 22:34:51 -07:00
xilinx net: emaclite: Convert to use devm_ioremap_resource 2013-06-12 02:22:35 -07:00
xircom Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-05-01 14:08:52 -07:00
xscale net: ethernet: remove unnecessary platform_set_drvdata() 2013-05-27 22:34:51 -07:00
Kconfig ethernet/arc/arc_emac - Add new driver 2013-06-25 16:34:32 -07:00
Makefile ethernet/arc/arc_emac - Add new driver 2013-06-25 16:34:32 -07:00
dnet.c
dnet.h
ethoc.c net: ethernet: remove unnecessary platform_set_drvdata() 2013-05-27 22:34:51 -07:00
fealnx.c
jme.c net, jme: remove redundant D0 power state set 2013-05-31 01:39:08 -07:00
jme.h
korina.c net: Restore unintentional reverts. 2013-06-24 12:43:40 -07:00
lantiq_etop.c lantiq_etop: use free_netdev(netdev) instead of kfree() 2013-03-21 11:50:10 -04:00
netx-eth.c net: ethernet: remove unnecessary platform_set_drvdata() 2013-05-27 22:34:51 -07:00
s6gmac.c net: ethernet: remove unnecessary platform_set_drvdata() 2013-05-27 22:34:51 -07:00