cxgb: Use napi_alloc_skb instead of netdev_alloc_skb_ip_align
authorAlexander Duyck <alexander.h.duyck@redhat.com>
Wed, 10 Dec 2014 03:41:03 +0000 (19:41 -0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 10 Dec 2014 18:31:57 +0000 (13:31 -0500)
In order to use napi_alloc_skb I needed to pass a pointer to struct adapter
instead of struct pci_dev.  This allowed me to access &adapter->napi.

Signed-off-by: Alexander Duyck <alexander.h.duyck@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/chelsio/cxgb/sge.c

index 86222a1bdb12bfffcf5e3888867bf7479092307b..babe2a915b0050936edcecf86675d43610794a70 100644 (file)
@@ -1025,7 +1025,7 @@ MODULE_PARM_DESC(copybreak, "Receive copy threshold");
 
 /**
  *     get_packet - return the next ingress packet buffer
- *     @pdev: the PCI device that received the packet
+ *     @adapter: the adapter that received the packet
  *     @fl: the SGE free list holding the packet
  *     @len: the actual packet length, excluding any SGE padding
  *
@@ -1037,14 +1037,15 @@ MODULE_PARM_DESC(copybreak, "Receive copy threshold");
  *     threshold and the packet is too big to copy, or (b) the packet should
  *     be copied but there is no memory for the copy.
  */
-static inline struct sk_buff *get_packet(struct pci_dev *pdev,
+static inline struct sk_buff *get_packet(struct adapter *adapter,
                                         struct freelQ *fl, unsigned int len)
 {
-       struct sk_buff *skb;
        const struct freelQ_ce *ce = &fl->centries[fl->cidx];
+       struct pci_dev *pdev = adapter->pdev;
+       struct sk_buff *skb;
 
        if (len < copybreak) {
-               skb = netdev_alloc_skb_ip_align(NULL, len);
+               skb = napi_alloc_skb(&adapter->napi, len);
                if (!skb)
                        goto use_orig_buf;
 
@@ -1357,7 +1358,7 @@ static void sge_rx(struct sge *sge, struct freelQ *fl, unsigned int len)
        struct sge_port_stats *st;
        struct net_device *dev;
 
-       skb = get_packet(adapter->pdev, fl, len - sge->rx_pkt_pad);
+       skb = get_packet(adapter, fl, len - sge->rx_pkt_pad);
        if (unlikely(!skb)) {
                sge->stats.rx_drops++;
                return;