1// SPDX-License-Identifier: GPL-3.0-or-later
2
3#pragma once
4
5#include "mos/mm/paging/pml_types.h"
6
7void pml4_traverse(pml4_t pml4, ptr_t *vaddr, size_t *n_pages, pagetable_walk_options_t callback, void *data);
8
9__nodiscard bool pml4_destroy_range(pml4_t pml4, ptr_t *vaddr, size_t *n_pages);
10
11pml4e_t *pml4_entry(pml4_t pml4, ptr_t vaddr);
12
13bool pml4e_is_present(const pml4e_t *pml4e);
14
15pml3_t pml4e_get_or_create_pml3(pml4e_t *pml4e);
16