Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/cachefiles/interface.c cachefiles_clean_up_object() -> cachefiles_see_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
PARAM_VALUE 0 object->cookie 4096-ptr_max
PARAM_VALUE 1 why 6
CAPPED_DATA 0 object 1
DATA_SOURCE 0 object $0
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

fs/cachefiles/interface.c cachefiles_clean_up_object() -> cachefiles_see_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
PARAM_VALUE 0 object->cookie 4096-ptr_max
PARAM_VALUE 1 why 7
CAPPED_DATA 0 object 1
DATA_SOURCE 0 object $0
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

fs/cachefiles/interface.c cachefiles_clean_up_object() -> cachefiles_see_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
PARAM_VALUE 0 object->cookie 4096-ptr_max
PARAM_VALUE 1 why 5
CAPPED_DATA 0 object 1
DATA_SOURCE 0 object $0
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

fs/cachefiles/interface.c cachefiles_lookup_cookie() -> cachefiles_see_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
PARAM_VALUE 0 object->cookie 4096-ptr_max
PARAM_VALUE 0 object->ref.refs.counter 1
PARAM_VALUE 1 why 8
BUF_SIZE 0 object->volume 2088
CAPPED_DATA 0 object->cookie->key_len 1
CAPPED_DATA 0 object->volume->cache->bstop 1
CAPPED_DATA 0 object->volume->cache->fcull 1
CAPPED_DATA 0 object->volume->cache->fstop 1
DATA_SOURCE 0 object r cachefiles_alloc_object
TERMINATED 0 object->d_name 1
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

fs/cachefiles/interface.c cachefiles_lookup_cookie() -> cachefiles_see_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
PARAM_VALUE 0 object->cookie 4096-ptr_max
PARAM_VALUE 0 object->ref.refs.counter 1
PARAM_VALUE 1 why 9
BUF_SIZE 0 object->volume 2088
CAPPED_DATA 0 object->cookie->key_len 1
DATA_SOURCE 0 object r cachefiles_alloc_object
TERMINATED 0 object->d_name 1
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

fs/cachefiles/interface.c cachefiles_withdraw_cookie() -> cachefiles_see_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
PARAM_VALUE 1 why 10
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

fs/cachefiles/interface.c cachefiles_withdraw_cookie() -> cachefiles_see_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
PARAM_VALUE 0 object->cookie 4096-ptr_max
PARAM_VALUE 1 why 11
CAPPED_DATA 0 &object->cache_link 1
PARAM_COMPARE 0 &object->cache_link != $0->cache_link.next
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &cache->object_list_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct cachefiles_cache)->object_list_lock

fs/cachefiles/cache.c cachefiles_withdraw_objects() -> cachefiles_see_object()

Type Parameter Key Value
PARAM_VALUE 0 object 4096-ptr_max
PARAM_VALUE 1 why 11
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &cache->object_list_lock
TYPE_LOCK (struct cachefiles_cache)->object_list_lock