linux/drivers/net/ethernet/atheros/alx
Feng Tang 881d0327db net: alx: Work around the DMA RX overflow issue
Commit 26c5f03 uses a new skb allocator to avoid the RFD overflow
issue.

But from debugging without datasheet, we found the error always
happen when the DMA RX address is set to 0x....fc0, which is very
likely to be a HW/silicon problem.

So one idea is instead of adding a new allocator, why not just
hitting the right target by avaiding the error-prone DMA address?

This patch will actually
* Remove the commit 26c5f03
* Apply rx skb with 64 bytes longer space, and if the allocated skb
  has a 0x...fc0 address, it will use skb_resever(skb, 64) to
  advance the address, so that the RX overflow can be avoided.

In theory this method should also apply to atl1c driver, which
I can't find anyone who can help to test on real devices.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=70761
Signed-off-by: Feng Tang <feng.tang@intel.com>
Suggested-by: Eric Dumazet <edumazet@google.com>
Tested-by: Ole Lukoie <olelukoie@mail.ru>
Acked-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-06-14 15:30:50 -04:00
..
alx.h net: alx: Work around the DMA RX overflow issue 2016-06-14 15:30:50 -04:00
ethtool.c alx: add stats to ethtool 2014-01-11 20:52:59 -08:00
hw.c ethernet/atheros/alx: sanitize buffer sizing and padding 2016-01-06 15:05:25 -05:00
hw.h ethernet/atheros/alx: sanitize buffer sizing and padding 2016-01-06 15:05:25 -05:00
main.c net: alx: Work around the DMA RX overflow issue 2016-06-14 15:30:50 -04:00
Makefile
reg.h ethernet/atheros/alx: add Killer E2400 device ID 2015-11-18 14:58:04 -05:00