Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/dlm/lock.c _dlm_master_lookup() -> dlm_free_rsb()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 0 r->res_length (-88)-64
PARAM_VALUE 0 r->res_ls s64min-(-4096),4096-s64max
CAPPED_DATA 0 r->res_dir_nodeid 1
PREEMPT_ADD
NOCHECK_CALL
LOCK2 rcu_read
HALF_LOCKED2 &ls->ls_in_recovery
HALF_LOCKED2 &ls->ls_recoverd_active
HALF_LOCKED2 &ls->ls_recv_active
HALF_LOCKED2 &ls->ls_requestqueue_lock

fs/dlm/lock.c _dlm_master_lookup() -> dlm_free_rsb()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 0 r->res_length (-88)-64
PARAM_VALUE 0 r->res_ls s64min-(-4096),4096-s64max
CAPPED_DATA 0 r->res_dir_nodeid 1
PREEMPT_ADD
NOCHECK_CALL
LOCK2 rcu_read
HALF_LOCKED2 &ls->ls_in_recovery
HALF_LOCKED2 &ls->ls_recoverd_active
HALF_LOCKED2 &ls->ls_recv_active
HALF_LOCKED2 &ls->ls_requestqueue_lock

fs/dlm/lock.c find_rsb_dir() -> dlm_free_rsb()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 0 r->rcu.func 1-u64max
PARAM_VALUE 0 r->rcu.next 0
PARAM_VALUE 0 r->res_length s32min-64
PARAM_VALUE 0 r->res_ls s64min-(-4096),4096-s64max
PARAM_VALUE 0 r->res_nodeid (-1)
PARAM_VALUE 0 r->res_ref.refcount.refs.counter 1
NOSPEC 0 r->res_length
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 r->res_hash 0-u32max
USER_DATA 0 r->res_length 0-64[c]
LOCK2 rcu_read
HALF_LOCKED2 &ls->ls_in_recovery
HALF_LOCKED2 &ls->ls_recoverd_active
HALF_LOCKED2 &ls->ls_recv_active
HALF_LOCKED2 &ls->ls_requestqueue_lock

fs/dlm/lock.c find_rsb_dir() -> dlm_free_rsb()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 0 r->res_length s32min-64
PARAM_VALUE 0 r->res_ls s64min-(-4096),4096-s64max
PARAM_VALUE 0 r->res_nodeid (-1)-0
PARAM_VALUE 0 r->res_ref.refcount.refs.counter 1
FUZZY_MAX 0 r->res_nodeid 0
NOSPEC 0 r->res_length
HARD_MAX 0 r->res_nodeid 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 r->res_hash 0-u32max
USER_DATA 0 r->res_length 0-64[c]
LOCK2 rcu_read
HALF_LOCKED2 &ls->ls_in_recovery
HALF_LOCKED2 &ls->ls_recoverd_active
HALF_LOCKED2 &ls->ls_recv_active
HALF_LOCKED2 &ls->ls_requestqueue_lock

fs/dlm/lock.c find_rsb_nodir() -> dlm_free_rsb()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 0 r->res_length s32min-64
PARAM_VALUE 0 r->res_ls s64min-(-4096),4096-s64max
PARAM_VALUE 0 r->res_ref.refcount.refs.counter 1
NOSPEC 0 r->res_length
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 r->res_hash 0-u32max
USER_DATA 0 r->res_length 0-64[c]
LOCK2 rcu_read
HALF_LOCKED2 &ls->ls_in_recovery
HALF_LOCKED2 &ls->ls_recoverd_active
HALF_LOCKED2 &ls->ls_recv_active
HALF_LOCKED2 &ls->ls_requestqueue_lock

fs/dlm/lock.c free_inactive_rsb() -> dlm_free_rsb()

Type Parameter Key Value
PARAM_VALUE 0 r 4096-ptr_max
PARAM_VALUE 0 r->res_convertqueue.next 4096-ptr_max
PARAM_VALUE 0 r->res_grantqueue.next 4096-ptr_max
PARAM_VALUE 0 r->res_lookup.next 4096-ptr_max
PARAM_VALUE 0 r->res_masters_list.next 4096-ptr_max
PARAM_VALUE 0 r->res_recover_list.next 4096-ptr_max
PARAM_VALUE 0 r->res_root_list.next 4096-ptr_max
PARAM_VALUE 0 r->res_scan_list.next 4096-ptr_max
PARAM_VALUE 0 r->res_waitqueue.next 4096-ptr_max
CAPPED_DATA 0 &r->res_convertqueue 1
CAPPED_DATA 0 &r->res_grantqueue 1
CAPPED_DATA 0 &r->res_lookup 1
CAPPED_DATA 0 &r->res_masters_list 1
CAPPED_DATA 0 &r->res_recover_list 1
CAPPED_DATA 0 &r->res_root_list 1
CAPPED_DATA 0 &r->res_scan_list 1
CAPPED_DATA 0 &r->res_waitqueue 1
DATA_SOURCE 0 r $0
PARAM_COMPARE 0 &r->res_convertqueue == $0->res_convertqueue.next
PARAM_COMPARE 0 &r->res_grantqueue == $0->res_grantqueue.next
PARAM_COMPARE 0 &r->res_lookup == $0->res_lookup.next
PARAM_COMPARE 0 &r->res_masters_list == $0->res_masters_list.next
PARAM_COMPARE 0 &r->res_recover_list == $0->res_recover_list.next
PARAM_COMPARE 0 &r->res_root_list == $0->res_root_list.next
PARAM_COMPARE 0 &r->res_scan_list == $0->res_scan_list.next
PARAM_COMPARE 0 &r->res_waitqueue == $0->res_waitqueue.next
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ls->ls_in_recovery
HALF_LOCKED2 &ls->ls_recoverd_active
HALF_LOCKED2 &ls->ls_requestqueue_lock
HALF_LOCKED2 &ls->ls_rsbtbl_lock
HALF_LOCKED2 bh

fs/dlm/lockspace.c rhash_free_rsb() -> dlm_free_rsb()

Type Parameter Key Value
DATA_SOURCE 0 r $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ct_priv->control_lock
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &efx->tc->mutex
HALF_LOCKED2 global &pernet_ops_rwsem