Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

lib/xarray.c xa_destroy() -> xas_init_marks()

Type Parameter Key Value
PARAM_VALUE 0 xas 4096-ptr_max
PARAM_VALUE 0 xas->xa 4096-ptr_max
PARAM_VALUE 0 xas->xa_alloc 0
PARAM_VALUE 0 xas->xa_index 0
PARAM_VALUE 0 xas->xa_lru 0
PARAM_VALUE 0 xas->xa_node 0
PARAM_VALUE 0 xas->xa_offset 0
PARAM_VALUE 0 xas->xa_pad 0
PARAM_VALUE 0 xas->xa_shift 0
PARAM_VALUE 0 xas->xa_sibs 0
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &((&xas)->xa)->xa_lock
LOCK2 flags

lib/xarray.c xas_store() -> xas_init_marks()

Type Parameter Key Value
PARAM_VALUE 0 xas 4096-ptr_max
PARAM_VALUE 0 xas->xa_node 0,4096-ptr_max
PARAM_VALUE 0 xas->xa_node->slots 4096-ptr_max
BUF_SIZE 0 xas->xa (-1),88
CAPPED_DATA 0 xas->xa_node 1
DATA_SOURCE 0 xas $0
NOSPEC 0 xas->xa_index
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 xas->xa_index 0-u64max[c]
HOST_DATA 0 xas->xa_offset 0-15[c]
HOST_DATA 0 xas->xa_sibs 0-15,255[c]
USER_DATA 0 xas->xa_index 0-u64max
USER_DATA 0 xas->xa_offset 0-255
USER_DATA 0 xas->xa_sibs 0-255
HALF_LOCKED2 &(&cache->reqs)->xa_lock
HALF_LOCKED2 &(&ictx->objects)->xa_lock
HALF_LOCKED2 &(&mapping->i_pages)->xa_lock
HALF_LOCKED2 &((&xas)->xa)->xa_lock
HALF_LOCKED2 &(xas->xa)->xa_lock
HALF_LOCKED2 &access->ioas_lock
HALF_LOCKED2 &buffer->mutex
HALF_LOCKED2 &cache->daemon_mutex
HALF_LOCKED2 &frag->frag_sem
HALF_LOCKED2 &iopt->iova_rwsem
HALF_LOCKED2 &mapping->host->i_lock
HALF_LOCKED2 &pages->mutex
HALF_LOCKED2 &udev->cmdr_lock
HALF_LOCKED2 &xa->xa_lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

mm/filemap.c page_cache_delete() -> xas_init_marks()

Type Parameter Key Value
PARAM_VALUE 0 xas 4579885240732745728
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 xas->xa_index
LOCK2 irq
HALF_LOCKED2 &(&mapping->i_pages)->xa_lock
HALF_LOCKED2 &folio->private->lock
HALF_LOCKED2 &mapping->host->i_lock
HALF_LOCKED2 rcu_read

lib/test_xarray.c check_xa_mark_2() -> xas_init_marks()

Type Parameter Key Value
PARAM_VALUE 0 xas 4096-ptr_max
PARAM_VALUE 0 xas->xa 5024146686711472128
PARAM_VALUE 0 xas->xa_alloc 0
PARAM_VALUE 0 xas->xa_index 0
PARAM_VALUE 0 xas->xa_lru 0
PARAM_VALUE 0 xas->xa_node 0-1,4096-ptr_max
PARAM_VALUE 0 xas->xa_pad 0
PARAM_VALUE 0 xas->xa_shift 0
PARAM_VALUE 0 xas->xa_sibs 0
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &((&xas)->xa)->xa_lock

lib/test_xarray.c check_xa_mark_2() -> xas_init_marks()

Type Parameter Key Value
PARAM_VALUE 0 xas 4096-ptr_max
PARAM_VALUE 0 xas->xa 5024146686711472128
PARAM_VALUE 0 xas->xa_alloc 0
PARAM_VALUE 0 xas->xa_lru 0
PARAM_VALUE 0 xas->xa_node 0-1,4096-ptr_max
PARAM_VALUE 0 xas->xa_pad 0
PARAM_VALUE 0 xas->xa_shift 0
PARAM_VALUE 0 xas->xa_sibs 0
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &((&xas)->xa)->xa_lock

lib/test_xarray.c check_xa_multi_store_adv_del_entry() -> xas_init_marks()

Type Parameter Key Value
PARAM_VALUE 0 xas 2236783299100811264
PREEMPT_ADD
NOCHECK_CALL
LOCK2 &xa->xa_lock
LOCK2 irq
TYPE_LOCK (struct xarray)->xa_lock