| From cb0aae0e31c632c407a2cab4307be85a001d4d98 Mon Sep 17 00:00:00 2001 |
| From: Zheng Bin <zhengbin13@huawei.com> |
| Date: Mon, 15 Jun 2020 09:21:53 +0800 |
| Subject: 9p: Fix memory leak in v9fs_mount |
| |
| From: Zheng Bin <zhengbin13@huawei.com> |
| |
| commit cb0aae0e31c632c407a2cab4307be85a001d4d98 upstream. |
| |
| 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. |
| |
| Link: http://lkml.kernel.org/r/20200615012153.89538-1-zhengbin13@huawei.com |
| Fixes: 60e78d2c993e ("9p: Add fscache support to 9p") |
| Cc: <stable@vger.kernel.org> # v2.6.32+ |
| Signed-off-by: Zheng Bin <zhengbin13@huawei.com> |
| Signed-off-by: Dominique Martinet <asmadeus@codewreck.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| fs/9p/v9fs.c | 5 ++--- |
| 1 file changed, 2 insertions(+), 3 deletions(-) |
| |
| --- a/fs/9p/v9fs.c |
| +++ b/fs/9p/v9fs.c |
| @@ -457,10 +457,9 @@ void v9fs_session_close(struct v9fs_sess |
| } |
| |
| #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); |