diff options
author | Olof Johansson <olof@lixom.net> | 2007-11-29 03:57:56 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-29 00:04:26 +0100 |
commit | 5d8949448b68b3b355036c8061e3282388826ec5 (patch) | |
tree | f76f15805679c78b863efec79ff78a347f936944 | |
parent | pasemi_mac: SKB unmap optimization (diff) | |
download | linux-5d8949448b68b3b355036c8061e3282388826ec5.tar.xz linux-5d8949448b68b3b355036c8061e3282388826ec5.zip |
pasemi_mac: Remove SKB copy/recycle logic
pasemi_mac: Remove SKB copy/recycle logic
It doesn't really buy us much, since copying is about as expensive
as the allocation in the first place. Just remove it for now.
Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r-- | drivers/net/pasemi_mac.c | 25 |
1 files changed, 3 insertions, 22 deletions
diff --git a/drivers/net/pasemi_mac.c b/drivers/net/pasemi_mac.c index ca773580cc51..07475bb7d860 100644 --- a/drivers/net/pasemi_mac.c +++ b/drivers/net/pasemi_mac.c @@ -503,13 +503,8 @@ static void pasemi_mac_replenish_rx_ring(const struct net_device *dev, /* Entry in use? */ WARN_ON(*buff); - /* skb might still be in there for recycle on short receives */ - if (info->skb) - skb = info->skb; - else { - skb = dev_alloc_skb(BUF_SIZE); - skb_reserve(skb, LOCAL_SKB_ALIGN); - } + skb = dev_alloc_skb(BUF_SIZE); + skb_reserve(skb, LOCAL_SKB_ALIGN); if (unlikely(!skb)) break; @@ -666,21 +661,7 @@ static int pasemi_mac_clean_rx(struct pasemi_mac_rxring *rx, goto next; } - if (len < 256) { - struct sk_buff *new_skb; - - new_skb = netdev_alloc_skb(mac->netdev, - len + LOCAL_SKB_ALIGN); - if (new_skb) { - skb_reserve(new_skb, LOCAL_SKB_ALIGN); - memcpy(new_skb->data, skb->data, len); - /* save the skb in buffer_info as good */ - skb = new_skb; - } - /* else just continue with the old one */ - } else - info->skb = NULL; - + info->skb = NULL; info->dma = 0; if (likely((macrx & XCT_MACRX_HTY_M) == XCT_MACRX_HTY_IPV4_OK)) { |