diff options
author | Alexander Aring <aahringo@redhat.com> | 2022-10-27 16:45:16 -0400 |
---|---|---|
committer | David Teigland <teigland@redhat.com> | 2022-11-08 12:59:41 -0600 |
commit | 85839f27b17ddebe21d36a174050420783824ed3 (patch) | |
tree | d6d508f3f5e74c1146b0eafa26b498d6fe720417 /fs/dlm | |
parent | e01c4b7bd41522ae0299c07e2ee8c721fee02595 (diff) | |
download | linux-85839f27b17ddebe21d36a174050420783824ed3.tar.gz linux-85839f27b17ddebe21d36a174050420783824ed3.tar.bz2 linux-85839f27b17ddebe21d36a174050420783824ed3.zip |
fs: dlm: let dlm_add_cb queue work after resume only
We should allow dlm_add_cb() to call queue_work() only after the
recovery queued pending for delayed lkbs. This patch will move the
switch LSFL_CB_DELAY after the delayed lkb work was processed.
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/ast.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/dlm/ast.c b/fs/dlm/ast.c index d60a8d8f109d..6e07c151ad28 100644 --- a/fs/dlm/ast.c +++ b/fs/dlm/ast.c @@ -308,8 +308,6 @@ void dlm_callback_resume(struct dlm_ls *ls) if (!ls->ls_callback_wq) return; - clear_bit(LSFL_CB_DELAY, &ls->ls_flags); - more: mutex_lock(&ls->ls_cb_mutex); list_for_each_entry_safe(lkb, safe, &ls->ls_cb_delay, lkb_cb_list) { @@ -320,6 +318,8 @@ more: break; } empty = list_empty(&ls->ls_cb_delay); + if (empty) + clear_bit(LSFL_CB_DELAY, &ls->ls_flags); mutex_unlock(&ls->ls_cb_mutex); sum += count; |