1 | // SPDX-License-Identifier: GPL-3.0-or-later |
---|---|
2 | |
3 | #pragma once |
4 | |
5 | #include "mos/mm/paging/pml_types.h" |
6 | |
7 | void pml1_free(pml1_t pml1); |
8 | |
9 | void pml1_traverse(pml1_t pml1, ptr_t *vaddr, size_t *n_pages, pagetable_walk_options_t callback, void *data); |
10 | |
11 | __nodiscard bool pml1_destroy_range(pml1_t pml1, ptr_t *vaddr, size_t *n_pages); |
12 | |
13 | pml1e_t *pml1_entry(pml1_t pml1, ptr_t vaddr); |
14 | |
15 | bool pml1e_is_present(const pml1e_t *pml1e); |
16 | |
17 | pfn_t pml1e_get_pfn(const pml1e_t *pml1e); |
18 |