Skip to content

Commit 200b977

Browse files
Alexander Aringteigland
authored andcommitted
dlm: fix dlm_recover_members refcount on error
If dlm_recover_members() fails we don't drop the references of the previous created root_list that holds and keep all rsbs alive during the recovery. It might be not an unlikely event because ping_members() could run into an -EINTR if another recovery progress was triggered again. Fixes: 3a747f4 ("dlm: move rsb root_list to ls_recover() stack") Signed-off-by: Alexander Aring <aahringo@redhat.com> Signed-off-by: David Teigland <teigland@redhat.com>
1 parent f74dacb commit 200b977

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

fs/dlm/recoverd.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ static int ls_recover(struct dlm_ls *ls, struct dlm_recover *rv)
151151
error = dlm_recover_members(ls, rv, &neg);
152152
if (error) {
153153
log_rinfo(ls, "dlm_recover_members error %d", error);
154-
goto fail;
154+
goto fail_root_list;
155155
}
156156

157157
dlm_recover_dir_nodeid(ls, &root_list);

0 commit comments

Comments
 (0)