diff options
author | Stephen Hemminger <shemminger@vyatta.com> | 2008-04-16 19:37:35 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2008-05-30 22:19:22 -0400 |
commit | e83728c7b0ce92e57aa90eb4fc271a29d7a393d5 (patch) | |
tree | 2a1495f14281e11b98d95225832e17d4963f1e0f /drivers/net/ns83820.c | |
parent | c7d6b7d20f42996b28b6a26587a081ce0fc37304 (diff) |
ns8320: use netdev_alloc_skb
Use netdev_alloc_skb. This sets skb->dev and allows arch specific
allocation.
Compile tested only.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'drivers/net/ns83820.c')
-rw-r--r-- | drivers/net/ns83820.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/net/ns83820.c b/drivers/net/ns83820.c index b42c05f84be1..ff449619f047 100644 --- a/drivers/net/ns83820.c +++ b/drivers/net/ns83820.c | |||
@@ -585,16 +585,13 @@ static inline int rx_refill(struct net_device *ndev, gfp_t gfp) | |||
585 | for (i=0; i<NR_RX_DESC; i++) { | 585 | for (i=0; i<NR_RX_DESC; i++) { |
586 | struct sk_buff *skb; | 586 | struct sk_buff *skb; |
587 | long res; | 587 | long res; |
588 | |||
588 | /* extra 16 bytes for alignment */ | 589 | /* extra 16 bytes for alignment */ |
589 | skb = __dev_alloc_skb(REAL_RX_BUF_SIZE+16, gfp); | 590 | skb = __netdev_alloc_skb(ndev, REAL_RX_BUF_SIZE+16, gfp); |
590 | if (unlikely(!skb)) | 591 | if (unlikely(!skb)) |
591 | break; | 592 | break; |
592 | 593 | ||
593 | res = (long)skb->data & 0xf; | 594 | skb_reserve(skb, skb->data - PTR_ALIGN(skb->data, 16)); |
594 | res = 0x10 - res; | ||
595 | res &= 0xf; | ||
596 | skb_reserve(skb, res); | ||
597 | |||
598 | if (gfp != GFP_ATOMIC) | 595 | if (gfp != GFP_ATOMIC) |
599 | spin_lock_irqsave(&dev->rx_info.lock, flags); | 596 | spin_lock_irqsave(&dev->rx_info.lock, flags); |
600 | res = ns83820_add_rx_skb(dev, skb); | 597 | res = ns83820_add_rx_skb(dev, skb); |