diff --git a/net/ieee802154/socket.c b/net/ieee802154/socket.c index a45a0401adc5..3e59ae57cb5a 100644 --- a/net/ieee802154/socket.c +++ b/net/ieee802154/socket.c @@ -191,6 +191,7 @@ static void raw_unhash(struct sock *sk) static void raw_close(struct sock *sk, long timeout) { + skb_queue_purge(&sk->sk_receive_queue); sk_common_release(sk); } @@ -479,6 +480,7 @@ static int dgram_init(struct sock *sk) static void dgram_close(struct sock *sk, long timeout) { + skb_queue_purge(&sk->sk_receive_queue); sk_common_release(sk); }