aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2014-03-15 18:35:40 -0700
committerEric W. Biederman <ebiederm@xmission.com>2014-03-24 21:19:24 -0700
commit8d4ade284a41aa827a13242b6fa9b6b68b9b7d71 (patch)
treeb7d4cf4f501c7e1cfdd0ba29583470970e5fe18d
parent979de8a09a00228017e8ad1bc9d6ebc60b51bee9 (diff)
wlags49_h2: Call dev_kfree/consume_skb_any instead of dev_kfree_skb.
Replace dev_kfree_skb with dev_consume_skb_any in wl_send and wl_send_dma which can be called in hard irq and other contexts, on the code paths where the skb was transmitted successfully. Replace dev_kfree_skb with dev_kfree_skb_any in wl_send_dmay which can be called in hard irq and other contexts, on the code path where a skb is dropped. Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
-rw-r--r--drivers/staging/wlags49_h2/wl_netdev.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/staging/wlags49_h2/wl_netdev.c b/drivers/staging/wlags49_h2/wl_netdev.c
index 965b1c0a4753..69bc0a01ae14 100644
--- a/drivers/staging/wlags49_h2/wl_netdev.c
+++ b/drivers/staging/wlags49_h2/wl_netdev.c
@@ -715,7 +715,7 @@ int wl_send( struct wl_private *lp )
/* Free the skb and perform queue cleanup, as the buffer was
transmitted successfully */
- dev_kfree_skb( lp->txF.skb );
+ dev_consume_skb_any( lp->txF.skb );
lp->txF.skb = NULL;
lp->txF.port = 0;
@@ -1730,7 +1730,7 @@ int wl_send_dma( struct wl_private *lp, struct sk_buff *skb, int port )
WL_WDS_NETIF_STOP_QUEUE( lp );
lp->netif_queue_on = FALSE;
- dev_kfree_skb( skb );
+ dev_kfree_skb_any( skb );
return 0;
}
}
@@ -1755,7 +1755,7 @@ int wl_send_dma( struct wl_private *lp, struct sk_buff *skb, int port )
/* Free the skb and perform queue cleanup, as the buffer was
transmitted successfully */
- dev_kfree_skb( skb );
+ dev_consume_skb_any( skb );
return TRUE;
} // wl_send_dma

Privacy Policy