net: Flush deferred skb free on socket destroy
authorGal Pressman <gal@nvidia.com>
Mon, 17 Jan 2022 09:27:33 +0000 (11:27 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 17 Jan 2022 13:07:47 +0000 (13:07 +0000)
commit79074a72d335dbd021a716d8cc65cba3b2f706ab
tree4dd25b42974029832f25bbe6ac1ec4e9e60a713b
parentdb094aa8140e6da25ba77345b24a8af0c220665e
net: Flush deferred skb free on socket destroy

The cited Fixes patch moved to a deferred skb approach where the skbs
are not freed immediately under the socket lock.  Add a WARN_ON_ONCE()
to verify the deferred list is empty on socket destroy, and empty it to
prevent potential memory leaks.

Fixes: f35f821935d8 ("tcp: defer skb freeing after socket lock is released")
Signed-off-by: Gal Pressman <gal@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/sock.c