Defined in 2 files as a macro:
- arch/riscv/include/asm/pgtable-64.h, line 388 (as a macro)
- include/asm-generic/pgtable-nop4d.h, line 44 (as a macro)
Defined in 1 files as a function:
Referenced in 9 files:
- arch/arm/mm/kasan_init.c, line 234
- arch/m68k/mm/init.c, line 98
- arch/m68k/mm/motorola.c, line 276
- arch/riscv/mm/kasan_init.c, line 465
- arch/x86/include/asm/pgtable.h, line 1128
- arch/x86/mm/init_64.c
- arch/x86/mm/kasan_init_64.c, line 364
- arch/x86/mm/pgtable.c
- arch/x86/platform/efi/efi_64.c, line 99
Smatch caller information:
arch/x86/power/hibernate.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | global &device_hotplug_lock | ||
| LOCK2 | global &system_transition_mutex | ||
| LOCK2 | irq |
arch/x86/mm/init_64.c __kernel_physical_mapping_init() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | irq |
arch/x86/mm/init_64.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | global &init_mm.page_table_lock | ||
| HALF_LOCKED2 | global &pgd_lock | ||
| HALF_LOCKED2 | irq |
arch/x86/mm/init_64.c sync_global_pgds_l5() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | global &pgd_lock | ||
| LOCK2 | pgt_lock | ||
| HALF_LOCKED2 | irq |
arch/x86/mm/init_64.c sync_global_pgds_l5() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | global &pgd_lock | ||
| LOCK2 | pgt_lock | ||
| HALF_LOCKED2 | irq |
arch/x86/kernel/tboot.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
mm/pagewalk.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mm->mmap_lock |
arch/x86/mm/ioremap.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| LOCK2 | irq |
mm/userfaultfd.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING |
mm/swapfile.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| CAPABLE | 0 | 21 | |
| LOCK2 | &mm->mmap_lock | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
arch/x86/entry/vsyscall/vsyscall_64.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| LOCK2 | irq |
mm/percpu.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| LOCK2 | irq |
arch/x86/kernel/machine_kexec_64.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
arch/x86/mm/fault.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | flags |
mm/kasan/init.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING |
arch/x86/mm/pti.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| HALF_LOCKED2 | irq |
mm/rmap.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &ctx->map_changing_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | global &ksm_thread_mutex |
mm/page_vma_mapped.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | global &ksm_thread_mutex | ||
| HALF_LOCKED2 | global &mf_mutex | ||
| HALF_LOCKED2 | rcu_read |
arch/x86/kernel/espfix_64.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| LOCK2 | irq |
mm/mprotect.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dst_mm->mmap_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | _T->lock |
mm/hugetlb.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING |
mm/mremap.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| LOCK2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &tsk->signal->exec_update_lock | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
arch/x86/kvm/mmu/mmu.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | flags | ||
| HALF_LOCKED2 | &kvm->arch.apic_map_lock | ||
| HALF_LOCKED2 | &kvm->arch.apicv_update_lock | ||
| HALF_LOCKED2 | &kvm->lock | ||
| HALF_LOCKED2 | &kvm->mmu_lock | ||
| HALF_LOCKED2 | &kvm->slots_lock | ||
| HALF_LOCKED2 | &kvm->srcu | ||
| HALF_LOCKED2 | rcu_read |
arch/x86/mm/kasan_init_64.c kasan_init() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| LOCK2 | irq |
arch/x86/mm/kasan_init_64.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| LOCK2 | irq |
mm/migrate_device.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &drm->dmem->mutex |
arch/x86/mm/kaslr.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
mm/memory.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &oldmm->mmap_lock |
kernel/events/core.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | flags | ||
| LOCK2 | rcu_read |
mm/memory-failure.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &av->root->rwsem | ||
| HALF_LOCKED2 | &mapping->i_mmap_rwsem | ||
| HALF_LOCKED2 | global &mf_mutex |
mm/gup.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | flags |
arch/x86/boot/startup/sme.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
arch/x86/mm/pat/set_memory.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | global &cpa_lock | ||
| HALF_LOCKED2 | global &pgd_lock |
arch/x86/platform/efi/efi_64.c efi_alloc_page_tables() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
arch/x86/platform/efi/efi_64.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING |
mm/vmalloc.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING |
mm/debug_vm_pgtable.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
mm/khugepaged.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | pml |
arch/x86/mm/pgtable.c mop_up_one_pmd() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mm->mmap_lock |
arch/x86/mm/pgtable.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
arch/x86/mm/pgtable.c pgd_prepopulate_pmd() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
arch/x86/mm/pgtable.c pgd_prepopulate_pmd() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
arch/x86/mm/pgtable.c pgd_prepopulate_pmd() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
arch/x86/mm/pgtable.c pgd_prepopulate_user_pmd() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
arch/x86/mm/pgtable.c pgd_prepopulate_user_pmd() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
arch/x86/mm/pgtable.c pgd_prepopulate_user_pmd() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
mm/kasan/shadow.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|
arch/x86/xen/mmu_pv.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | irq |
mm/sparse-vmemmap.c p4d_offset() -> pgd_page_vaddr()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING |