Defined in 2 files as a function:

Referenced in 5 files:

Smatch caller information:

mm/huge_memory.c vma_flags_can_grow() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
DATA_SOURCE 0 flags $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &m->lock

mm/huge_memory.c vma_test_single_mask() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max
DATA_SOURCE 1 flagmask $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctx->map_changing_lock
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &oldmm->mmap_lock
HALF_LOCKED2 &vma->vm_private_data->rw_sema
HALF_LOCKED2 dst_ptl
HALF_LOCKED2 old_ptl
HALF_LOCKED2 ptl
HALF_LOCKED2 rcu_read
HALF_LOCKED2 src_ptl

mm/mmap.c stack_guard_placement() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max

mm/mmap.c vma_flags_can_grow() -> vma_flags_test_single_mask()

Type Parameter Key Value
DATA_SOURCE 0 flags $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock

mm/userfaultfd.c vma_test_single_mask() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max
DATA_SOURCE 1 flagmask $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctx->map_changing_lock
HALF_LOCKED2 &dst_mm->mmap_lock
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 rcu_read

mm/swapfile.c vma_test_single_mask() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max
DATA_SOURCE 1 flagmask $1
CAPABLE 0 21
LOCK2 &mm->mmap_lock
LOCK2 ptl
TYPE_LOCK (struct mm_struct)->mmap_lock

fs/proc/task_mmu.c vma_test_single_mask() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 32,4096-ptr_max
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max
DATA_SOURCE 1 flagmask $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vma->vm_file->f_mapping->i_mmap_rwsem
HALF_LOCKED2 ptl

mm/rmap.c vma_flags_can_grow() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
DATA_SOURCE 0 flags $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &anon_vma->root->rwsem

mm/mprotect.c vma_test_single_mask() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
DATA_SOURCE 1 flagmask $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 ptl

mm/hugetlb.c vma_test_single_mask() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max
DATA_SOURCE 1 flagmask $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mapping->i_mmap_rwsem
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &oldmm->mmap_lock
HALF_LOCKED2 &vma->vm_file->f_mapping->i_mmap_rwsem
HALF_LOCKED2 dst_ptl
HALF_LOCKED2 src_ptl

mm/mremap.c vma_test_single_mask() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max
DATA_SOURCE 1 flagmask $1
LOCK2 &mm->mmap_lock
LOCK2 old_ptl
LOCK2 rcu_read
HALF_LOCKED2 &tsk->signal->exec_update_lock
HALF_LOCKED2 new_ptl
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/ksm.c ksm_compatible() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max
RX_PATH
TASK_NOT_RUNNING

mm/vma.c vma_test_single_mask() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max
DATA_SOURCE 1 flagmask $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctx->ring_lock
HALF_LOCKED2 &mm->mmap_lock

mm/memory.c vma_test_single_mask() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max
DATA_SOURCE 1 flagmask $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &oldmm->mmap_lock
HALF_LOCKED2 dst_ptl
HALF_LOCKED2 rcu_read
HALF_LOCKED2 src_ptl
HALF_LOCKED2 vmf->ptl

mm/gup.c vma_test_single_mask() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max
DATA_SOURCE 1 flagmask $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 ptl

mm/migrate.c vma_test_single_mask() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max
DATA_SOURCE 1 flagmask $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &anon_vma->root->rwsem
HALF_LOCKED2 &folio->private->lock

mm/mlock.c vma_test_single_mask() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max
DATA_SOURCE 1 flagmask $1

mm/khugepaged.c vma_test_single_mask() -> vma_flags_test_single_mask()

Type Parameter Key Value
PARAM_VALUE 0 flags 4096-ptr_max
PARAM_VALUE 1 flagmask s64min-(-4096),4096-s64max
DATA_SOURCE 1 flagmask $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mapping->i_mmap_rwsem
HALF_LOCKED2 &mm->mmap_lock