[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210629022556.3985106-4-sunnanyong@huawei.com>
Date: Tue, 29 Jun 2021 10:25:53 +0800
From: Nanyong Sun <sunnanyong@...wei.com>
To: <konishi.ryusuke@...il.com>
CC: <linux-nilfs@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<sunnanyong@...wei.com>, <wangkefeng.wang@...wei.com>
Subject: [PATCH 3/6] nilfs2: fix memory leak in nilfs_sysfs_create_##name##_group
If kobject_init_and_add return with error, kobject_put() is needed
here to avoid memory leak, because kobject_init_and_add may return
error without freeing the memory associated with the kobject it allocated.
Signed-off-by: Nanyong Sun <sunnanyong@...wei.com>
---
fs/nilfs2/sysfs.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/nilfs2/sysfs.c b/fs/nilfs2/sysfs.c
index ec85ac53720d..6305e4ef7e39 100644
--- a/fs/nilfs2/sysfs.c
+++ b/fs/nilfs2/sysfs.c
@@ -79,8 +79,8 @@ static int nilfs_sysfs_create_##name##_group(struct the_nilfs *nilfs) \
err = kobject_init_and_add(kobj, &nilfs_##name##_ktype, parent, \
#name); \
if (err) \
- return err; \
- return 0; \
+ kobject_put(kobj); \
+ return err; \
} \
static void nilfs_sysfs_delete_##name##_group(struct the_nilfs *nilfs) \
{ \
--
2.18.0.huawei.25
Powered by blists - more mailing lists