Defined in 4 files as a prototype:
- arch/loongarch/include/asm/pgtable.h, line 277 (as a prototype)
- arch/mips/include/asm/pgtable.h, line 633 (as a prototype)
- arch/powerpc/include/asm/book3s/64/pgtable.h, line 1109 (as a prototype)
- arch/sparc/include/asm/pgtable_64.h, line 814 (as a prototype)
Defined in 1 files as a macro:
Defined in 11 files as a function:
- arch/arc/include/asm/hugepage.h, line 56 (as a function)
- arch/arm/include/asm/pgtable-3level.h, line 230 (as a function)
- arch/loongarch/mm/pgtable.c, line 139 (as a function)
- arch/mips/mm/pgtable-32.c, line 34 (as a function)
- arch/mips/mm/pgtable-64.c, line 93 (as a function)
- arch/powerpc/mm/book3s64/pgtable.c, line 115 (as a function)
- arch/riscv/include/asm/pgtable.h, line 974 (as a function)
- arch/s390/include/asm/pgtable.h, line 1738 (as a function)
- arch/sparc/include/asm/pgtable_64.h, line 817 (as a function)
- arch/sparc/mm/tlb.c, line 231 (as a function)
- arch/x86/include/asm/pgtable.h, line 1202 (as a function)
Referenced in 11 files:
- arch/loongarch/mm/init.c, line 140
- arch/sparc/include/asm/pgtable_64.h, line 916
- fs/proc/task_mmu.c
- include/linux/pgtable.h
- mm/debug_vm_pgtable.c
- mm/huge_memory.c
- mm/madvise.c, line 423
- mm/memory.c, line 5673
- mm/migrate_device.c, line 891
- mm/pgtable-generic.c, line 119
- mm/rmap.c, line 1167
Smatch caller information:
mm/madvise.c madvise_cold_or_pageout_pte_range() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 1 | addr | $1 |
| DATA_SOURCE | 2 | pmdp | $0 |
| DATA_SOURCE | 3 | pmd | r pmd_mkold |
| NOSPEC | 1 | addr | |
| NOSPEC | 1 | addr | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock |
mm/huge_memory.c __discard_anon_folio_pmd_locked() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 1 | addr | $1 |
| DATA_SOURCE | 2 | pmdp | $2 |
| DATA_SOURCE | 3 | pmd | r pmdp_huge_clear_flush |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 1 | addr | |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| HALF_LOCKED2 | &anon_vma->root->rwsem | ||
| HALF_LOCKED2 | &folio->private->lock |
mm/huge_memory.c __discard_anon_folio_pmd_locked() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 1 | addr | $1 |
| DATA_SOURCE | 2 | pmdp | $2 |
| DATA_SOURCE | 3 | pmd | r pmdp_huge_clear_flush |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 1 | addr | |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| HALF_LOCKED2 | &anon_vma->root->rwsem | ||
| HALF_LOCKED2 | &folio->private->lock |
mm/huge_memory.c change_huge_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| DATA_SOURCE | 1 | addr | $3 |
| DATA_SOURCE | 2 | pmdp | $2 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| HALF_LOCKED2 | &dst_mm->mmap_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/huge_memory.c change_non_present_huge_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | addr | $1 |
| DATA_SOURCE | 2 | pmdp | $2 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock |
mm/huge_memory.c copy_huge_non_present_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 0 | mm | $1 |
| DATA_SOURCE | 1 | addr | $4 |
| DATA_SOURCE | 2 | pmdp | $3 |
| DATA_SOURCE | 3 | pmd | $7 [m] |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | &mm->mmap_lock | ||
| LOCK2 | &oldmm->mmap_lock | ||
| LOCK2 | src_ptl | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/huge_memory.c copy_huge_non_present_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 0 | mm | $1 |
| DATA_SOURCE | 1 | addr | $4 |
| DATA_SOURCE | 2 | pmdp | $3 |
| DATA_SOURCE | 3 | pmd | $7 [m] |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | &mm->mmap_lock | ||
| LOCK2 | &oldmm->mmap_lock | ||
| LOCK2 | src_ptl | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/huge_memory.c copy_huge_non_present_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->context.ldt | 0 |
| PARAM_VALUE | 0 | mm->context.ldt_usr_sem.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->context.lock.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->context.tlb_gen.counter | 0 |
| PARAM_VALUE | 0 | mm->context.untag_mask | u64max |
| PARAM_VALUE | 0 | mm->def_flags | 0,1073741824 |
| PARAM_VALUE | 0 | mm->exe_file | 0,4096-ptr_max |
| PARAM_VALUE | 0 | mm->hugetlb_usage.counter | 0 |
| PARAM_VALUE | 0 | mm->ioctx_table | 0 |
| PARAM_VALUE | 0 | mm->iommu_mm | 0 |
| PARAM_VALUE | 0 | mm->locked_vm | 0 |
| PARAM_VALUE | 0 | mm->lru_gen.bitmap | 0 |
| PARAM_VALUE | 0 | mm->lru_gen.memcg | 0 |
| PARAM_VALUE | 0 | mm->map_count | 0-s32max |
| PARAM_VALUE | 0 | mm->mm_cid.lock.magic | 3735899821 |
| PARAM_VALUE | 0 | mm->mm_cid.lock.owner | (-1) |
| PARAM_VALUE | 0 | mm->mm_cid.lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | mm->mm_cid.max_cids | 0 |
| PARAM_VALUE | 0 | mm->mm_cid.mode | 0 |
| PARAM_VALUE | 0 | mm->mm_cid.mutex.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_cid.pcpu | 1-u64max |
| PARAM_VALUE | 0 | mm->mm_cid.pcpu_thrs | 0 |
| PARAM_VALUE | 0 | mm->mm_cid.update_deferred | 0 |
| PARAM_VALUE | 0 | mm->mm_cid.users | 0 |
| PARAM_VALUE | 0 | mm->mm_count.counter | 1 |
| PARAM_VALUE | 0 | mm->mm_id | 0-s32max |
| PARAM_VALUE | 0 | mm->mm_mt.ma_flags | 771 |
| PARAM_VALUE | 0 | mm->mm_mt.ma_root | 0 |
| PARAM_VALUE | 0 | mm->mm_users.counter | 1 |
| PARAM_VALUE | 0 | mm->mmap_lock.count.counter | 0 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter | 0 |
| PARAM_VALUE | 0 | mm->mmap_lock.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | mm->mmap_lock.owner.counter | 0 |
| PARAM_VALUE | 0 | mm->notifier_subscriptions | 0 |
| PARAM_VALUE | 0 | mm->owner | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->pgd | 18379471554275704832,18446612682070032384 |
| PARAM_VALUE | 0 | mm->pinned_vm.counter | 0 |
| PARAM_VALUE | 0 | mm->sc_stat.cpu | (-1) |
| PARAM_VALUE | 0 | mm->sc_stat.footprint | 0 |
| PARAM_VALUE | 0 | mm->sc_stat.lock.magic | 3735899821 |
| PARAM_VALUE | 0 | mm->sc_stat.lock.owner | (-1) |
| PARAM_VALUE | 0 | mm->sc_stat.lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | mm->sc_stat.nr_running_avg | 0 |
| PARAM_VALUE | 0 | mm->sc_stat.pcpu_sched | 1-u64max |
| PARAM_VALUE | 0 | mm->uprobes_state.xol_area | 0 |
| PARAM_VALUE | 0 | mm->vma_writer_wait.task | 0 |
| PARAM_VALUE | 2 | pmdp | 4096-u64max |
| BUF_SIZE | 0 | mm | (-1),1-s32max |
| BUF_SIZE | 0 | mm | (-1),1-s32max |
| CAPPED_DATA | 0 | mm->mm_id | 1 |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | addr | $4 |
| DATA_SOURCE | 2 | pmdp | $2 |
| DATA_SOURCE | 3 | pmd | $7 [m] |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | &mm->mmap_lock | ||
| LOCK2 | &oldmm->mmap_lock | ||
| LOCK2 | src_ptl | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/huge_memory.c copy_huge_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->context.ldt | 0 |
| PARAM_VALUE | 0 | mm->context.ldt_usr_sem.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->context.lock.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->context.tlb_gen.counter | 0 |
| PARAM_VALUE | 0 | mm->context.untag_mask | u64max |
| PARAM_VALUE | 0 | mm->def_flags | 0,1073741824 |
| PARAM_VALUE | 0 | mm->exe_file | 0,4096-ptr_max |
| PARAM_VALUE | 0 | mm->hugetlb_usage.counter | 0 |
| PARAM_VALUE | 0 | mm->ioctx_table | 0 |
| PARAM_VALUE | 0 | mm->iommu_mm | 0 |
| PARAM_VALUE | 0 | mm->locked_vm | 0 |
| PARAM_VALUE | 0 | mm->lru_gen.bitmap | 0 |
| PARAM_VALUE | 0 | mm->lru_gen.memcg | 0 |
| PARAM_VALUE | 0 | mm->map_count | 0-s32max |
| PARAM_VALUE | 0 | mm->mm_cid.lock.magic | 3735899821 |
| PARAM_VALUE | 0 | mm->mm_cid.lock.owner | (-1) |
| PARAM_VALUE | 0 | mm->mm_cid.lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | mm->mm_cid.max_cids | 0 |
| PARAM_VALUE | 0 | mm->mm_cid.mode | 0 |
| PARAM_VALUE | 0 | mm->mm_cid.mutex.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_cid.pcpu | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_cid.pcpu_thrs | 0 |
| PARAM_VALUE | 0 | mm->mm_cid.update_deferred | 0 |
| PARAM_VALUE | 0 | mm->mm_cid.users | 0 |
| PARAM_VALUE | 0 | mm->mm_count.counter | 1 |
| PARAM_VALUE | 0 | mm->mm_id | 0-s32max |
| PARAM_VALUE | 0 | mm->mm_mt.ma_flags | 771 |
| PARAM_VALUE | 0 | mm->mm_mt.ma_root | 0 |
| PARAM_VALUE | 0 | mm->mm_users.counter | 1 |
| PARAM_VALUE | 0 | mm->mmap_lock.count.counter | 0 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter | 0 |
| PARAM_VALUE | 0 | mm->mmap_lock.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | mm->mmap_lock.owner.counter | 0 |
| PARAM_VALUE | 0 | mm->notifier_subscriptions | 0 |
| PARAM_VALUE | 0 | mm->owner | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->pgd | 18379471554275704832,18446612682070032384 |
| PARAM_VALUE | 0 | mm->pinned_vm.counter | 0 |
| PARAM_VALUE | 0 | mm->sc_stat.cpu | (-1) |
| PARAM_VALUE | 0 | mm->sc_stat.footprint | 0 |
| PARAM_VALUE | 0 | mm->sc_stat.lock.magic | 3735899821 |
| PARAM_VALUE | 0 | mm->sc_stat.lock.owner | (-1) |
| PARAM_VALUE | 0 | mm->sc_stat.lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | mm->sc_stat.nr_running_avg | 0 |
| PARAM_VALUE | 0 | mm->sc_stat.pcpu_sched | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->uprobes_state.xol_area | 0 |
| PARAM_VALUE | 0 | mm->vma_writer_wait.task | 0 |
| PARAM_VALUE | 2 | pmdp | 4096-u64max |
| BUF_SIZE | 0 | mm | (-1),1-s32max |
| BUF_SIZE | 0 | mm | (-1),1-s32max |
| CAPPED_DATA | 0 | mm->mm_id | 1 |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | addr | $4 |
| DATA_SOURCE | 2 | pmdp | $2 |
| DATA_SOURCE | 3 | pmd | r pmd_mkold |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | &mm->mmap_lock | ||
| LOCK2 | &oldmm->mmap_lock | ||
| LOCK2 | src_ptl | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/huge_memory.c do_huge_pmd_numa_page() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | addr | 0,2097152-u64max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0,2097152-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &pool->lock |
mm/huge_memory.c do_huge_pmd_uffd_rwp() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | addr | 0,2097152-u64max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0,2097152-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &pool->lock |
mm/huge_memory.c insert_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | addr | 0,2097152-18446744073709551614 |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| DATA_SOURCE | 1 | addr | $1 |
| DATA_SOURCE | 2 | pmdp | $2 |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0,2097152-s32max[c] |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
mm/huge_memory.c madvise_free_huge_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 1 | addr | $3 |
| DATA_SOURCE | 2 | pmdp | $2 |
| DATA_SOURCE | 3 | pmd | r pmd_mkclean |
| NOSPEC | 1 | addr | |
| NOSPEC | 1 | addr | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock |
mm/huge_memory.c map_anon_folio_pmd_nopf() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 1 | addr | 0,2097152-u64max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 2 | pmdp | 1 |
| DATA_SOURCE | 1 | addr | $3 |
| DATA_SOURCE | 2 | pmdp | $1 |
| DATA_SOURCE | 3 | pmd | r maybe_pmd_mkwrite |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| NOSPEC | 1 | addr | |
| NOSPEC | 1 | addr | |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0,2097152-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | pmd_ptl |
mm/huge_memory.c move_huge_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 1 | addr | $2 |
| DATA_SOURCE | 2 | pmdp | $4 |
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0-u64max |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &tsk->signal->exec_update_lock | ||
| HALF_LOCKED2 | new_ptl | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/huge_memory.c move_pages_huge_pmd() -> set_pmd_at()
| 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->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 | 0 | mm->page_table_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->task_size | 1-u64max |
| PARAM_VALUE | 1 | addr | 0-18446744073709551614 |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| CAPPED_DATA | 0 | mm | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| CAPPED_DATA | 1 | addr | 1 |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | addr | $7 |
| DATA_SOURCE | 2 | pmdp | $2 |
| DATA_SOURCE | 3 | pmd | r pmdp_huge_clear_flush |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| NOSPEC | 1 | addr | |
| NOSPEC | 1 | addr | |
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0-s32max[c] |
| NO_OVERFLOW_SIMPLE | 1 | addr | |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | &ctx->map_changing_lock | ||
| TYPE_LOCK | (struct userfaultfd_ctx)->map_changing_lock |
mm/huge_memory.c move_pages_huge_pmd() -> set_pmd_at()
| 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->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 | 0 | mm->page_table_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->task_size | 1-u64max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| CAPPED_DATA | 0 | mm | 1 |
| DATA_SOURCE | 0 | mm | $0 |
| DATA_SOURCE | 1 | addr | $6 |
| DATA_SOURCE | 2 | pmdp | $1 |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| NOSPEC | 1 | addr | |
| NOSPEC | 1 | addr | |
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0-18446744073709551614[c] |
| NO_OVERFLOW_SIMPLE | 1 | addr | |
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| LOCK2 | &ctx->map_changing_lock | ||
| TYPE_LOCK | (struct userfaultfd_ctx)->map_changing_lock |
mm/huge_memory.c remove_migration_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | addr | 0,2097152-u64max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &anon_vma->root->rwsem | ||
| HALF_LOCKED2 | &folio->private->lock |
mm/huge_memory.c set_huge_zero_folio() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 1 | addr | 0,2097152-u64max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 0 | mm | $1 |
| DATA_SOURCE | 1 | addr | $3 |
| DATA_SOURCE | 2 | pmdp | $4 |
| DATA_SOURCE | 3 | pmd | r pmd_mkspecial |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0,2097152-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &pool->lock |
mm/huge_memory.c set_pmd_migration_entry() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0-18446744073709551614[c] |
| UNITS | 0 | mm | unit_byte |
mm/huge_memory.c set_pmd_migration_entry() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0-18446744073709551614[c] |
| UNITS | 0 | mm | unit_byte |
fs/proc/task_mmu.c clear_soft_dirty_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->context.asid_transition | 1 |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 1 | addr | $1 |
| DATA_SOURCE | 2 | pmdp | $2 |
| DATA_SOURCE | 3 | pmd | r pmd_clear_soft_dirty |
| NOSPEC | 1 | addr | |
| NOSPEC | 1 | addr | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock |
fs/proc/task_mmu.c clear_soft_dirty_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 1 | addr | $1 |
| DATA_SOURCE | 2 | pmdp | $2 |
| DATA_SOURCE | 3 | pmd | r pmd_swp_clear_soft_dirty |
| NOSPEC | 1 | addr | |
| NOSPEC | 1 | addr | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock |
fs/proc/task_mmu.c make_uffd_wp_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 1 | addr | $1 |
| DATA_SOURCE | 2 | pmdp | $2 |
| DATA_SOURCE | 3 | pmd | r pmd_mkuffd |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0-18446744073709551614[c] |
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock |
fs/proc/task_mmu.c make_uffd_wp_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 1 | addr | $1 |
| DATA_SOURCE | 2 | pmdp | $2 |
| DATA_SOURCE | 3 | pmd | r pmd_swp_mkuffd |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0-18446744073709551614[c] |
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &mm->mmap_lock |
mm/rmap.c page_vma_mkclean_one() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->context.asid_transition | 1 |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 3 | pmd | r pmd_mkclean |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &((&xas)->xa)->xa_lock | ||
| HALF_LOCKED2 | &mapping->i_mmap_rwsem |
mm/migrate_device.c migrate_vma_insert_huge_pmd_page() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 1 | addr | $1 |
| DATA_SOURCE | 2 | pmdp | $4 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| UNITS | 1 | addr | unit_byte |
| HALF_LOCKED2 | &drm->dmem->mutex |
mm/memory.c do_set_pmd() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | addr | 0,2097152-u64max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| BIT_INFO | 1 | addr | 0x0,0xffffffffffe00000 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | addr | 0,2097152-u64max[c] |
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | rcu_read |
mm/debug_vm_pgtable.c pmd_advanced_tests() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 1 | addr | 0 |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 3 | pmd | r pfn_pmd |
| PREEMPT_ADD | |||
| NOCHECK_CALL |
mm/debug_vm_pgtable.c pmd_advanced_tests() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 1 | addr | 0 |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 3 | pmd | r pmd_mkclean |
| PREEMPT_ADD | |||
| NOCHECK_CALL |
mm/debug_vm_pgtable.c pmd_advanced_tests() -> set_pmd_at()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 1 | addr | 0 |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 3 | pmd | r pmd_mkyoung |
| PREEMPT_ADD | |||
| NOCHECK_CALL |