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>
This commit is contained in:
Родитель
e01c4b7bd4
Коммит
85839f27b1
|
@ -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;
|
||||
|
|
Загрузка…
Ссылка в новой задаче