Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

mm/huge_memory.c can_change_pmd_writable() -> pmd_needs_soft_dirty_wp()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
DATA_SOURCE 0 vma $0
DATA_SOURCE 1 pmd $2
BIT_INFO 0 vma->vm_flags 0x2,0xffffffffffffffff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 vma->vm_end 1-u64max[c]
USER_DATA 0 vma->vm_start 1-u64max[c]
NO_OVERFLOW_SIMPLE 0 vma->vm_file->f_mapping->host->i_size
NO_OVERFLOW_SIMPLE 0 vma->vm_start
HALF_LOCKED2 &mm->mmap_lock

mm/gup.c can_follow_write_pmd() -> pmd_needs_soft_dirty_wp()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
DATA_SOURCE 0 vma $2
DATA_SOURCE 1 pmd $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 vma->vm_file->f_mapping->host->i_size
HALF_LOCKED2 &mm->mmap_lock