Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/dlm/lock.c dlm_recover_waiters_pre() -> is_overlap_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lkb 4096-ptr_max
CAPPED_DATA 0 &lkb->lkb_wait_reply 1
LOCK2 &ls->ls_in_recovery
LOCK2 &ls->ls_recoverd_active
TYPE_LOCK (struct dlm_ls)->ls_in_recovery
TYPE_LOCK (struct dlm_ls)->ls_recoverd_active

fs/dlm/lock.c queue_cast_overlap() -> is_overlap_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lkb 4096-ptr_max
DATA_SOURCE 0 lkb $1
PREEMPT_ADD
LOCK2 &ls->ls_requestqueue_lock
LOCK2 &r->res_lock
LOCK2 bh
HALF_LOCKED2 &ls->ls_recoverd_active
HALF_LOCKED2 &ls->ls_recv_active
TYPE_LOCK (struct dlm_ls)->ls_requestqueue_lock
TYPE_LOCK (struct dlm_rsb)->res_lock

fs/dlm/lock.c validate_unlock_args() -> is_overlap_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lkb 4096-ptr_max
CAPPED_DATA 0 &lkb->lkb_rsb_lookup 1
DATA_SOURCE 0 lkb $0
PARAM_COMPARE 0 &lkb->lkb_rsb_lookup == $0->lkb_rsb_lookup.next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &r->res_lock
LOCK2 bh
HALF_LOCKED2 &ls->ls_in_recovery
TYPE_LOCK (struct dlm_rsb)->res_lock