[PATCH 2/2] Use GFP_KERNEL for RX skb allocations

Pontus Fuchs pontus.fuchs at gmail.com
Fri May 24 08:43:51 EDT 2013


These allocations are done in process / wq context.

Signed-off-by: Pontus Fuchs <pontus.fuchs at gmail.com>
---
 dxe.c  | 2 +-
 txrx.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/dxe.c b/dxe.c
index 67cb5de..dc88f9e 100644
--- a/dxe.c
+++ b/dxe.c
@@ -213,7 +213,7 @@ static int wcn36xx_dxe_ch_alloc_skb(struct wcn36xx *wcn, struct wcn36xx_dxe_ch *
 
 	for ( i = 0; i < wcn_ch->desc_num; i++)
 	{
-		cur_dxe_ctl->skb = alloc_skb(WCN36XX_PKT_SIZE, GFP_ATOMIC);
+		cur_dxe_ctl->skb = alloc_skb(WCN36XX_PKT_SIZE, GFP_KERNEL);
 		skb_reserve(cur_dxe_ctl->skb, WCN36XX_PKT_SIZE);
 		skb_headroom(cur_dxe_ctl->skb);
 		skb_push(cur_dxe_ctl->skb, WCN36XX_PKT_SIZE);
diff --git a/txrx.c b/txrx.c
index c469e68..97bc6d0 100644
--- a/txrx.c
+++ b/txrx.c
@@ -26,7 +26,7 @@ int  wcn36xx_rx_skb(struct wcn36xx *wcn, struct sk_buff *skb)
 	struct ieee80211_hdr *hdr;
 	struct wcn36xx_rx_bd * bd;
 
-	skb2 = skb_clone(skb, GFP_ATOMIC);
+	skb2 = skb_clone(skb, GFP_KERNEL);
 	bd = (struct wcn36xx_rx_bd *)skb2->data;
 	buff_to_be((u32*)bd, sizeof(*bd)/sizeof(u32));
 
-- 
1.8.1.2




More information about the wcn36xx mailing list