Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 9 files:

Smatch caller information:

lib/idr.c ida_free() -> xas_set_mark()

Type Parameter Key Value
PARAM_VALUE 0 xas 4096-ptr_max
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
PARAM_VALUE 1 mark 0
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &((&xas)->xa)->xa_lock
LOCK2 flags

fs/dax.c dax_insert_entry() -> xas_set_mark()

Type Parameter Key Value
PARAM_VALUE 0 xas 538607196269289472,2804297901316567040
PARAM_VALUE 1 mark 0
DATA_SOURCE 0 xas $0
NOSPEC 0 xas->xa_index
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 xas->xa_index 0-4503599627370495
USER_DATA 0 xas->xa_offset 0-255
LOCK2 &(xas->xa)->xa_lock
LOCK2 irq
HALF_LOCKED2 &inode->i_mapping->invalidate_lock
HALF_LOCKED2 &mapping->invalidate_lock

fs/dax.c dax_insert_entry() -> xas_set_mark()

Type Parameter Key Value
PARAM_VALUE 0 xas 538607196269289472,2804297901316567040
PARAM_VALUE 0 xas->xa->xa_head 4098-18446744073709547522
PARAM_VALUE 0 xas->xa_node->private_list.next->next 4096-ptr_max
PARAM_VALUE 0 xas->xa_node->private_list.next->prev 4096-ptr_max
PARAM_VALUE 0 xas->xa_node->private_list.prev->next 4096-ptr_max
PARAM_VALUE 0 xas->xa_sibs 0
PARAM_VALUE 1 mark 2
DATA_SOURCE 0 xas $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 xas->xa_offset 0-255
LOCK2 &(xas->xa)->xa_lock
LOCK2 irq
HALF_LOCKED2 &inode->i_mapping->invalidate_lock
HALF_LOCKED2 &mapping->invalidate_lock

fs/dax.c dax_insert_pfn_mkwrite() -> xas_set_mark()

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_lru 0
PARAM_VALUE 0 xas->xa_node 0,4096-ptr_max
PARAM_VALUE 0 xas->xa_pad 0
PARAM_VALUE 0 xas->xa_shift 1-18
PARAM_VALUE 1 mark 0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &((&xas)->xa)->xa_lock
LOCK2 irq
HALF_LOCKED2 &inode->i_mapping->invalidate_lock
HALF_LOCKED2 &mapping->invalidate_lock

mm/page-writeback.c __folio_start_writeback() -> xas_set_mark()

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_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
PARAM_VALUE 1 mark 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 xas->xa_index
LOCK2 &((&xas)->xa)->xa_lock
LOCK2 flags
HALF_LOCKED2 &bfs->lock
HALF_LOCKED2 &sbi->node_write.internal_rwsem
HALF_LOCKED2 flags

mm/page-writeback.c tag_pages_for_writeback() -> xas_set_mark()

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_lru 0
PARAM_VALUE 0 xas->xa_node 0-1,3,4096-ptr_max
PARAM_VALUE 0 xas->xa_pad 0
PARAM_VALUE 0 xas->xa_shift 0
PARAM_VALUE 0 xas->xa_sibs 0
PARAM_VALUE 1 mark 2
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 xas->xa_index 0-u64max
LOCK2 &((&xas)->xa)->xa_lock
LOCK2 irq

lib/xarray.c __xa_set_mark() -> xas_set_mark()

Type Parameter Key Value
PARAM_VALUE 0 xas 1710522478715035648
PARAM_VALUE 0 xas->xa 4096-ptr_max
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
PARAM_VALUE 1 mark 0-2
DATA_SOURCE 1 mark $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 xas->xa_offset 0-15[c]
USER_DATA 0 xas->xa_index 0-4503599627370495[c]
USER_DATA 0 xas->xa_offset 0-255
HALF_LOCKED2 &(&btnc->i_pages)->xa_lock
HALF_LOCKED2 &(&dmap->i_pages)->xa_lock
HALF_LOCKED2 &(&ipsec->sadb)->xa_lock
HALF_LOCKED2 &(&mapping->i_pages)->xa_lock
HALF_LOCKED2 &btree->b_sem
HALF_LOCKED2 &clp->cl_fence_mutex
HALF_LOCKED2 &mi->mi_sem
HALF_LOCKED2 &xa->xa_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 global &(&debugfs_dentries)->xa_lock
HALF_LOCKED2 global &(&debugfs_symlinks)->xa_lock
HALF_LOCKED2 irq

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

Type Parameter Key Value
PARAM_VALUE 0 xas 4096-ptr_max
PARAM_VALUE 0 xas->xa 4096-ptr_max
PARAM_VALUE 0 xas->xa->xa_flags 4-u32max
PARAM_VALUE 1 mark 0
BUF_SIZE 0 xas->xa (-1),88
DATA_SOURCE 0 xas $0
NOSPEC 0 xas->xa_index
PREEMPT_ADD
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 &((&xas)->xa)->xa_lock
HALF_LOCKED2 &xa->xa_lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

fs/btrfs/extent_io.c buffer_tree_set_mark() -> xas_set_mark()

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_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
PARAM_VALUE 1 mark 0
DATA_SOURCE 1 mark $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &((&xas)->xa)->xa_lock
LOCK2 flags
HALF_LOCKED2 &eb->lock
HALF_LOCKED2 &eb->lock
HALF_LOCKED2 &fs_info->cleaner_mutex
HALF_LOCKED2 &fs_info->remap_mutex
HALF_LOCKED2 &fs_info->subvol_sem
HALF_LOCKED2 &leaf->lock
HALF_LOCKED2 &left->lock
HALF_LOCKED2 &right->lock
HALF_LOCKED2 &split->lock

fs/btrfs/extent_io.c buffer_tree_tag_for_writeback() -> xas_set_mark()

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_lru 0
PARAM_VALUE 0 xas->xa_node 0-1,3,4096-ptr_max
PARAM_VALUE 0 xas->xa_pad 0
PARAM_VALUE 0 xas->xa_shift 0
PARAM_VALUE 0 xas->xa_sibs 0
PARAM_VALUE 1 mark 2
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 xas->xa_index 0-u64max
LOCK2 &((&xas)->xa)->xa_lock
LOCK2 irq
HALF_LOCKED2 &fs_info->zoned_meta_io_lock

fs/btrfs/extent_io.c lock_extent_buffer_for_io() -> xas_set_mark()

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_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
PARAM_VALUE 1 mark 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &((&xas)->xa)->xa_lock
LOCK2 &eb->lock
LOCK2 flags
TYPE_LOCK (struct extent_buffer)->lock

mm/memfd.c memfd_tag_pins() -> xas_set_mark()

Type Parameter Key Value
PARAM_VALUE 0 xas 4654190353756758016
PARAM_VALUE 0 xas->xa 4096-ptr_max
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
PARAM_VALUE 1 mark 2
DATA_SOURCE 0 xas $0
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &(xas->xa)->xa_lock
LOCK2 &inode->i_rwsem
LOCK2 irq
HALF_LOCKED2 &session->mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct inode)->i_rwsem