fs: dlm: use list_empty() to check last iteration
This patch will use list_empty(&ls->ls_cb_delay) to check for last list iteration. In case of a multiply count of MAX_CB_QUEUE and the list is empty we do a extra goto more which we can avoid by checking on list_empty(). Signed-off-by: Alexander Aring <aahringo@redhat.com> Signed-off-by: David Teigland <teigland@redhat.com>
This commit is contained in:
Родитель
1b9beda83e
Коммит
f70813d6a5
|
@ -300,6 +300,7 @@ void dlm_callback_resume(struct dlm_ls *ls)
|
|||
{
|
||||
struct dlm_lkb *lkb, *safe;
|
||||
int count = 0, sum = 0;
|
||||
bool empty;
|
||||
|
||||
clear_bit(LSFL_CB_DELAY, &ls->ls_flags);
|
||||
|
||||
|
@ -315,10 +316,11 @@ more:
|
|||
if (count == MAX_CB_QUEUE)
|
||||
break;
|
||||
}
|
||||
empty = list_empty(&ls->ls_cb_delay);
|
||||
mutex_unlock(&ls->ls_cb_mutex);
|
||||
|
||||
sum += count;
|
||||
if (count == MAX_CB_QUEUE) {
|
||||
if (!empty) {
|
||||
count = 0;
|
||||
cond_resched();
|
||||
goto more;
|
||||
|
|
Загрузка…
Ссылка в новой задаче