Defined in 1 files as a macro:

Defined in 2 files as a function:

Referenced in 4 files:

Smatch caller information:

mm/madvise.c madvise_guard_install() -> anon_vma_prepare()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
PARAM_VALUE 0 vma->vm_mm 4096-ptr_max
PARAM_VALUE 0 vma->vm_ops 0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &madv_behavior->mm->mmap_lock

mm/userfaultfd.c find_vma_and_prepare_anon() -> anon_vma_prepare()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
DATA_SOURCE 0 vma r vma_lookup
BIT_INFO 0 vma->vm_flags 0x0,0xfffffffffffffff7
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/vma.c expand_downwards() -> anon_vma_prepare()

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
CAPPED_DATA 0 vma 1
DATA_SOURCE 0 vma $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 vma->vm_start
HALF_LOCKED2 &mm->mmap_lock

mm/migrate_device.c migrate_vma_insert_huge_pmd_page() -> anon_vma_prepare()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
PARAM_VALUE 0 vma->vm_end 2097152-u64max
PARAM_VALUE 0 vma->vm_ops 0
CAPPED_DATA 0 vma->vm_start 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 vma->vm_end
NO_OVERFLOW_SIMPLE 0 vma->vm_pgoff
HALF_LOCKED2 &drm->dmem->mutex

mm/migrate_device.c migrate_vma_insert_page() -> anon_vma_prepare()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
PARAM_VALUE 0 vma->vm_mm 4096-ptr_max
PARAM_VALUE 0 vma->vm_mm->page_table_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 vma->vm_ops 0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 vma->vm_end
HALF_LOCKED2 &drm->dmem->mutex