Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/sunrpc/cache.c cache_clean() -> sunrpc_begin_cache_remove_entry()

Type Parameter Key Value
PARAM_VALUE 0 ch 4096-ptr_max
PARAM_VALUE 1 cd 4096-ptr_max
CAPPED_DATA 1 cd->nextcheck 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &cache_list_lock
LOCK2 global &current_detail->hash_lock
TYPE_LOCK (struct cache_detail)->hash_lock

net/sunrpc/cache.c cache_purge() -> sunrpc_begin_cache_remove_entry()

Type Parameter Key Value
PARAM_VALUE 0 ch 1-u64max
PARAM_VALUE 0 ch->cache_list->next->pprev 1-u64max
PARAM_VALUE 0 ch->cache_list.next->pprev 1-u64max
PARAM_VALUE 1 cd 4096-ptr_max
DATA_SOURCE 1 cd $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 cd->hash_size
LOCK2 1 &cd->hash_lock
HALF_LOCKED2 global &nfsd_mutex
HALF_LOCKED2 global &pernet_ops_rwsem
TYPE_LOCK (struct cache_detail)->hash_lock

net/sunrpc/cache.c sunrpc_cache_add_entry() -> sunrpc_begin_cache_remove_entry()

Type Parameter Key Value
PARAM_VALUE 0 ch 4096-ptr_max
PARAM_VALUE 1 cd 4096-ptr_max
BUF_SIZE 1 cd s32min-(-1),1-s32max
BUF_SIZE 1 cd s32min-(-1),1-s32max
DATA_SOURCE 1 cd $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 1 &cd->hash_lock
HALF_LOCKED2 &inode->i_rwsem
TYPE_LOCK (struct cache_detail)->hash_lock

net/sunrpc/cache.c sunrpc_cache_unhash() -> sunrpc_begin_cache_remove_entry()

Type Parameter Key Value
PARAM_VALUE 0 ch 4096-ptr_max
PARAM_VALUE 0 ch->cache_list.pprev 1-u64max
PARAM_VALUE 1 cd 4096-ptr_max
DATA_SOURCE 0 ch $1
DATA_SOURCE 1 cd $0
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 1 &cd->hash_lock
TYPE_LOCK (struct cache_detail)->hash_lock