Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d109acd5 authored by Subash Abhinov Kasiviswanathan's avatar Subash Abhinov Kasiviswanathan Committed by Greg Kroah-Hartman
Browse files

dev: Defer free of skbs in flush_backlog



[ Upstream commit 7df5cb75cfb8acf96c7f2342530eb41e0c11f4c3 ]

IRQs are disabled when freeing skbs in input queue.
Use the IRQ safe variant to free skbs here.

Fixes: 145dd5f9 ("net: flush the softnet backlog in process context")
Signed-off-by: default avatarSubash Abhinov Kasiviswanathan <subashab@codeaurora.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 52aeeec1
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -5229,7 +5229,7 @@ static void flush_backlog(struct work_struct *work)
	skb_queue_walk_safe(&sd->input_pkt_queue, skb, tmp) {
		if (skb->dev->reg_state == NETREG_UNREGISTERING) {
			__skb_unlink(skb, &sd->input_pkt_queue);
			kfree_skb(skb);
			dev_kfree_skb_irq(skb);
			input_queue_head_incr(sd);
		}
	}