MOS Source Code
|
Go to the source code of this file.
Classes | |
struct | pml1e_t |
struct | pml1_t |
struct | pgd_t |
struct | pagetable_walk_options_t |
Macros | |
#define | MOS_MAX_PAGE_LEVEL 5 |
#define | define_pmlx(pmln) |
#define | pml_null(pmln) |
#define | pml1_index(vaddr) |
#define | PML1E_NPAGES 1ULL |
#define | MOS_PMLTOP MOS_CONCAT(pml, MOS_PLATFORM_PAGING_LEVELS) |
#define | pgd_create(top) |
#define | pgd_pfn(pgd) |
#define | pml_create_table(x) |
#define | pml_destroy_table(x) |
#define | pmlxe_destroy(pmlxe) |
Typedefs | |
typedef pml2e_t | pml3e_t |
typedef pml3e_t | pml4e_t |
typedef pml4e_t | pml5e_t |
Functions | |
new_named_opaque_type (pml1_t, next, pml2_t) | |
new_named_opaque_type (pml2_t, next, pml3_t) | |
new_named_opaque_type (pml3_t, next, pml4_t) | |
new_named_opaque_type (pml4_t, next, pml5_t) | |
__nodiscard void * | __create_page_table (void) |
void | __destroy_page_table (void *table) |
#define MOS_MAX_PAGE_LEVEL 5 |
Definition at line 10 of file pml_types.h.
#define define_pmlx | ( | pmln | ) |
Definition at line 22 of file pml_types.h.
#define pml_null | ( | pmln | ) |
Definition at line 32 of file pml_types.h.
Referenced by pagetable_iter_next().
#define pml1_index | ( | vaddr | ) |
Definition at line 37 of file pml_types.h.
Referenced by pagetable_iter_next(), pml1_destroy_range(), pml1_entry(), and pml1_traverse().
#define PML1E_NPAGES 1ULL |
Definition at line 38 of file pml_types.h.
Referenced by pagetable_iter_next(), pagetable_iterator_start_current_range(), pml1_destroy_range(), and pml1_traverse().
#define MOS_PMLTOP MOS_CONCAT(pml, MOS_PLATFORM_PAGING_LEVELS) |
Definition at line 82 of file pml_types.h.
Referenced by mos_start_kernel().
#define pgd_create | ( | top | ) |
Definition at line 89 of file pml_types.h.
Referenced by mm_create_context(), and mos_start_kernel().
#define pgd_pfn | ( | pgd | ) |
Definition at line 90 of file pml_types.h.
Referenced by platform_switch_mm(), and platform_switch_mm().
#define pml_create_table | ( | x | ) |
Definition at line 107 of file pml_types.h.
Referenced by mm_create_context(), mos_start_kernel(), pml2_traverse(), and pml2e_get_or_create_pml1().
#define pml_destroy_table | ( | x | ) |
Definition at line 108 of file pml_types.h.
Referenced by pml1_destroy_range(), and pml2_destroy_range().
#define pmlxe_destroy | ( | pmlxe | ) |
Definition at line 110 of file pml_types.h.
Referenced by pml1e_do_copy_callback(), pml1e_do_unmap_callback(), and pml2_destroy_range().
typedef pml2e_t pml3e_t |
Definition at line 60 of file pml_types.h.
Definition at line 72 of file pml_types.h.
Definition at line 79 of file pml_types.h.
new_named_opaque_type | ( | pml1_t | , |
next | , | ||
pml2_t | ) |
new_named_opaque_type | ( | pml2_t | , |
next | , | ||
pml3_t | ) |
new_named_opaque_type | ( | pml3_t | , |
next | , | ||
pml4_t | ) |
new_named_opaque_type | ( | pml4_t | , |
next | , | ||
pml5_t | ) |
__nodiscard void * __create_page_table | ( | void | ) |
Definition at line 204 of file table_ops.c.