|
@@ -869,11 +869,12 @@ static void enic_free_rq_buf(struct vnic_rq *rq, struct vnic_rq_buf *buf)
|
|
|
dev_kfree_skb_any(buf->os_buf);
|
|
|
}
|
|
|
|
|
|
-static inline struct sk_buff *enic_rq_alloc_skb(unsigned int size)
|
|
|
+static inline struct sk_buff *enic_rq_alloc_skb(struct net_device *netdev,
|
|
|
+ unsigned int size)
|
|
|
{
|
|
|
struct sk_buff *skb;
|
|
|
|
|
|
- skb = dev_alloc_skb(size + NET_IP_ALIGN);
|
|
|
+ skb = netdev_alloc_skb(netdev, size + NET_IP_ALIGN);
|
|
|
|
|
|
if (skb)
|
|
|
skb_reserve(skb, NET_IP_ALIGN);
|
|
@@ -884,12 +885,13 @@ static inline struct sk_buff *enic_rq_alloc_skb(unsigned int size)
|
|
|
static int enic_rq_alloc_buf(struct vnic_rq *rq)
|
|
|
{
|
|
|
struct enic *enic = vnic_dev_priv(rq->vdev);
|
|
|
+ struct net_device *netdev = enic->netdev;
|
|
|
struct sk_buff *skb;
|
|
|
- unsigned int len = enic->netdev->mtu + ETH_HLEN;
|
|
|
+ unsigned int len = netdev->mtu + ETH_HLEN;
|
|
|
unsigned int os_buf_index = 0;
|
|
|
dma_addr_t dma_addr;
|
|
|
|
|
|
- skb = enic_rq_alloc_skb(len);
|
|
|
+ skb = enic_rq_alloc_skb(netdev, len);
|
|
|
if (!skb)
|
|
|
return -ENOMEM;
|
|
|
|