diff options
author | Eric Dumazet <edumazet@google.com> | 2012-10-05 10:23:55 +0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-10-07 08:40:54 +0400 |
commit | acb600def2110b1310466c0e485c0d26299898ae (patch) | |
tree | 21036c7d0518601aba70dde0246ac229cd8dfc0c /drivers/net/ethernet/freescale/ucc_geth.h | |
parent | 809d5fc9bf6589276a12bd4fd611e4c7ff9940c3 (diff) | |
download | linux-acb600def2110b1310466c0e485c0d26299898ae.tar.xz |
net: remove skb recycling
Over time, skb recycling infrastructure got litle interest and
many bugs. Generic rx path skb allocation is now using page
fragments for efficient GRO / TCP coalescing, and recyling
a tx skb for rx path is not worth the pain.
Last identified bug is that fat skbs can be recycled
and it can endup using high order pages after few iterations.
With help from Maxime Bizon, who pointed out that commit
87151b8689d (net: allow pskb_expand_head() to get maximum tailroom)
introduced this regression for recycled skbs.
Instead of fixing this bug, lets remove skb recycling.
Drivers wanting really hot skbs should use build_skb() anyway,
to allocate/populate sk_buff right before netif_receive_skb()
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Maxime Bizon <mbizon@freebox.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/freescale/ucc_geth.h')
-rw-r--r-- | drivers/net/ethernet/freescale/ucc_geth.h | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/net/ethernet/freescale/ucc_geth.h b/drivers/net/ethernet/freescale/ucc_geth.h index f71b3e7b12de..75f337163ce3 100644 --- a/drivers/net/ethernet/freescale/ucc_geth.h +++ b/drivers/net/ethernet/freescale/ucc_geth.h @@ -1214,8 +1214,6 @@ struct ucc_geth_private { /* index of the first skb which hasn't been transmitted yet. */ u16 skb_dirtytx[NUM_TX_QUEUES]; - struct sk_buff_head rx_recycle; - struct ugeth_mii_info *mii_info; struct phy_device *phydev; phy_interface_t phy_interface; |