Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/lockd/svclock.c nlmsvc_lock() -> nlmsvc_remove_block()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.c.flc_file 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.fl_end 0-s64max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.fl_start 0-s64max
PARAM_VALUE 0 block->b_file 4096-ptr_max
PARAM_VALUE 0 block->b_list.next->prev 4096-ptr_max
PARAM_VALUE 0 block->b_list.prev->next 4096-ptr_max
BUF_SIZE 0 block (-1),112
BUF_SIZE 0 block (-1),112
BUF_SIZE 0 block->b_host (-1),976
CAPPED_DATA 0 block->b_call->a_args.lock.fl.fl_end 1
CAPPED_DATA 0 block->b_call->a_args.lock.fl.fl_start 1
CAPPED_DATA 0 &block->b_list 1
BIT_INFO 0 block->b_flags 0x0,0xfffffffe
NOCHECK_CALL
LOCK2 &file->f_mutex
TYPE_LOCK (struct nlm_file)->f_mutex

fs/lockd/svclock.c nlmsvc_lock() -> nlmsvc_remove_block()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.c.flc_file 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.fl_end 0-s64max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.fl_start 0-s64max
PARAM_VALUE 0 block->b_file 4096-ptr_max
PARAM_VALUE 0 block->b_list.next->prev 4096-ptr_max
PARAM_VALUE 0 block->b_list.prev->next 4096-ptr_max
BUF_SIZE 0 block (-1),112
BUF_SIZE 0 block (-1),112
BUF_SIZE 0 block->b_host (-1),976
CAPPED_DATA 0 block->b_call->a_args.lock.fl.fl_end 1
CAPPED_DATA 0 block->b_call->a_args.lock.fl.fl_start 1
CAPPED_DATA 0 &block->b_list 1
BIT_INFO 0 block->b_flags 0x0,0xfffffffe
NOCHECK_CALL
LOCK2 &file->f_mutex
TYPE_LOCK (struct nlm_file)->f_mutex

fs/lockd/svclock.c nlmsvc_lock() -> nlmsvc_remove_block()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.c.flc_file 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.fl_end 0-s64max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.fl_start 0-s64max
PARAM_VALUE 0 block->b_file 4096-ptr_max
PARAM_VALUE 0 block->b_list.next->prev 4096-ptr_max
PARAM_VALUE 0 block->b_list.prev->next 4096-ptr_max
BUF_SIZE 0 block (-1),112
BUF_SIZE 0 block (-1),112
BUF_SIZE 0 block->b_host (-1),976
CAPPED_DATA 0 block->b_call->a_args.lock.fl.fl_end 1
CAPPED_DATA 0 block->b_call->a_args.lock.fl.fl_start 1
CAPPED_DATA 0 &block->b_list 1
BIT_INFO 0 block->b_flags 0x0,0xfffffffe
NOCHECK_CALL
LOCK2 &file->f_mutex
TYPE_LOCK (struct nlm_file)->f_mutex

fs/lockd/svclock.c nlmsvc_lock() -> nlmsvc_remove_block()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.c.flc_file 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.fl_end 0-s64max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.fl_start 0-s64max
PARAM_VALUE 0 block->b_file 4096-ptr_max
PARAM_VALUE 0 block->b_list.next->prev 4096-ptr_max
PARAM_VALUE 0 block->b_list.prev->next 4096-ptr_max
BUF_SIZE 0 block (-1),112
BUF_SIZE 0 block (-1),112
BUF_SIZE 0 block->b_host (-1),976
CAPPED_DATA 0 block->b_call->a_args.lock.fl.fl_end 1
CAPPED_DATA 0 block->b_call->a_args.lock.fl.fl_start 1
CAPPED_DATA 0 &block->b_list 1
BIT_INFO 0 block->b_flags 0x0,0xfffffffe
NOCHECK_CALL
LOCK2 &file->f_mutex
TYPE_LOCK (struct nlm_file)->f_mutex

fs/lockd/svclock.c nlmsvc_unlink_block() -> nlmsvc_remove_block()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.c.flc_blocked_member.next 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.c.flc_blocked_member.next->next 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.c.flc_blocked_member.next->prev 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.c.flc_blocked_member.prev 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.c.flc_blocked_member.prev->next 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.c.flc_blocked_member.prev->prev 4096-ptr_max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.c.flc_link->next->pprev 1-u64max
PARAM_VALUE 0 block->b_call->a_args.lock.fl.c.flc_link.next->pprev 1-u64max
PARAM_VALUE 0 block->b_call->a_host->h_rpcclnt->cl_auth->au_ops->ping 0,8859700910737862656
PARAM_VALUE 0 block->b_call->a_host->h_rpcclnt->cl_debugfs->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 block->b_call->a_host->h_rpcclnt->cl_debugfs->d_sb->__s_d_op->d_automount 0,2908707185815040000,3401111987815645184,6746145930460459008,7190988915944083456,7386785427940065280,8018779550845526016
PARAM_VALUE 0 block->b_call->a_host->h_rpcclnt->cl_debugfs->d_sb->__s_d_op->d_init 0,2385819921126617088,7057831443282669568,7824184004865302528
PARAM_VALUE 0 block->b_call->a_host->h_rpcclnt->cl_debugfs->d_sb->__s_d_op->d_iput 0,170374395438985216,837750826476904448,5086081384299388928,8216155483032948736
PARAM_VALUE 0 block->b_call->a_host->h_rpcclnt->cl_debugfs->d_sb->__s_d_op->d_manage 0,1859587847549206528
PARAM_VALUE 0 block->b_call->a_host->h_rpcclnt->cl_debugfs->d_sb->__s_d_op->d_prune 0,2225594340392566784,7225953709177749504
PARAM_VALUE 0 block->b_call->a_host->h_rpcclnt->cl_debugfs->d_sb->__s_d_op->d_real 0,4509355519306412032
PARAM_VALUE 0 block->b_call->a_host->h_rpcclnt->cl_debugfs->d_sb->__s_d_op->d_unalias_trylock 0,6635409759016140800
PARAM_VALUE 0 block->b_call->a_host->h_rpcclnt->cl_debugfs->d_sb->__s_d_op->d_unalias_unlock 0,6336447517789900800
PARAM_VALUE 0 block->b_call->a_host->h_rpcclnt->cl_debugfs->d_sb->__s_d_op->d_weak_revalidate 0,1549882712720502784,5632434648052031488,5669063523602272256,7231033168839651328
BUF_SIZE 0 block (-1),112
BUF_SIZE 0 block (-1),112
BUF_SIZE 0 block->b_host (-1),976
DATA_SOURCE 0 block $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &file->f_mutex