Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 8 files:
- arch/s390/mm/gmap_helpers.c, line 252
- mm/damon/vaddr.c, line 255
- mm/ksm.c
- mm/madvise.c
- mm/migrate_device.c, line 527
- mm/mincore.c, line 262
- mm/mlock.c, line 449
- mm/mprotect.c, line 791
Smatch caller information:
mm/madvise.c madvise_cold_page_range() -> walk_page_range_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 3 | ops | 5394786657936777216 |
| PARAM_VALUE | 4 | private | 4792567777829408768 |
| BUF_SIZE | 4 | private | 16 |
| NOSPEC | 1 | start | |
| NOSPEC | 1 | start | |
| NOSPEC | 2 | end | |
| NOSPEC | 2 | end | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | start | 0-u64max |
| USER_DATA | 2 | end | 0-u64max |
| UNITS | 1 | start | unit_byte |
| UNITS | 2 | end | unit_byte |
| HALF_LOCKED2 | &madv_behavior->mm->mmap_lock |
mm/madvise.c madvise_free_single_vma() -> walk_page_range_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->vm_ops | 0 |
| PARAM_VALUE | 3 | ops | 8214240212805300224 |
| PARAM_VALUE | 3 | ops->install_pte | 0 |
| PARAM_VALUE | 3 | ops->p4d_entry | 0 |
| PARAM_VALUE | 3 | ops->pmd_entry | 1839958646448185344 |
| PARAM_VALUE | 3 | ops->post_vma | 0 |
| PARAM_VALUE | 3 | ops->pre_vma | 0 |
| PARAM_VALUE | 3 | ops->pte_hole | 0 |
| PARAM_VALUE | 3 | ops->walk_lock | 0,3 |
| PARAM_VALUE | 4 | private | 4193599314568368128,5503876214254182400 |
| BUF_SIZE | 4 | private | (-1),128 |
| NOSPEC | 1 | start | |
| NOSPEC | 1 | start | |
| NOSPEC | 2 | end | |
| NOSPEC | 2 | end | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | start | 0-u64max |
| USER_DATA | 2 | end | 0-u64max |
| UNITS | 1 | start | unit_byte |
| UNITS | 2 | end | unit_byte |
| HALF_LOCKED2 | &madv_behavior->mm->mmap_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/madvise.c madvise_guard_remove() -> walk_page_range_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 3 | ops | 9025046844971634688 |
| PARAM_VALUE | 3 | ops->install_pte | 0 |
| PARAM_VALUE | 3 | ops->p4d_entry | 0 |
| PARAM_VALUE | 3 | ops->pmd_entry | 270587535186010112 |
| PARAM_VALUE | 3 | ops->post_vma | 0 |
| PARAM_VALUE | 3 | ops->pre_vma | 0 |
| PARAM_VALUE | 3 | ops->pte_entry | 739154146387464192 |
| PARAM_VALUE | 3 | ops->pte_hole | 0 |
| PARAM_VALUE | 3 | ops->pud_entry | 2135835840930992128 |
| PARAM_VALUE | 3 | ops->walk_lock | 0,3 |
| PARAM_VALUE | 4 | private | 0 |
| NOSPEC | 2 | end | |
| NOSPEC | 2 | end | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | start | 0-u64max |
| USER_DATA | 2 | end | 0-u64max |
| UNITS | 1 | start | unit_byte |
| UNITS | 2 | end | unit_byte |
| HALF_LOCKED2 | &madv_behavior->mm->mmap_lock |
mm/madvise.c madvise_pageout_page_range() -> walk_page_range_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->vm_file | 0,4096-ptr_max |
| PARAM_VALUE | 3 | ops | 5394786657936777216 |
| PARAM_VALUE | 4 | private | 8541448284568637440 |
| BUF_SIZE | 4 | private | 16 |
| DATA_SOURCE | 0 | vma | $1 |
| NOSPEC | 1 | start | |
| NOSPEC | 1 | start | |
| NOSPEC | 2 | end | |
| NOSPEC | 2 | end | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | start | 0-u64max |
| USER_DATA | 2 | end | 0-u64max |
| UNITS | 1 | start | unit_byte |
| UNITS | 2 | end | unit_byte |
| HALF_LOCKED2 | &madv_behavior->mm->mmap_lock |
mm/madvise.c madvise_willneed() -> walk_page_range_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->vm_file | 0 |
| PARAM_VALUE | 3 | ops | 6244891419563241472 |
| PARAM_VALUE | 4 | private | 4096-ptr_max |
| NOSPEC | 2 | end | |
| NOSPEC | 2 | end | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | start | 0-u64max |
| USER_DATA | 2 | end | 0-u64max |
| UNITS | 1 | start | unit_byte |
| UNITS | 2 | end | unit_byte |
| HALF_LOCKED2 | &madv_behavior->mm->mmap_lock |
mm/damon/vaddr.c damon_va_walk_page_range() -> walk_page_range_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->vm_end | 1-u64max |
| PARAM_VALUE | 0 | vma->vm_mm->vma_writer_wait.task->delays->blkio_count | 0-4294967295 |
| PARAM_VALUE | 0 | vma->vm_mm->vma_writer_wait.task->delays->blkio_delay_max | 0-s64max |
| PARAM_VALUE | 0 | vma->vm_mm->vma_writer_wait.task->delays->blkio_delay_min | 0-s64max |
| PARAM_VALUE | 0 | vma->vm_mm->vma_writer_wait.task->ptracer_cred->process_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | vma->vm_mm->vma_writer_wait.task->ptracer_cred->process_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | vma->vm_mm->vma_writer_wait.task->ptracer_cred->request_key_auth->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | vma->vm_mm->vma_writer_wait.task->ptracer_cred->request_key_auth->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | vma->vm_mm->vma_writer_wait.task->ptracer_cred->session_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | vma->vm_mm->vma_writer_wait.task->ptracer_cred->session_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | vma->vm_mm->vma_writer_wait.task->ptracer_cred->thread_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | vma->vm_mm->vma_writer_wait.task->ptracer_cred->thread_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | vma->vm_mm->vma_writer_wait.task->sched_class->uclamp_enabled | 0-1 |
| PARAM_VALUE | 0 | vma->vm_mm->vma_writer_wait.task->sched_task_group->idle | s32min-s32max |
| PARAM_VALUE | 0 | vma->vm_refcnt.refs.counter | (-1073741824),0-s32max |
| PARAM_VALUE | 3 | ops | 531849348578320384,2820922244882329600,2894753071351750656,5073249137812905984 |
| PARAM_VALUE | 3 | ops->hugetlb_entry | 0,2150530278943326208,3558474905456021504 |
| PARAM_VALUE | 3 | ops->install_pte | 0 |
| PARAM_VALUE | 3 | ops->pmd_entry | 109225324094066688,638766543767572480,2735973693978808320,8541426788756492288 |
| PARAM_VALUE | 3 | ops->post_vma | 0 |
| PARAM_VALUE | 3 | ops->pre_vma | 0 |
| PARAM_VALUE | 3 | ops->pte_entry | 0 |
| PARAM_VALUE | 3 | ops->pte_hole | 0 |
| PARAM_VALUE | 3 | ops->test_walk | 0 |
| PARAM_VALUE | 3 | ops->walk_lock | 3 |
| PARAM_VALUE | 4 | private | 0,4296875364448100352,4755025377996009472,7851507554896019456 |
| BUF_SIZE | 4 | private | (-1),16 |
| BUF_SIZE | 4 | private | (-1),16 |
| CAPPED_DATA | 0 | vma->vm_mm | 1 |
| CAPPED_DATA | 0 | vma->vm_start | 1 |
| CAPPED_DATA | 1 | start | 1 |
| CAPPED_DATA | 1 | start | 1 |
| CAPPED_DATA | 2 | end | 1 |
| CAPPED_DATA | 2 | end | 1 |
| DATA_SOURCE | 0 | vma | r lock_vma_under_rcu |
| DATA_SOURCE | 1 | start | $1 |
| DATA_SOURCE | 2 | end | $2 |
| DATA_SOURCE | 3 | ops | $3 |
| DATA_SOURCE | 4 | private | $4 |
| PARAM_COMPARE | 2 | end | <= $0->vm_end |
| PARAM_COMPARE | 2 | end | <= $0->vm_end |
| BIT_INFO | 0 | vma->vm_flags | 0x0,0xfffffffffffffbff |
| NOCHECK_CALL | |||
| UNITS | 1 | start | unit_byte |
| UNITS | 2 | end | unit_byte |
| HALF_LOCKED2 | &ctx->walk_control_lock |
mm/mprotect.c mprotect_fixup() -> walk_page_range_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | vma->vm_ops | 0,4096-ptr_max |
| PARAM_VALUE | 3 | ops | 5269658979830554624 |
| PARAM_VALUE | 4 | private | 4369183962542252032 |
| BUF_SIZE | 4 | private | 8 |
| DATA_SOURCE | 0 | vma | $2 |
| DATA_SOURCE | 1 | start | $4 |
| DATA_SOURCE | 2 | end | $5 |
| NOSPEC | 1 | start | |
| NOSPEC | 1 | start | |
| NOSPEC | 2 | end | |
| NOSPEC | 2 | end | |
| USER_DATA | 1 | start | 0-u64max |
| USER_DATA | 2 | end | 1-s32max[c] |
| NO_OVERFLOW_SIMPLE | 0 | vma->vm_end | |
| NO_OVERFLOW_SIMPLE | 0 | vma->vm_start | |
| NO_OVERFLOW_SIMPLE | 2 | end | |
| UNITS | 1 | start | unit_byte |
| UNITS | 2 | end | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &tsk->signal->exec_update_lock |
mm/ksm.c break_ksm() -> walk_page_range_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->anon_vma | 1-u64max |
| PARAM_VALUE | 0 | vma->vm_file->f_inode->i_mapping->invalidate_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | vma->vm_file->f_inode->i_mapping->invalidate_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | vma->vm_file->f_inode->i_sb->s_cop->inode_info_offs | 1632,1640,1720,1808,1816,2632,2640,2648,2704,2712 |
| PARAM_VALUE | 0 | vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | vma->vm_file->f_mapping->invalidate_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | vma->vm_file->f_mapping->invalidate_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | vma->vm_mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | vma->vm_mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 3 | ops | 2433688394227458048,7533562264811560960 |
| PARAM_VALUE | 3 | ops->install_pte | 0,1044397068690849792 |
| PARAM_VALUE | 3 | ops->p4d_entry | 0,4096-ptr_max |
| PARAM_VALUE | 3 | ops->pte_entry | 0,650468307344363520,739154146387464192,962541777702182912,2257850282958200832,5341416088209862656,7191681304365924352,8342761445904687104 |
| PARAM_VALUE | 3 | ops->pte_hole | 0,628487719654023168,709231564179075072,3638815882446880768,4544569123095990272,4904888130885226496,8747928521055248384,8751955949471588352 |
| BUF_SIZE | 3 | ops | 96 |
| BUF_SIZE | 4 | private | 8 |
| DATA_SOURCE | 0 | vma | $0 |
| DATA_SOURCE | 1 | start | $1 |
| DATA_SOURCE | 2 | end | $2 |
| BIT_INFO | 3 | ops | 0x208412b307612000,0x69ceb6f75feb6000 |
| BIT_INFO | 3 | ops | 0x208412b307612000,0x69ceb6f75feb6000 |
| NOSPEC | 1 | start | |
| NOSPEC | 1 | start | |
| NOSPEC | 2 | end | |
| NOSPEC | 2 | end | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | start | 0-u64max |
| USER_DATA | 2 | end | 0-u64max |
| NO_OVERFLOW_SIMPLE | 0 | vma->vm_end | |
| NO_OVERFLOW_SIMPLE | 0 | vma->vm_start | |
| UNITS | 1 | start | unit_byte |
| UNITS | 2 | end | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | global &ksm_thread_mutex |
mm/ksm.c scan_get_next_rmap_item() -> walk_page_range_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->anon_vma | 1-u64max |
| PARAM_VALUE | 0 | vma->vm_end | 1-u64max |
| PARAM_VALUE | 1 | start | 0-18446744073709551614 |
| PARAM_VALUE | 2 | end | 1-u64max |
| PARAM_VALUE | 3 | ops | 5584790654916161536 |
| PARAM_VALUE | 3 | ops->pte_hole | 0,4096-ptr_max |
| PARAM_VALUE | 4 | private | 4339483018762956800 |
| BUF_SIZE | 4 | private | 24 |
| CAPPED_DATA | 1 | start | 1 |
| CAPPED_DATA | 1 | start | 1 |
| DATA_SOURCE | 0 | vma | r vma_next |
| BIT_INFO | 0 | vma->vm_flags | 0x80000000,0xffffffffffffffff |
| UNITS | 1 | start | unit_byte |
| UNITS | 2 | end | unit_byte |
| LOCK2 | &mm->mmap_lock | ||
| LOCK2 | global &ksm_thread_mutex | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/migrate_device.c migrate_vma_collect() -> walk_page_range_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->flags.__vma_flags | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->vm_end | 4096-u64max |
| PARAM_VALUE | 0 | vma->vm_file | 0,4096-ptr_max |
| PARAM_VALUE | 0 | vma->vm_start | 0-18446744073709551614 |
| PARAM_VALUE | 1 | start | 0,4096-18446744073709551614 |
| PARAM_VALUE | 2 | end | 4096-u64max |
| PARAM_VALUE | 3 | ops | 218037617090719744 |
| PARAM_VALUE | 4 | private | 4096-ptr_max |
| CAPPED_DATA | 0 | vma->vm_start | 1 |
| CAPPED_DATA | 1 | start | 1 |
| CAPPED_DATA | 1 | start | 1 |
| CAPPED_DATA | 2 | end | 1 |
| CAPPED_DATA | 2 | end | 1 |
| DATA_SOURCE | 4 | private | $0 |
| BIT_INFO | 1 | start | 0x0,0xfffffffffffff000 |
| BIT_INFO | 1 | start | 0x0,0xfffffffffffff000 |
| BIT_INFO | 2 | end | 0x0,0xfffffffffffff000 |
| BIT_INFO | 2 | end | 0x0,0xfffffffffffff000 |
| NOSPEC | 1 | start | |
| NOSPEC | 1 | start | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | start | 0,4096-s32max[c] |
| USER_DATA | 2 | end | 4096-s32max[c] |
| UNITS | 1 | start | unit_byte |
| UNITS | 2 | end | unit_byte |
| HALF_LOCKED2 | &driver_migrate_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &prange->migrate_mutex | ||
| HALF_LOCKED2 | &svms->lock | ||
| HALF_LOCKED2 | &vm->lock | ||
| HALF_LOCKED2 | global &drm_unplug_srcu |
mm/mincore.c do_mincore() -> walk_page_range_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 1 | start | 0 |
| PARAM_VALUE | 2 | end | 0-16777216 |
| PARAM_VALUE | 3 | ops | 3036798921539690496 |
| PARAM_VALUE | 4 | private | 4096-ptr_max |
| BUF_SIZE | 4 | private | 4096 |
| CAPPED_DATA | 2 | end | 1 |
| CAPPED_DATA | 2 | end | 1 |
| DATA_SOURCE | 0 | vma | r vma_lookup |
| DATA_SOURCE | 1 | start | $0 |
| DATA_SOURCE | 4 | private | $2 |
| PARAM_COMPARE | 1 | start | <= $2 |
| PARAM_COMPARE | 1 | start | <= $2 |
| PARAM_COMPARE | 2 | end | >= $1 |
| NOSPEC | 1 | start | |
| NOSPEC | 1 | start | |
| USER_DATA | 1 | start | 0[c] |
| USER_DATA | 2 | end | 4096-16773120[c] |
| UNITS | 2 | end | unit_byte |
mm/mlock.c mlock_vma_pages_range() -> walk_page_range_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->flags.__vma_flags | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | vma->vm_mm | 4096-ptr_max |
| PARAM_VALUE | 3 | ops | 8550273544599044096 |
| PARAM_VALUE | 3 | ops->install_pte | 0 |
| PARAM_VALUE | 3 | ops->p4d_entry | 0 |
| PARAM_VALUE | 3 | ops->pmd_entry | 8940132921886953472 |
| PARAM_VALUE | 3 | ops->post_vma | 0 |
| PARAM_VALUE | 3 | ops->pre_vma | 0 |
| PARAM_VALUE | 3 | ops->pte_hole | 0 |
| PARAM_VALUE | 3 | ops->walk_lock | 2 |
| PARAM_VALUE | 4 | private | 0 |
| CAPPED_DATA | 0 | vma | 1 |
| DATA_SOURCE | 0 | vma | $0 |
| DATA_SOURCE | 1 | start | $1 |
| DATA_SOURCE | 2 | end | $2 |
| NOCHECK_CALL | |||
| USER_DATA | 0 | vma->vm_start | 1-u64max[c] |
| USER_DATA | 1 | start | 0,4096-u64max[c] |
| USER_DATA | 2 | end | 0,4096-s32max[c] |
| NO_OVERFLOW_SIMPLE | 0 | vma->vm_end | |
| NO_OVERFLOW_SIMPLE | 0 | vma->vm_start | |
| NO_OVERFLOW_SIMPLE | 1 | start | |
| UNITS | 1 | start | unit_byte |
| UNITS | 2 | end | unit_byte |