diff options
author | Tycho Andersen <tycho@tycho.ws> | 2018-11-02 14:18:20 -0600 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2019-12-01 09:17:27 +0100 |
commit | afb4717ab81b5aca60cd9836788cb6e2e6a1bcba (patch) | |
tree | dff1b51e52bda017e6507ce91d9841c5d83bdb00 /fs/dlm | |
parent | 30fc13ae88b2b6a40c130f243284ee030591a658 (diff) | |
download | linux-stable-afb4717ab81b5aca60cd9836788cb6e2e6a1bcba.tar.gz linux-stable-afb4717ab81b5aca60cd9836788cb6e2e6a1bcba.tar.bz2 linux-stable-afb4717ab81b5aca60cd9836788cb6e2e6a1bcba.zip |
dlm: fix invalid free
[ Upstream commit d968b4e240cfe39d39d80483bac8bca8716fd93c ]
dlm_config_nodes() does not allocate nodes on failure, so we should not
free() nodes when it fails.
Signed-off-by: Tycho Andersen <tycho@tycho.ws>
Signed-off-by: David Teigland <teigland@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'fs/dlm')
-rw-r--r-- | fs/dlm/member.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/dlm/member.c b/fs/dlm/member.c index 3fda3832cf6a..cad6d85911a8 100644 --- a/fs/dlm/member.c +++ b/fs/dlm/member.c @@ -680,7 +680,7 @@ int dlm_ls_start(struct dlm_ls *ls) error = dlm_config_nodes(ls->ls_name, &nodes, &count); if (error < 0) - goto fail; + goto fail_rv; spin_lock(&ls->ls_recover_lock); @@ -712,8 +712,9 @@ int dlm_ls_start(struct dlm_ls *ls) return 0; fail: - kfree(rv); kfree(nodes); + fail_rv: + kfree(rv); return error; } |