Re: [PATCH] ocfs2: Fix error path kobject memory leak

From: Joseph Qi
Date: Mon May 13 2019 - 03:30:16 EST




On 19/5/13 11:34, Tobin C. Harding wrote:
> If a call to kobject_init_and_add() fails we should call kobject_put()
> otherwise we leak memory.
>
> Add call to kobject_put() in the error path of call to
> kobject_init_and_add(). Please note, this has the side effect that
> the release method is called if kobject_init_and_add() fails.
>
> Signed-off-by: Tobin C. Harding <tobin@xxxxxxxxxx>

Reviewed-by: Joseph Qi <joseph.qi@xxxxxxxxxxxxxxxxx>
> ---
>
> Is it ok to send patches during the merge window?
>
> Applies on top of Linus' mainline tag: v5.1
>
> Happy to rebase if there are conflicts.
>
> thanks,
> Tobin.
>
> fs/ocfs2/filecheck.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/fs/ocfs2/filecheck.c b/fs/ocfs2/filecheck.c
> index f65f2b2f594d..1906cc962c4d 100644
> --- a/fs/ocfs2/filecheck.c
> +++ b/fs/ocfs2/filecheck.c
> @@ -193,6 +193,7 @@ int ocfs2_filecheck_create_sysfs(struct ocfs2_super *osb)
> ret = kobject_init_and_add(&entry->fs_kobj, &ocfs2_ktype_filecheck,
> NULL, "filecheck");
> if (ret) {
> + kobject_put(&entry->fs_kobj);
> kfree(fcheck);
> return ret;
> }
>