Remi Pommarel
5e43540c2a
mac80211: mesh: Free pending skb when destroying a mpath
...
A mpath object can hold reference on a list of skb that are waiting for
mpath resolution to be sent. When destroying a mpath this skb list
should be cleaned up in order to not leak memory.
Fixing that kind of leak:
unreferenced object 0xffff0000181c9300 (size 1088):
comm "openvpn", pid 1782, jiffies 4295071698 (age 80.416s)
hex dump (first 32 bytes):
00 00 00 00 00 00 00 00 f9 80 36 00 00 00 00 00 ..........6.....
02 00 07 40 00 00 00 00 00 00 00 00 00 00 00 00 ...@............
backtrace:
[<000000004bc6a443>] kmem_cache_alloc+0x1a4/0x2f0
[<000000002caaef13>] sk_prot_alloc.isra.39+0x34/0x178
[<00000000ceeaa916>] sk_alloc+0x34/0x228
[<00000000ca1f1d04>] inet_create+0x198/0x518
[<0000000035626b1c>] __sock_create+0x134/0x328
[<00000000a12b3a87>] __sys_socket+0xb0/0x158
[<00000000ff859f23>] __arm64_sys_socket+0x40/0x58
[<00000000263486ec>] el0_svc_handler+0xd0/0x1a0
[<0000000005b5157d>] el0_svc+0x8/0xc
unreferenced object 0xffff000012973a40 (size 216):
comm "openvpn", pid 1782, jiffies 4295082137 (age 38.660s)
hex dump (first 32 bytes):
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00 c0 06 16 00 00 ff ff 00 93 1c 18 00 00 ff ff ................
backtrace:
[<000000004bc6a443>] kmem_cache_alloc+0x1a4/0x2f0
[<0000000023c8c8f9>] __alloc_skb+0xc0/0x2b8
[<000000007ad950bb>] alloc_skb_with_frags+0x60/0x320
[<00000000ef90023a>] sock_alloc_send_pskb+0x388/0x3c0
[<00000000104fb1a3>] sock_alloc_send_skb+0x1c/0x28
[<000000006919d2dd>] __ip_append_data+0xba4/0x11f0
[<0000000083477587>] ip_make_skb+0x14c/0x1a8
[<0000000024f3d592>] udp_sendmsg+0xaf0/0xcf0
[<000000005aabe255>] inet_sendmsg+0x5c/0x80
[<000000008651ea08>] __sys_sendto+0x15c/0x218
[<000000003505c99b>] __arm64_sys_sendto+0x74/0x90
[<00000000263486ec>] el0_svc_handler+0xd0/0x1a0
[<0000000005b5157d>] el0_svc+0x8/0xc
Fixes: 2bdaf386f99c (mac80211: mesh: move path tables into if_mesh)
Signed-off-by: Remi Pommarel <repk@triplefau.lt>
Link: https://lore.kernel.org/r/20200704135419.27703-1-repk@triplefau.lt
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2020-07-30 10:23:48 +02:00
..
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-02-24 10:36:03 +01:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-02-24 10:36:03 +01:00
2019-06-19 17:09:55 +02:00
2020-05-31 11:27:16 +02:00
2020-05-31 11:27:16 +02:00
2019-12-13 10:08:22 +01:00
2020-07-30 10:23:35 +02:00
2020-04-24 12:33:43 +02:00
2017-11-02 11:10:55 +01:00
2020-02-24 10:35:57 +01:00
2020-02-24 10:35:57 +01:00
2020-04-24 11:46:11 +02:00
2017-11-02 11:10:55 +01:00
2020-03-29 21:25:29 -07:00
2017-11-02 11:10:55 +01:00
2020-01-02 14:52:26 +01:00
2017-11-02 11:10:55 +01:00
2019-07-20 21:40:32 +02:00
2020-05-27 10:02:01 +02:00
2019-06-05 17:37:16 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-05-31 11:27:03 +02:00
2020-02-07 12:48:29 +01:00
2020-05-31 11:26:50 +02:00
2020-05-31 11:27:05 +02:00
2020-04-24 11:46:17 +02:00
2020-06-14 01:57:21 +09:00
2020-03-29 21:25:29 -07:00
2020-02-24 10:35:57 +01:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-05-28 09:02:14 +02:00
2019-11-22 13:36:25 +01:00
2020-06-25 10:54:09 +02:00
2020-07-30 10:23:48 +02:00
2020-05-31 11:27:03 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-07-30 10:20:37 +02:00
2020-05-31 11:26:39 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-06-05 14:33:51 +02:00
2019-06-19 17:09:55 +02:00
2020-04-24 12:33:43 +02:00
2017-11-02 11:10:55 +01:00
2020-04-24 11:30:13 +02:00
2020-04-24 11:30:13 +02:00
2019-10-11 10:31:45 +02:00
2019-10-11 10:31:45 +02:00
2020-05-26 20:17:35 -07:00
2019-10-11 10:31:45 +02:00
2019-10-11 10:31:45 +02:00
2019-10-11 10:31:45 +02:00
2020-06-25 12:55:45 +02:00
2020-05-31 11:27:05 +02:00
2020-05-31 11:26:50 +02:00
2020-04-24 11:31:20 +02:00
2020-04-24 12:40:20 +02:00
2020-06-25 10:48:09 +02:00
2020-05-28 09:02:14 +02:00
2020-01-15 09:52:12 +01:00
2019-07-08 20:57:08 -07:00
2019-03-29 11:20:36 +01:00
2017-11-02 11:10:55 +01:00
2020-04-24 12:33:43 +02:00
2020-06-25 10:59:27 +02:00
2020-07-30 10:20:37 +02:00
2020-04-24 12:33:42 +02:00
2020-02-07 12:40:34 +01:00
2020-02-07 12:40:34 +01:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-07-26 16:14:12 +02:00
2019-06-19 17:09:55 +02:00