2020-06-15 01:19:01

by Zheng Bin

[permalink] [raw]
Subject: [PATCH RESEND] 9p: Fix memory leak in v9fs_mount

v9fs_mount
v9fs_session_init
v9fs_cache_session_get_cookie
v9fs_random_cachetag -->alloc cachetag
v9ses->fscache = fscache_acquire_cookie -->maybe NULL
sb = sget -->fail, goto clunk
clunk_fid:
v9fs_session_close
if (v9ses->fscache) -->NULL
kfree(v9ses->cachetag)

Thus memleak happens.

Signed-off-by: Zheng Bin <[email protected]>
---
fs/9p/v9fs.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/fs/9p/v9fs.c b/fs/9p/v9fs.c
index 15a99f9c7253..39def020a074 100644
--- a/fs/9p/v9fs.c
+++ b/fs/9p/v9fs.c
@@ -500,10 +500,9 @@ void v9fs_session_close(struct v9fs_session_info *v9ses)
}

#ifdef CONFIG_9P_FSCACHE
- if (v9ses->fscache) {
+ if (v9ses->fscache)
v9fs_cache_session_put_cookie(v9ses);
- kfree(v9ses->cachetag);
- }
+ kfree(v9ses->cachetag);
#endif
kfree(v9ses->uname);
kfree(v9ses->aname);
--
2.26.0.106.g9fadedd


2020-06-15 10:23:19

by Dominique Martinet

[permalink] [raw]
Subject: Re: [PATCH RESEND] 9p: Fix memory leak in v9fs_mount

Zheng Bin wrote on Mon, Jun 15, 2020:
> v9fs_mount
> v9fs_session_init
> v9fs_cache_session_get_cookie
> v9fs_random_cachetag -->alloc cachetag
> v9ses->fscache = fscache_acquire_cookie -->maybe NULL
> sb = sget -->fail, goto clunk
> clunk_fid:
> v9fs_session_close
> if (v9ses->fscache) -->NULL
> kfree(v9ses->cachetag)
>
> Thus memleak happens.
>
> Signed-off-by: Zheng Bin <[email protected]>

Thanks, will run tests & queue next weekend

--
Dominique

2020-07-09 02:05:29

by Zheng Bin

[permalink] [raw]
Subject: Re: [PATCH RESEND] 9p: Fix memory leak in v9fs_mount

Is this OK? I don't see it on linux-next

On 2020/6/15 18:20, Dominique Martinet wrote:
> Zheng Bin wrote on Mon, Jun 15, 2020:
>> v9fs_mount
>> v9fs_session_init
>> v9fs_cache_session_get_cookie
>> v9fs_random_cachetag -->alloc cachetag
>> v9ses->fscache = fscache_acquire_cookie -->maybe NULL
>> sb = sget -->fail, goto clunk
>> clunk_fid:
>> v9fs_session_close
>> if (v9ses->fscache) -->NULL
>> kfree(v9ses->cachetag)
>>
>> Thus memleak happens.
>>
>> Signed-off-by: Zheng Bin <[email protected]>
> Thanks, will run tests & queue next weekend
>

2020-07-10 11:08:37

by Dominique Martinet

[permalink] [raw]
Subject: Re: [PATCH RESEND] 9p: Fix memory leak in v9fs_mount

Zhengbin (OSKernel) wrote on Thu, Jul 09, 2020:
> Is this OK? I don't see it on linux-next

Yes, I just (still) haven't tested them, sorry.
It's in git://github.com/martinetd/linux branch 9p-test

--
Dominique