It is not allowed to call kfree_skb() from hardware interrupt context or with interrupts being disabled. This patchset is trying to add all skb to a free list, then free them after spin_unlock_irqrestore() at once. Jinjie Ruan (2): staging: rtl8192e: Do not call kfree_skb() under spin_lock_irqsave() staging: rtl8192e: Do not call kfree_skb() under spin_lock_irqsave() drivers/staging/rtl8192e/rtl8192e/rtl_core.c | 22 ++++++++++++-------- drivers/staging/rtl8192e/rtllib_softmac.c | 6 +++++- 2 files changed, 18 insertions(+), 10 deletions(-) -- 2.34.1