Defined in 7 files as a function:

Referenced in 6 files:

Smatch caller information:

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

Type Parameter Key Value
DATA_SOURCE 0 pmd $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock

mm/huge_memory.c change_huge_pmd() -> pmd_protnone()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dst_mm->mmap_lock
HALF_LOCKED2 &mm->mmap_lock

mm/huge_memory.c change_huge_pmd() -> pmd_protnone()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dst_mm->mmap_lock
HALF_LOCKED2 &mm->mmap_lock

mm/userfaultfd.c userfaultfd_must_wait() -> pmd_protnone()

Type Parameter Key Value
DATA_SOURCE 0 pmd r pmdp_get_lockless
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

mm/memory.c __handle_mm_fault() -> pmd_protnone()

Type Parameter Key Value
DATA_SOURCE 0 pmd r pmdp_get_lockless
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock

mm/gup.c follow_huge_pmd() -> pmd_protnone()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock

mm/gup.c follow_pmd_mask() -> pmd_protnone()

Type Parameter Key Value
DATA_SOURCE 0 pmd r pmdp_get_lockless
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock

mm/gup.c gup_fast_pmd_range() -> pmd_protnone()

Type Parameter Key Value
DATA_SOURCE 0 pmd r pmdp_get_lockless
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags

mm/debug_vm_pgtable.c pmd_protnone_tests() -> pmd_protnone()

Type Parameter Key Value
DATA_SOURCE 0 pmd r pmd_mkhuge

mm/hmm.c pmd_to_hmm_pfn_flags() -> pmd_protnone()

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