YueHaibing
d28a029290
net-sysfs: Fix mem leak in netdev_register_kobject
...
[ Upstream commit 895a5e96db
]
syzkaller report this:
BUG: memory leak
unreferenced object 0xffff88837a71a500 (size 256):
comm "syz-executor.2", pid 9770, jiffies 4297825125 (age 17.843s)
hex dump (first 32 bytes):
00 00 00 00 ad 4e ad de ff ff ff ff 00 00 00 00 .....N..........
ff ff ff ff ff ff ff ff 20 c0 ef 86 ff ff ff ff ........ .......
backtrace:
[<00000000db12624b>] netdev_register_kobject+0x124/0x2e0 net/core/net-sysfs.c:1751
[<00000000dc49a994>] register_netdevice+0xcc1/0x1270 net/core/dev.c:8516
[<00000000e5f3fea0>] tun_set_iff drivers/net/tun.c:2649 [inline]
[<00000000e5f3fea0>] __tun_chr_ioctl+0x2218/0x3d20 drivers/net/tun.c:2883
[<000000001b8ac127>] vfs_ioctl fs/ioctl.c:46 [inline]
[<000000001b8ac127>] do_vfs_ioctl+0x1a5/0x10e0 fs/ioctl.c:690
[<0000000079b269f8>] ksys_ioctl+0x89/0xa0 fs/ioctl.c:705
[<00000000de649beb>] __do_sys_ioctl fs/ioctl.c:712 [inline]
[<00000000de649beb>] __se_sys_ioctl fs/ioctl.c:710 [inline]
[<00000000de649beb>] __x64_sys_ioctl+0x74/0xb0 fs/ioctl.c:710
[<000000007ebded1e>] do_syscall_64+0xc8/0x580 arch/x86/entry/common.c:290
[<00000000db315d36>] entry_SYSCALL_64_after_hwframe+0x49/0xbe
[<00000000115be9bb>] 0xffffffffffffffff
It should call kset_unregister to free 'dev->queues_kset'
in error path of register_queue_kobjects, otherwise will cause a mem leak.
Reported-by: Hulk Robot <hulkci@huawei.com >
Fixes: 1d24eb4815
("xps: Transmit Packet Steering")
Signed-off-by: YueHaibing <yuehaibing@huawei.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
2019-03-23 08:44:22 +01:00
..
2015-12-01 15:45:05 -05:00
2018-05-16 10:06:50 +02:00
2017-08-11 09:08:52 -07:00
2019-02-23 09:05:13 +01:00
2017-01-15 13:41:35 +01:00
2018-02-25 11:03:55 +01:00
2017-07-05 14:37:13 +02:00
2017-06-17 06:39:36 +02:00
2015-09-24 15:21:54 -07:00
2018-02-03 17:04:25 +01:00
2018-11-27 16:07:56 +01:00
2015-09-01 17:00:24 -07:00
2015-07-08 13:59:20 -07:00
2015-02-19 15:45:53 -05:00
2015-04-02 14:04:59 -04:00
2015-10-08 04:27:03 -07:00
2018-02-25 11:03:34 +01:00
2018-09-29 03:08:52 -07:00
2018-04-13 19:50:11 +02:00
2019-03-23 08:44:22 +01:00
2014-01-05 20:27:54 -05:00
2015-08-29 13:05:16 -07:00
2015-12-07 10:09:03 -05:00
2015-05-31 00:03:21 -07:00
2017-05-02 21:19:53 -07:00
2015-12-03 10:18:21 -05:00
2016-11-15 07:46:38 +01:00
2015-11-03 11:08:22 -05:00
2015-10-05 03:19:06 -07:00
2018-12-17 21:55:09 +01:00
2016-03-03 15:07:05 -08:00
2015-05-25 22:55:37 -04:00
2019-02-23 09:05:14 +01:00
2018-01-17 09:35:29 +01:00
2019-01-26 09:42:53 +01:00
2015-12-01 15:45:05 -05:00
2018-04-13 19:50:11 +02:00
2015-07-09 14:17:15 -07:00
2015-10-26 22:24:22 -07:00
2015-10-08 05:26:35 -07:00