fs: dlm: use dlm_recovery_stopped instead of test_bit
authorAlexander Aring <aahringo@redhat.com>
Tue, 2 Nov 2021 19:17:12 +0000 (15:17 -0400)
committerDavid Teigland <teigland@redhat.com>
Tue, 2 Nov 2021 19:39:20 +0000 (14:39 -0500)
This patch will change to use dlm_recovery_stopped() which is the dlm way
to check if the LSFL_RECOVER_STOP flag in ls_flags by using the helper.
It is an atomic operation but the check is still as before to fetch the
value if ls_recover_lock is held. There might be more further
investigations if the value can be changed afterwards and if it has any
side effects.

Signed-off-by: Alexander Aring <aahringo@redhat.com>
Signed-off-by: David Teigland <teigland@redhat.com>
fs/dlm/rcom.c

index 6cba864..5821b77 100644 (file)
@@ -601,7 +601,7 @@ void dlm_receive_rcom(struct dlm_ls *ls, struct dlm_rcom *rc, int nodeid)
 
        spin_lock(&ls->ls_recover_lock);
        status = ls->ls_recover_status;
-       stop = test_bit(LSFL_RECOVER_STOP, &ls->ls_flags);
+       stop = dlm_recovery_stopped(ls);
        seq = ls->ls_recover_seq;
        spin_unlock(&ls->ls_recover_lock);