aboutsummaryrefslogtreecommitdiffstats
path: root/net/core/sock.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/core/sock.c')
-rw-r--r--net/core/sock.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/net/core/sock.c b/net/core/sock.c
index 443b98d05f1e..9773be724aa9 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
@@ -137,6 +137,7 @@
137 137
138#include <linux/filter.h> 138#include <linux/filter.h>
139#include <net/sock_reuseport.h> 139#include <net/sock_reuseport.h>
140#include <net/bpf_sk_storage.h>
140 141
141#include <trace/events/sock.h> 142#include <trace/events/sock.h>
142 143
@@ -1709,6 +1710,10 @@ static void __sk_destruct(struct rcu_head *head)
1709 1710
1710 sock_disable_timestamp(sk, SK_FLAGS_TIMESTAMP); 1711 sock_disable_timestamp(sk, SK_FLAGS_TIMESTAMP);
1711 1712
1713#ifdef CONFIG_BPF_SYSCALL
1714 bpf_sk_storage_free(sk);
1715#endif
1716
1712 if (atomic_read(&sk->sk_omem_alloc)) 1717 if (atomic_read(&sk->sk_omem_alloc))
1713 pr_debug("%s: optmem leakage (%d bytes) detected\n", 1718 pr_debug("%s: optmem leakage (%d bytes) detected\n",
1714 __func__, atomic_read(&sk->sk_omem_alloc)); 1719 __func__, atomic_read(&sk->sk_omem_alloc));