Defined in 4 files as a macro:
- arch/arc/include/asm/pgtable-bits-arcv2.h, line 82 (as a macro)
- arch/arm/include/asm/pgtable.h, line 175 (as a macro)
- arch/arm64/include/asm/pgtable.h, line 154 (as a macro)
- arch/sh/include/asm/pgtable_32.h, line 341 (as a macro)
Defined in 23 files as a function:
- arch/alpha/include/asm/pgtable.h, line 233 (as a function)
- arch/csky/include/asm/pgtable.h, line 153 (as a function)
- arch/hexagon/include/asm/pgtable.h, line 270 (as a function)
- arch/loongarch/include/asm/pgtable.h, line 393 (as a function)
- arch/m68k/include/asm/mcf_pgtable.h, line 172 (as a function)
- arch/m68k/include/asm/motorola_pgtable.h, line 148 (as a function)
- arch/m68k/include/asm/sun3_pgtable.h, line 136 (as a function)
- arch/microblaze/include/asm/pgtable.h, line 238 (as a function)
- arch/mips/include/asm/pgtable.h, line 293 (as a function)
- arch/mips/include/asm/pgtable.h, line 357 (as a function)
- arch/nios2/include/asm/pgtable.h, line 84 (as a function)
- arch/openrisc/include/asm/pgtable.h, line 200 (as a function)
- arch/parisc/include/asm/pgtable.h, line 305 (as a function)
- arch/powerpc/include/asm/book3s/32/pgtable.h, line 396 (as a function)
- arch/powerpc/include/asm/book3s/64/pgtable.h, line 460 (as a function)
- arch/powerpc/include/asm/nohash/pgtable.h, line 215 (as a function)
- arch/riscv/include/asm/pgtable.h, line 395 (as a function)
- arch/s390/include/asm/pgtable.h, line 926 (as a function)
- arch/sparc/include/asm/pgtable_32.h, line 214 (as a function)
- arch/sparc/include/asm/pgtable_64.h, line 617 (as a function)
- arch/um/include/asm/pgtable.h, line 134 (as a function)
- arch/x86/include/asm/pgtable.h, line 159 (as a function)
- arch/xtensa/include/asm/pgtable.h, line 248 (as a function)
Referenced in 37 files:
- arch/arc/include/asm/hugepage.h, line 40
- arch/arm/include/asm/pgtable.h, line 179
- arch/arm/lib/uaccess_with_memcpy.c, line 80
- arch/arm64/include/asm/pgtable.h
- arch/arm64/mm/contpte.c
- arch/arm64/mm/hugetlbpage.c
- arch/mips/kvm/mmu.c
- arch/parisc/include/asm/pgtable.h, line 447
- arch/parisc/kernel/cache.c, line 789
- arch/powerpc/include/asm/book3s/64/pgtable.h
- arch/powerpc/kvm/book3s_64_mmu_radix.c
- arch/powerpc/mm/book3s32/mmu.c, line 329
- arch/powerpc/mm/book3s64/hash_utils.c, line 2130
- arch/powerpc/xmon/xmon.c, line 3277
- arch/riscv/include/asm/pgtable.h
- arch/riscv/kvm/mmu.c, line 389
- arch/riscv/mm/hugetlbpage.c
- arch/riscv/mm/pgtable.c, line 35
- arch/s390/include/asm/pgtable.h, line 1207
- arch/sparc/include/asm/pgtable_64.h, line 717
- arch/um/kernel/tlb.c, line 71
- arch/um/kernel/trap.c, line 219
- arch/x86/kernel/cpu/sgx/encl.c, line 1117
- arch/x86/mm/pgtable.c, line 440
- arch/xtensa/include/asm/pgtable.h, line 311
- fs/proc/task_mmu.c, line 1061
- include/linux/pgtable.h
- mm/damon/ops-common.c, line 212
- mm/damon/vaddr.c
- mm/debug_vm_pgtable.c
- mm/internal.h, line 450
- mm/khugepaged.c, line 707
- mm/madvise.c
- mm/memory.c
- mm/migrate_device.c, line 450
- mm/rmap.c, line 2741
- mm/vmscan.c, line 3452
Smatch caller information:
mm/madvise.c folio_pte_batch_flags() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/madvise.c madvise_cold_or_pageout_pte_range() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/madvise.c madvise_free_pte_range() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/damon/vaddr.c damon_hugetlb_mkold() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r huge_ptep_get |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &m->lock | ||
| HALF_LOCKED2 | &mapping->i_mmap_rwsem |
mm/damon/vaddr.c damon_young_hugetlb_entry() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r huge_ptep_get |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &m->lock | ||
| HALF_LOCKED2 | &mapping->i_mmap_rwsem |
mm/damon/vaddr.c damon_young_pmd_entry() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/damon/vaddr.c damos_va_filter_young_match() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | ptl |
fs/proc/task_mmu.c smaps_pte_entry() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/rmap.c folio_pte_batch_flags() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &anon_vma->root->rwsem | ||
| HALF_LOCKED2 | &folio->private->lock |
mm/rmap.c get_and_clear_full_ptes() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get_and_clear_full |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &anon_vma->root->rwsem | ||
| HALF_LOCKED2 | &folio->private->lock |
mm/rmap.c try_to_migrate_one() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &anon_vma->root->rwsem | ||
| HALF_LOCKED2 | &folio->private->lock | ||
| HALF_LOCKED2 | &resv_map->rw_sema | ||
| HALF_LOCKED2 | &vma->vm_private_data->rw_sema |
mm/util.c folio_pte_batch_flags() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &folio->private->lock | ||
| HALF_LOCKED2 | ptl | ||
| HALF_LOCKED2 | rcu_read |
mm/mprotect.c folio_pte_batch_flags() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/mprotect.c modify_prot_start_ptes() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_modify_prot_start |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/mremap.c folio_pte_batch_flags() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get |
mm/mremap.c get_and_clear_full_ptes() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get_and_clear_full |
| 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/migrate_device.c migrate_vma_collect_pmd() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
arch/x86/kernel/cpu/sgx/encl.c sgx_encl_test_and_clear_young_cb() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | ptl |
mm/vmscan.c folio_pte_batch_flags() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | ptl | ||
| HALF_LOCKED2 | rcu_read |
mm/vmscan.c get_pte_pfn() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | ptl | ||
| HALF_LOCKED2 | rcu_read |
mm/memory.c __wp_page_copy_user() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/memory.c folio_pte_batch_flags() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &mm->mmap_lock | ||
| LOCK2 | &oldmm->mmap_lock | ||
| LOCK2 | dst_ptl | ||
| LOCK2 | rcu_read | ||
| LOCK2 | src_ptl | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/memory.c get_and_clear_full_ptes() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get_and_clear_full |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/memory.c zap_present_folio_ptes() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r get_and_clear_full_ptes |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/damon/ops-common.c damon_folio_young_one() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &anon_vma->root->rwsem | ||
| HALF_LOCKED2 | &folio->private->lock |
mm/debug_vm_pgtable.c pte_advanced_tests() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | r ptep_get |
| HALF_LOCKED2 | ptl |
mm/debug_vm_pgtable.c pte_basic_tests() -> pte_young()
| Type | Parameter | Key | Value |
|---|
mm/debug_vm_pgtable.c pte_basic_tests() -> pte_young()
| Type | Parameter | Key | Value |
|---|
mm/khugepaged.c folio_pte_referenced() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pte | $3 |
arch/x86/mm/pgtable.c ptep_test_and_clear_young() -> pte_young()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | ptl |