Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 13 files:
- arch/x86/kernel/cpu/sgx/encl.c
- fs/btrfs/extent_io.c, line 2286
- fs/dax.c
- lib/test_xarray.c
- lib/xarray.c, line 1300
- mm/filemap.c
- mm/khugepaged.c, line 2784
- mm/madvise.c, line 257
- mm/memfd.c
- mm/page-writeback.c, line 2358
- mm/shmem.c
- tools/testing/radix-tree/iteration_check.c
- tools/testing/radix-tree/test.c, line 189
Smatch caller information:
mm/madvise.c shmem_swapin_range() -> xas_pause()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | xas | 2555550619660808192 |
| 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 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &madv_behavior->mm->mmap_lock |
fs/dax.c __dax_clear_dirty_range() -> xas_pause()
| 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 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | xas->xa_index | 0-2251799813685247,18444492273895866368-u64max[c] |
| USER_DATA | 0 | xas->xa_offset | 0-255 |
| LOCK2 | &((&xas)->xa)->xa_lock | ||
| LOCK2 | irq | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock |
fs/dax.c dax_layout_busy_page_range() -> xas_pause()
| 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 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &((&xas)->xa)->xa_lock | ||
| LOCK2 | irq |
fs/dax.c dax_writeback_mapping_range() -> xas_pause()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | xas | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | xas->xa_index | 0-u64max |
| USER_DATA | 0 | xas->xa_offset | 0-255 |
| LOCK2 | &((&xas)->xa)->xa_lock | ||
| LOCK2 | irq | ||
| HALF_LOCKED2 | &mapping->invalidate_lock |
mm/page-writeback.c tag_pages_for_writeback() -> xas_pause()
| 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 |
| 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 |
mm/shmem.c shmem_find_swap_entries() -> xas_pause()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | xas | 6969829257389121536 |
| 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 |
| CAPABLE | 0 | 21 | |
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
mm/shmem.c shmem_partial_swap_usage() -> xas_pause()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | xas | 6448362035493040128 |
| 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 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &m->lock |
fs/btrfs/extent_io.c buffer_tree_tag_for_writeback() -> xas_pause()
| 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 |
| 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 |
mm/filemap.c filemap_cachestat() -> xas_pause()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | xas | 8973220117944201216 |
| 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 | 0 |
| PARAM_VALUE | 0 | xas->xa_sibs | 0 |
| NOCHECK_CALL | |||
| USER_DATA | 0 | xas->xa_index | 0-4503599627370495[c] |
| USER_DATA | 0 | xas->xa_offset | 0-255 |
| LOCK2 | rcu_read |
mm/filemap.c folio_seek_hole_data() -> xas_pause()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | xas | 3296202185961701376 |
| 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,4-ptr_max,(-1) |
| PARAM_VALUE | 0 | xas->xa_pad | 0 |
| PARAM_VALUE | 0 | xas->xa_shift | 0 |
| PARAM_VALUE | 0 | xas->xa_sibs | 0 |
| DATA_SOURCE | 0 | xas | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | xas->xa_index | 0-2251799813685247 |
| USER_DATA | 0 | xas->xa_offset | 0-255 |
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &mapping->invalidate_lock |
arch/x86/kernel/cpu/sgx/encl.c sgx_encl_may_map() -> xas_pause()
| 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 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | xas->xa_index | 0-4503599627370495[c] |
| USER_DATA | 0 | xas->xa_offset | 0-255 |
| LOCK2 | &((&xas)->xa)->xa_lock | ||
| LOCK2 | &encl->lock | ||
| TYPE_LOCK | (struct sgx_encl)->lock |
arch/x86/kernel/cpu/sgx/encl.c sgx_encl_release() -> xas_pause()
| 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 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &((&xas)->xa)->xa_lock |
lib/test_xarray.c check_move_max() -> xas_pause()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | xas | 738054215773315072 |
| 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 |
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
lib/test_xarray.c check_pause() -> xas_pause()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | xas | 4768315614399623168 |
| 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 |
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
lib/test_xarray.c check_pause() -> xas_pause()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | xas | 4768315614399623168 |
| 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 |
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
lib/test_xarray.c xa_find_entry() -> xas_pause()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | xas | 4970588109599858688 |
| 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 |
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
mm/khugepaged.c collapse_scan_file() -> xas_pause()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | xas | 6626938681375535104 |
| 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 | 0 |
| PARAM_VALUE | 0 | xas->xa_sibs | 0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/memfd.c memfd_tag_pins() -> xas_pause()
| 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 |
| 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 |
mm/memfd.c memfd_wait_for_pins() -> xas_pause()
| 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,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 |
| 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 |