MOS Source Code
Loading...
Searching...
No Matches
pml3.h
Go to the documentation of this file.
1// SPDX-License-Identifier: GPL-3.0-or-later
2
3#pragma once
4
6
7void pml3_traverse(pml3_t pml3, ptr_t *vaddr, size_t *n_pages, pagetable_walk_options_t callback, void *data);
8
9__nodiscard bool pml3_destroy_range(pml3_t pml3, ptr_t *vaddr, size_t *n_pages);
10
11pml3e_t *pml3_entry(pml3_t pml3, ptr_t vaddr);
12
13bool pml3e_is_present(const pml3e_t *pml3e);
14
bool callback(pb_istream_t *stream, uint8_t *buf, size_t count)
#define __nodiscard
Definition mos_global.h:35
pml2_t pml3e_get_or_create_pml2(pml3e_t *pml3e)
bool pml3e_is_present(const pml3e_t *pml3e)
Definition pml3.c:26
void pml3_traverse(pml3_t pml3, ptr_t *vaddr, size_t *n_pages, pagetable_walk_options_t callback, void *data)
Definition pml3.c:15
pml3e_t * pml3_entry(pml3_t pml3, ptr_t vaddr)
Definition pml3.c:20
__nodiscard bool pml3_destroy_range(pml3_t pml3, ptr_t *vaddr, size_t *n_pages)
pml2e_t pml3e_t
Definition pml_types.h:60
unsigned long ptr_t
Definition types.h:25