MOS Source Code
Loading...
Searching...
No Matches
pml2.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: GPL-3.0-or-later
2
3#pragma once
4
6
7void pml2_traverse(pml2_t pml2, ptr_t *vaddr, size_t *n_pages, pagetable_walk_options_t callback, void *data);
8
9__nodiscard bool pml2_destroy_range(pml2_t pml2, ptr_t *vaddr, size_t *n_pages);
10
11pml2e_t *pml2_entry(pml2_t pml2, ptr_t vaddr);
12
13bool pml2e_is_present(const pml2e_t *pml2e);
14
15pml1_t pml2e_get_or_create_pml1(pml2e_t *pml2e);
bool callback(pb_istream_t *stream, uint8_t *buf, size_t count)
#define __nodiscard
Definition mos_global.h:35
pml1_t pml2e_get_or_create_pml1(pml2e_t *pml2e)
Definition pml2.cpp:84
bool pml2e_is_present(const pml2e_t *pml2e)
Definition pml2.cpp:79
pml2e_t * pml2_entry(pml2_t pml2, ptr_t vaddr)
Definition pml2.cpp:74
void pml2_traverse(pml2_t pml2, ptr_t *vaddr, size_t *n_pages, pagetable_walk_options_t callback, void *data)
Definition pml2.cpp:14
__nodiscard bool pml2_destroy_range(pml2_t pml2, ptr_t *vaddr, size_t *n_pages)
Definition pml2.cpp:45
unsigned long ptr_t
Definition types.h:21