class X86PageTableMmu

Defined at line 28 of file ../../zircon/kernel/arch/x86/include/arch/aspace.h

Implementation of page tables used by x86-64 CPUs.

Public Members

bool use_global_mappings_

Public Methods

PageTableLevel top_level ()

Defined at line 45 of file ../../zircon/kernel/arch/x86/include/arch/aspace.h

bool allowed_flags (uint flags)

Defined at line 46 of file ../../zircon/kernel/arch/x86/include/arch/aspace.h

bool needs_cache_flushes ()

Defined at line 55 of file ../../zircon/kernel/arch/x86/include/arch/aspace.h

zx_status_t InitKernel (void * ctx, page_alloc_fn_t test_paf)

Initialize the kernel page table, assigning the given context to it.

This X86PageTable will be special in that its mappings will all have

the G (global) bit set, and are expected to be aliased across all page

tables used in the normal MMU. See |AliasKernelMappings|.

Defined at line 700 of file ../../zircon/kernel/arch/x86/mmu.cc

zx_status_t AliasKernelMappings ()

Used for normal MMU page tables so they can share the high kernel mapping

Defined at line 713 of file ../../zircon/kernel/arch/x86/mmu.cc

bool check_paddr (paddr_t paddr)

X86PageTableMmu

Defined at line 236 of file ../../zircon/kernel/arch/x86/mmu.cc

bool check_vaddr (vaddr_t vaddr)

Defined at line 238 of file ../../zircon/kernel/arch/x86/mmu.cc

bool supports_page_size (PageTableLevel level)

Defined at line 240 of file ../../zircon/kernel/arch/x86/mmu.cc

IntermediatePtFlags intermediate_flags ()

Defined at line 254 of file ../../zircon/kernel/arch/x86/mmu.cc

PtFlags terminal_flags (PageTableLevel level, uint flags)

Defined at line 256 of file ../../zircon/kernel/arch/x86/mmu.cc

PtFlags split_flags (PageTableLevel level, PtFlags flags)

Defined at line 307 of file ../../zircon/kernel/arch/x86/mmu.cc

void TlbInvalidate (const PendingTlbInvalidation * pending)

Defined at line 325 of file ../../zircon/kernel/arch/x86/mmu.cc

uint pt_flags_to_mmu_flags (PtFlags flags, PageTableLevel level)

Defined at line 538 of file ../../zircon/kernel/arch/x86/mmu.cc