r8169: use 50% less ram for RX ring
authorEric Dumazet <eric.dumazet@gmail.com>
Mon, 11 Oct 2010 11:17:47 +0000 (11:17 +0000)
committerDavid S. Miller <davem@davemloft.net>
Sat, 16 Oct 2010 18:13:18 +0000 (11:13 -0700)
commit6f0333b8fde44b8c04a53b2461504f0e8f1cebe6
tree7a5f065c7f55e891760b6162723ec003b7fa922d
parent7662ff46b7b3678162ce125903115e4ab0607a2d
r8169: use 50% less ram for RX ring

Using standard skb allocations in r8169 leads to order-3 allocations (if
PAGE_SIZE=4096), because NIC needs 16383 bytes, and skb overhead makes
this bigger than 16384 -> 32768 bytes per "skb"

Using kmalloc() permits to reduce memory requirements of one r8169 nic
by 4Mbytes. (256 frames * 16Kbytes). This is fine since a hardware bug
requires us to copy incoming frames, so we build real skb when doing
this copy.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/r8169.c