Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 9 files:
- fs/btrfs/extent_io.c
- fs/cachefiles/ondemand.c
- fs/dax.c
- lib/idr.c, line 583
- lib/xarray.c
- mm/memfd.c, line 48
- mm/page-writeback.c
- tools/testing/radix-tree/iteration_check.c, line 35
- tools/testing/radix-tree/test.c, line 185
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 |