diff options
Diffstat (limited to 'wl1271/platforms/os/linux/src/RxBuf.c')
-rw-r--r-- | wl1271/platforms/os/linux/src/RxBuf.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/wl1271/platforms/os/linux/src/RxBuf.c b/wl1271/platforms/os/linux/src/RxBuf.c index 4a18acf3..bda7c10e 100644 --- a/wl1271/platforms/os/linux/src/RxBuf.c +++ b/wl1271/platforms/os/linux/src/RxBuf.c @@ -51,8 +51,9 @@ void *RxBufAlloc(TI_HANDLE hOs, TI_UINT32 len,PacketClassTag_e ePacketClassTag) TI_UINT32 alloc_len = len + WSPI_PAD_BYTES + PAYLOAD_ALIGN_PAD_BYTES + RX_HEAD_LEN_ALIGNED; struct sk_buff *skb; rx_head_t *rx_head; + gfp_t flags = (in_atomic()) ? GFP_ATOMIC : GFP_KERNEL; - skb = alloc_skb(alloc_len, GFP_ATOMIC); + skb = alloc_skb(alloc_len, flags); if (!skb) { return NULL; |