diff options
author | Alexander Aring <aahringo@redhat.com> | 2021-11-02 20:17:13 +0100 |
---|---|---|
committer | David Teigland <teigland@redhat.com> | 2021-11-02 20:39:20 +0100 |
commit | e10249b1902d3b0b71e99f518a695c2c39ab4fe6 (patch) | |
tree | 25b5c0d58b18c3563e32ec4f28facb9c1c566797 /fs/dlm | |
parent | fs: dlm: use dlm_recovery_stopped instead of test_bit (diff) | |
download | linux-e10249b1902d3b0b71e99f518a695c2c39ab4fe6.tar.xz linux-e10249b1902d3b0b71e99f518a695c2c39ab4fe6.zip |
fs: dlm: use dlm_recovery_stopped in condition
This patch will change to evaluate the dlm_recovery_stopped() in the
condition of the if branch instead fetch it before evaluating the
condition. As this is an atomic test-set operation it should be
evaluated in the condition itself.
Reported-by: Andreas Gruenbacher <agruenba@redhat.com>
Signed-off-by: Alexander Aring <aahringo@redhat.com>
Signed-off-by: David Teigland <teigland@redhat.com>
Diffstat (limited to 'fs/dlm')
-rw-r--r-- | fs/dlm/dir.c | 3 | ||||
-rw-r--r-- | fs/dlm/member.c | 3 | ||||
-rw-r--r-- | fs/dlm/recoverd.c | 3 |
3 files changed, 3 insertions, 6 deletions
diff --git a/fs/dlm/dir.c b/fs/dlm/dir.c index 45ebbe602bbf..b6692f81ec83 100644 --- a/fs/dlm/dir.c +++ b/fs/dlm/dir.c @@ -84,8 +84,7 @@ int dlm_recover_directory(struct dlm_ls *ls) for (;;) { int left; - error = dlm_recovery_stopped(ls); - if (error) { + if (dlm_recovery_stopped(ls)) { error = -EINTR; goto out_free; } diff --git a/fs/dlm/member.c b/fs/dlm/member.c index 731d489aa323..61f906e705db 100644 --- a/fs/dlm/member.c +++ b/fs/dlm/member.c @@ -442,8 +442,7 @@ static int ping_members(struct dlm_ls *ls) int error = 0; list_for_each_entry(memb, &ls->ls_nodes, list) { - error = dlm_recovery_stopped(ls); - if (error) { + if (dlm_recovery_stopped(ls)) { error = -EINTR; break; } diff --git a/fs/dlm/recoverd.c b/fs/dlm/recoverd.c index 97d052cea5a9..a55dfce705dd 100644 --- a/fs/dlm/recoverd.c +++ b/fs/dlm/recoverd.c @@ -124,8 +124,7 @@ static int ls_recover(struct dlm_ls *ls, struct dlm_recover *rv) dlm_recover_waiters_pre(ls); - error = dlm_recovery_stopped(ls); - if (error) { + if (dlm_recovery_stopped(ls)) { error = -EINTR; goto fail; } |