Pavel Skripkin
46c38e258b
nilfs2: fix memory leak in nilfs_sysfs_delete_device_group
...
[ Upstream commit 8fd0c1b0647a6bda4067ee0cd61e8395954b6f28 ]
My local syzbot instance hit memory leak in nilfs2. The problem was in
missing kobject_put() in nilfs_sysfs_delete_device_group().
kobject_del() does not call kobject_cleanup() for passed kobject and it
leads to leaking duped kobject name if kobject_put() was not called.
Fail log:
BUG: memory leak
unreferenced object 0xffff8880596171e0 (size 8):
comm "syz-executor379", pid 8381, jiffies 4294980258 (age 21.100s)
hex dump (first 8 bytes):
6c 6f 6f 70 30 00 00 00 loop0...
backtrace:
kstrdup+0x36/0x70 mm/util.c:60
kstrdup_const+0x53/0x80 mm/util.c:83
kvasprintf_const+0x108/0x190 lib/kasprintf.c:48
kobject_set_name_vargs+0x56/0x150 lib/kobject.c:289
kobject_add_varg lib/kobject.c:384 [inline]
kobject_init_and_add+0xc9/0x160 lib/kobject.c:473
nilfs_sysfs_create_device_group+0x150/0x800 fs/nilfs2/sysfs.c:999
init_nilfs+0xe26/0x12b0 fs/nilfs2/the_nilfs.c:637
Link: https://lkml.kernel.org/r/20210612140559.20022-1-paskripkin@gmail.com
Fixes: da7141fb78db ("nilfs2: add /sys/fs/nilfs2/<device> group")
Signed-off-by: Pavel Skripkin <paskripkin@gmail.com>
Acked-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
Cc: Michael L. Semon <mlsemon35@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-06-30 08:49:21 -04:00
..
2020-11-10 10:23:59 +01:00
2019-08-06 18:29:35 +02:00
2020-09-12 11:47:39 +02:00
2020-01-29 10:24:34 +01:00
2019-12-21 10:40:46 +01:00
2016-10-15 12:09:13 -07:00
2018-12-01 09:44:19 +01:00
2021-06-16 11:36:34 +02:00
2020-11-10 10:24:00 +01:00
2021-05-22 10:40:34 +02:00
2021-05-26 11:29:06 +02:00
2019-08-06 18:29:38 +02:00
2021-03-17 16:10:18 +01:00
2018-11-13 11:17:03 -08:00
2020-11-10 10:23:51 +01:00
2019-05-08 07:19:10 +02:00
2019-03-23 13:19:47 +01:00
2021-05-22 10:40:29 +02:00
2021-05-26 11:29:07 +02:00
2020-12-02 08:31:28 +01:00
2018-11-27 16:09:38 +01:00
2020-01-29 10:24:03 +01:00
2020-08-21 11:02:08 +02:00
2021-06-10 12:42:36 +02:00
2021-05-22 10:40:30 +02:00
2020-06-20 10:24:13 +02:00
2018-12-17 09:38:34 +01:00
2021-05-22 10:40:29 +02:00
2021-06-30 08:49:11 -04:00
2019-11-28 18:28:50 +01:00
2020-04-24 07:58:59 +02:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2021-06-03 08:23:33 +02:00
2021-03-03 17:44:37 +01:00
2020-09-03 11:21:19 +02:00
2021-05-22 10:40:19 +02:00
2021-03-07 11:25:56 +01:00
2019-11-25 09:52:23 +01:00
2020-12-29 13:44:57 +01:00
2016-10-10 20:16:43 -07:00
2020-08-21 11:02:06 +02:00
2019-03-13 14:04:52 -07:00
2021-06-16 11:36:35 +02:00
2020-12-29 13:44:59 +01:00
2021-01-23 15:38:18 +01:00
2021-06-30 08:49:21 -04:00
2019-02-06 17:33:30 +01:00
2021-03-03 17:44:31 +01:00
2021-06-10 12:42:36 +02:00
2016-10-10 20:16:43 -07:00
2020-02-28 15:42:43 +01:00
2021-02-23 13:59:15 +01:00
2021-06-16 11:36:36 +02:00
2020-01-12 11:24:20 +01:00
2021-01-09 13:35:50 +01:00
2016-10-10 20:16:43 -07:00
2021-04-07 12:05:40 +02:00
2020-08-26 10:29:03 +02:00
2021-05-22 10:40:32 +02:00
2021-03-07 11:25:58 +01:00
2018-12-17 09:38:32 +01:00
2021-01-17 13:57:54 +01:00
2021-03-17 16:10:14 +01:00
2020-08-21 11:02:11 +02:00
2021-03-07 11:25:56 +01:00
2018-12-21 14:11:31 +01:00
2016-10-10 20:16:43 -07:00
2017-01-09 08:32:24 +01:00
2020-06-03 08:16:42 +02:00
2019-07-10 09:55:38 +02:00
2021-03-17 16:10:18 +01:00
2019-11-06 12:18:04 +01:00
2020-10-01 20:40:12 +02:00
2020-11-10 10:23:56 +01:00
2020-05-20 08:15:32 +02:00
2018-02-25 11:05:55 +01:00
2020-06-30 15:38:35 -04:00
2017-07-05 14:40:26 +02:00
2018-02-28 10:18:33 +01:00
2019-03-27 14:13:04 +09:00
2021-04-16 11:59:07 +02:00
2019-03-13 14:04:58 -07:00
2020-10-14 09:48:13 +02:00
2021-02-03 23:19:49 +01:00
2018-01-31 12:55:52 +01:00
2020-05-27 16:41:40 +02:00
2021-02-23 13:59:15 +01:00
2020-04-02 17:20:27 +02:00
2017-09-20 08:20:01 +02:00
2017-09-20 08:19:59 +02:00
2016-10-07 18:46:29 -07:00
2020-11-24 13:03:05 +01:00
2020-01-12 11:24:13 +01:00
2018-02-22 15:43:48 +01:00
2017-07-21 07:42:22 +02:00
2017-10-18 09:35:39 +02:00
2020-03-11 07:53:07 +01:00
2020-05-02 17:23:10 +02:00
2018-02-17 13:21:15 +01:00
2020-03-20 09:07:44 +01:00
2019-06-11 12:22:45 +02:00
2020-05-02 17:23:20 +02:00
2017-03-15 10:02:43 +08:00
2017-01-26 08:24:37 +01:00
2019-06-11 12:22:49 +02:00
2020-01-04 13:41:06 +01:00
2021-03-24 10:59:25 +01:00
2016-10-07 18:46:30 -07:00
2019-06-11 12:22:45 +02:00
2017-06-14 15:06:01 +02:00
2020-11-24 13:03:00 +01:00
2017-05-08 07:47:54 +02:00
2019-09-06 10:19:37 +02:00
2016-10-08 11:06:08 -04:00
2020-08-21 11:01:55 +02:00