Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 2 files as a function:
Referenced in 50 files:
- arch/alpha/kernel/traps.c, line 901
- arch/arc/mm/mmap.c, line 49
- arch/arm/kernel/swp_emulate.c, line 102
- arch/arm/mm/mmap.c
- arch/arm64/kernel/traps.c, line 446
- arch/csky/abiv1/mmap.c, line 64
- arch/loongarch/mm/mmap.c, line 60
- arch/m68k/mm/fault.c, line 95
- arch/microblaze/mm/fault.c, line 150
- arch/mips/mm/mmap.c, line 68
- arch/nios2/kernel/sys_nios2.c, line 45
- arch/openrisc/mm/fault.c, line 111
- arch/parisc/kernel/traps.c, line 719
- arch/powerpc/mm/book3s64/slice.c, line 93
- arch/s390/mm/mmap.c
- arch/sh/kernel/sys_sh.c, line 73
- arch/sh/mm/mmap.c
- arch/sparc/kernel/sys_sparc_64.c
- arch/sparc/mm/fault_64.c, line 338
- arch/um/kernel/trap.c
- arch/x86/kernel/cpu/sgx/ioctl.c, line 218
- arch/x86/kernel/shstk.c, line 349
- arch/x86/kernel/sys_x86_64.c
- arch/x86/kernel/uprobes.c, line 1179
- drivers/gpu/drm/i915/gem/i915_gem_mman.c, line 112
- drivers/gpu/drm/radeon/radeon_ttm.c, line 342
- drivers/infiniband/hw/mlx4/mr.c, line 126
- drivers/vhost/vdpa.c, line 1064
- drivers/xen/gntdev.c, line 721
- drivers/xen/privcmd.c
- fs/proc/task_mmu.c
- include/uapi/linux/bpf.h, line 6157
- kernel/bpf/arena.c, line 834
- kernel/bpf/stackmap.c, line 446
- kernel/bpf/task_iter.c
- kernel/events/uprobes.c, line 1306
- kernel/sys.c, line 2240
- kernel/trace/trace_output.c, line 438
- mm/gup.c
- mm/khugepaged.c, line 1164
- mm/madvise.c, line 1730
- mm/mempolicy.c
- mm/mmap.c
- mm/mmap_lock.c
- mm/msync.c
- mm/nommu.c
- mm/pagewalk.c
- tools/include/uapi/linux/bpf.h, line 6157
- tools/testing/selftests/bpf/prog_tests/find_vma.c
- virt/kvm/kvm_main.c, line 2697
Smatch caller information:
arch/x86/kernel/shstk.c shstk_pop_sigframe() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | addr | 1-u64max |
| BIT_INFO | 1 | addr | 0x0,0xfffffffffffffff8 |
| HOST_DATA | 1 | addr | 1-u64max |
| UNITS | 0 | mm | unit_byte |
mm/msync.c __do_sys_msync() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| DATA_SOURCE | 1 | addr | r __untagged_addr |
| BIT_INFO | 1 | addr | 0x0,0xfffffffffffff000 |
| BIT_INFO | 1 | addr | 0x0,0xfffffffffffff000 |
| USER_DATA | 1 | addr | 0-u64max |
| UNITS | 0 | mm | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/msync.c __do_sys_msync() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_mt.ma_root | 1-u64max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | addr | 0-18446744073709551614 |
| CAPPED_DATA | 0 | mm->mm_mt.ma_root | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/msync.c __do_sys_msync() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_mt.ma_root | 1-u64max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| CAPPED_DATA | 0 | mm->mm_mt.ma_root | 1 |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/msync.c __do_sys_msync() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| DATA_SOURCE | 1 | addr | r __untagged_addr |
| BIT_INFO | 1 | addr | 0x0,0xfffffffffffff000 |
| BIT_INFO | 1 | addr | 0x0,0xfffffffffffff000 |
| USER_DATA | 1 | addr | 0-u64max |
| UNITS | 0 | mm | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/msync.c __do_sys_msync() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_mt.ma_root | 1-u64max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | addr | 0-18446744073709551614 |
| CAPPED_DATA | 0 | mm->mm_mt.ma_root | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/msync.c __do_sys_msync() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_mt.ma_root | 1-u64max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| CAPPED_DATA | 0 | mm->mm_mt.ma_root | 1 |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/pagewalk.c walk_page_range_mm_unsafe() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| PARAM_VALUE | 1 | addr | 0-18446744073709551614 |
| BUF_SIZE | 0 | mm | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | mm | s32min-(-1),1-s32max |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | addr | $1 |
| NOSPEC | 1 | addr | |
| NOSPEC | 1 | addr | |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | addr | 0-18446744073709551614 |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
mm/pagewalk.c walk_page_range_mm_unsafe() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| PARAM_VALUE | 0 | mm->mm_mt.ma_root | 1-u64max |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| BUF_SIZE | 0 | mm | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | mm | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | mm | $0 [m] |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| HALF_LOCKED2 | 0 | &mm->mmap_lock |
mm/mmap.c find_extend_vma_locked() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 1 | addr | 0,4096-u64max |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | addr | $1 [m] |
| BIT_INFO | 1 | addr | 0x0,0xfffffffffffff000 |
| BIT_INFO | 1 | addr | 0x0,0xfffffffffffff000 |
| UNITS | 0 | mm | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
kernel/bpf/stackmap.c stack_map_get_build_id_offset() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
kernel/trace/trace_output.c seq_print_user_ip() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | addr | 1-u64max |
| DATA_SOURCE | 0 | mm | $1 |
| DATA_SOURCE | 1 | addr | $2 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | 0 | &mm->mmap_lock | |
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | global &tracepoint_iter_lock | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
drivers/vhost/vdpa.c vhost_vdpa_va_map() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| DATA_SOURCE | 1 | addr | $4 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | &dev->mutex | ||
| LOCK2 | 0 | &mm->mmap_lock | |
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock | ||
| TYPE_LOCK | (struct vhost_dev)->mutex |
arch/x86/kernel/cpu/sgx/ioctl.c __sgx_encl_add_page() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 1 | addr | $4 |
| USER_DATA | 1 | addr | 0-u64max |
| UNITS | 0 | mm | unit_byte |
| LOCK2 | &encl->lock | ||
| TYPE_LOCK | (struct sgx_encl)->lock |
fs/proc/task_mmu.c pagemap_pte_hole() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | addr | 0-18446744073709551614 |
| BUF_SIZE | 0 | mm | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | mm | s32min-(-1),1-s32max |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| NOSPEC | 1 | addr | |
| NOSPEC | 1 | addr | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | addr | 0-18446744073709551614[c] |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
fs/proc/task_mmu.c query_vma_find_by_addr() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| DATA_SOURCE | 1 | addr | $1 |
| USER_DATA | 1 | addr | 0-u64max |
| UNITS | 1 | addr | unit_byte |
| HALF_LOCKED2 | &lock_ctx->mm->mmap_lock |
fs/proc/task_mmu.c query_vma_find_by_addr() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| CAPPED_DATA | 0 | mm | 1 |
| DATA_SOURCE | 1 | addr | $1 |
| USER_DATA | 1 | addr | 0-u64max |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| HALF_LOCKED2 | &lock_ctx->mm->mmap_lock | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
arch/x86/kernel/sys_x86_64.c arch_get_unmapped_area() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | addr | 0,4096-u64max |
| BIT_INFO | 1 | addr | 0x0,0xfffffffffffff000 |
| BIT_INFO | 1 | addr | 0x0,0xfffffffffffff000 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | addr | 0,4096-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
arch/x86/kernel/sys_x86_64.c arch_get_unmapped_area_topdown() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | addr | 0,4096-u64max |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| BIT_INFO | 1 | addr | 0x0,0xfffffffffffff000 |
| BIT_INFO | 1 | addr | 0x0,0xfffffffffffff000 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | addr | 0,4096-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
drivers/xen/gntdev.c gntdev_ioctl_get_offset_for_vaddr() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| USER_DATA | 1 | addr | 0-u64max |
| UNITS | 0 | mm | unit_byte |
arch/x86/kernel/uprobes.c __arch_uprobe_optimize() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 1 | addr | 0 |
| DATA_SOURCE | 0 | mm | $1 |
| DATA_SOURCE | 1 | addr | $2 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
drivers/infiniband/hw/mlx4/mr.c mlx4_get_umem_mr() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 1 | addr | r __untagged_addr |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | addr | 0-u64max |
| UNITS | 0 | mm | unit_byte |
drivers/xen/privcmd.c alloc_ioreq() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.osq.tail.counter | 0-s32max |
| USER_DATA | 1 | addr | 0-u64max |
| UNITS | 0 | mm | unit_byte |
| LOCK2 | global &ioreq_lock | ||
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
drivers/xen/privcmd.c privcmd_ioctl_mmap_batch() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.osq.tail.counter | 0-s32max |
| USER_DATA | 1 | addr | 0-u64max |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
drivers/xen/privcmd.c privcmd_ioctl_mmap_resource() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.osq.tail.counter | 0-s32max |
| USER_DATA | 1 | addr | 0-u64max |
| UNITS | 0 | mm | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
kernel/bpf/arena.c zap_pages() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_users.counter | 0-s32max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | &arena->zap_mutex | ||
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct bpf_arena)->zap_mutex | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/gup.c gup_vma_lookup() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| BUF_SIZE | 0 | mm | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | mm | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | addr | $1 |
| NOSPEC | 1 | addr | |
| NOSPEC | 1 | addr | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | addr | 0-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| HALF_LOCKED2 | 0 | &mm->mmap_lock |
drivers/gpu/drm/radeon/radeon_ttm.c radeon_ttm_tt_pin_userptr() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| CAPPED_DATA | 0 | mm | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| HALF_LOCKED2 | bo->base.resv |
kernel/sys.c prctl_set_mm() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->process_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->process_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->request_key_auth->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->request_key_auth->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->session_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->session_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->thread_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->thread_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | addr | 0-18446744073709551614 |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| DATA_SOURCE | 1 | addr | $1 |
| CAPABLE | 0 | 24 | |
| USER_DATA | 1 | addr | 0-s32max[c] |
| UNITS | 0 | mm | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/mempolicy.c migrate_to_node() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | addr | 0 |
| DATA_SOURCE | 0 | mm | $0 |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/mempolicy.c queue_pages_test_walk() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| HALF_LOCKED2 | &mapping->i_mmap_rwsem |
kernel/bpf/task_iter.c ____bpf_find_vma() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| DATA_SOURCE | 1 | addr | $1 |
| UNITS | 0 | mm | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
kernel/bpf/task_iter.c task_vma_seq_get_next() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | addr | 0 |
| DATA_SOURCE | 0 | mm | r get_task_mm |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &seq->lock | ||
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock | ||
| TYPE_LOCK | (struct seq_file)->lock |
kernel/bpf/task_iter.c task_vma_seq_get_next() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter | 0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | addr | unit_byte |
| LOCK2 | &seq->lock | ||
| TYPE_LOCK | (struct seq_file)->lock |
kernel/bpf/task_iter.c task_vma_seq_get_next() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | addr | unit_byte |
| LOCK2 | &seq->lock | ||
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock | ||
| TYPE_LOCK | (struct seq_file)->lock |
kernel/bpf/task_iter.c task_vma_seq_get_next() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_mt.ma_root | 1-u64max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| CAPPED_DATA | 0 | mm->mm_mt.ma_root | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | addr | unit_byte |
| LOCK2 | &seq->lock | ||
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock | ||
| TYPE_LOCK | (struct seq_file)->lock |
kernel/events/uprobes.c register_for_each_vma() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | &uprobe->register_rwsem | ||
| LOCK2 | 0 | &mm->mmap_lock | |
| HALF_LOCKED2 | global &event_mutex | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock | ||
| TYPE_LOCK | (struct uprobe)->register_rwsem |
mm/mmap_lock.c lock_mm_and_find_vma() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| CAPPED_DATA | 0 | mm | 1 |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | addr | $1 |
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | 0 | &mm->mmap_lock |
mm/mmap_lock.c lock_mm_and_find_vma() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_mt.ma_root | 1-u64max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 1 | addr | 0-18446744073709551614 |
| CAPPED_DATA | 0 | mm | 1 |
| CAPPED_DATA | 0 | mm->mm_mt.ma_root | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | addr | $1 |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| HALF_LOCKED2 | 0 | &mm->mmap_lock |
arch/x86/kvm/../../../virt/kvm/kvm_main.c kvm_host_page_size() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | addr | 0-18446612682070032383 |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| DATA_SOURCE | 1 | addr | r kvm_vcpu_gfn_to_hva_prot |
| UNITS | 0 | mm | unit_byte |
mm/khugepaged.c hugepage_vma_revalidate() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_users.counter | s32min-(-1),1-s32max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2212933610777083904,2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904,2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | addr | 0,2097152-18446744073709551614 |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | addr | $1 |
| NOSPEC | 1 | addr | |
| NOSPEC | 1 | addr | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | addr | 0,2097152-18446744073707454464[c] |
| UNITS | 0 | mm | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
drivers/gpu/drm/i915/gem/i915_gem_mman.c i915_gem_mmap_ioctl() -> find_vma()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 1 | addr | 0-18446744073709547520 |
| DATA_SOURCE | 1 | addr | r vm_mmap |
| UNITS | 0 | mm | unit_byte |
| LOCK2 | 0 | &mm->mmap_lock | |
| TYPE_LOCK | (struct mm_struct)->mmap_lock |