Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/dlm/lock.c _unlock_lock() -> do_unlock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 0 r->res_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 r->res_nodeid 0
PARAM_VALUE 1 lkb 4096-ptr_max
PARAM_VALUE 1 lkb->lkb_resource 4096-ptr_max
PARAM_VALUE 1 lkb->lkb_resource->res_lock.rlock.dep_map->name 0-255
DATA_SOURCE 0 r $0
DATA_SOURCE 1 lkb $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 lkb->lkb_exflags 0-u32max[c][u]
LOCK2 0 &r->res_lock
HALF_LOCKED2 &ls->ls_recoverd_active
HALF_LOCKED2 bh
TYPE_LOCK (struct dlm_rsb)->res_lock

fs/dlm/lock.c receive_unlock() -> do_unlock()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 0 r->res_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 lkb 4096-ptr_max
PARAM_VALUE 1 lkb->lkb_lvbptr 16,4096-ptr_max
PARAM_VALUE 1 lkb->lkb_nodeid s32min-(-1),1-s32max
PARAM_VALUE 1 lkb->lkb_resource 4096-ptr_max
PARAM_VALUE 1 lkb->lkb_resource->res_lock.rlock.dep_map->name 0-255
CAPPED_DATA 1 lkb->lkb_nodeid 1
CAPPED_DATA 1 lkb->lkb_remid 1
PREEMPT_ADD <- disables preempt
LOCK2 &ls->ls_requestqueue_lock
LOCK2 bh
LOCK2 0 &r->res_lock
HALF_LOCKED2 &ls->ls_recoverd_active
HALF_LOCKED2 &ls->ls_recv_active
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct dlm_ls)->ls_requestqueue_lock
TYPE_LOCK (struct dlm_rsb)->res_lock