Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/dlm/lock.c __receive_convert_reply() -> is_demoted()

Type Parameter Key Value
PARAM_VALUE 0 lkb 4096-ptr_max
CAPPED_DATA 0 lkb->lkb_nodeid 1
DATA_SOURCE 0 lkb $1
STR_LEN 0 lkb->lkb_rqmode (-1)
PREEMPT_ADD
RX_PATH
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 __receive_convert_reply() -> is_demoted()

Type Parameter Key Value
PARAM_VALUE 0 lkb 4096-ptr_max
CAPPED_DATA 0 lkb->lkb_nodeid 1
DATA_SOURCE 0 lkb $1
STR_LEN 0 lkb->lkb_rqmode (-1)
PREEMPT_ADD
RX_PATH
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 do_convert() -> is_demoted()

Type Parameter Key Value
PARAM_VALUE 0 lkb 4096-ptr_max
CAPPED_DATA 0 lkb 1
DATA_SOURCE 0 lkb $1
STR_LEN 0 lkb->lkb_rqmode (-1)
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 lkb->lkb_exflags 0-u32max[u]
USER_DATA 0 lkb->lkb_rqmode 0-5[u]
LOCK2 &r->res_lock
HALF_LOCKED2 &ls->ls_recoverd_active
HALF_LOCKED2 &ls->ls_requestqueue_lock
HALF_LOCKED2 bh
TYPE_LOCK (struct dlm_rsb)->res_lock

fs/dlm/lock.c grant_pending_convert() -> is_demoted()

Type Parameter Key Value
PARAM_VALUE 0 lkb 4096-ptr_max
CAPPED_DATA 0 &lkb->lkb_statequeue 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &r->res_lock
HALF_LOCKED2 &ls->ls_recoverd_active
HALF_LOCKED2 bh
TYPE_LOCK (struct dlm_rsb)->res_lock

fs/dlm/lock.c grant_pending_convert() -> is_demoted()

Type Parameter Key Value
PARAM_VALUE 0 lkb 4096-ptr_max
CAPPED_DATA 0 lkb 1
CAPPED_DATA 0 &lkb->lkb_statequeue 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &r->res_lock
HALF_LOCKED2 &ls->ls_recoverd_active
HALF_LOCKED2 bh
TYPE_LOCK (struct dlm_rsb)->res_lock