MOS Source Code
Loading...
Searching...
No Matches
do_flag.cpp
Go to the documentation of this file.
1// SPDX-License-Identifier: GPL-3.0-or-later
2
4
5static void pml1e_do_flag_callback(pml1_t pml1, pml1e_t *e, ptr_t vaddr, void *data)
6{
7 MOS_UNUSED(pml1);
8 MOS_UNUSED(vaddr);
10 {
11 struct pagetable_do_flag_data *flag_data = (pagetable_do_flag_data *) data;
12 platform_pml1e_set_flags(e, flag_data->flags);
14 }
15}
16
17static void pml2e_do_flag_callback(pml2_t pml2, pml2e_t *e, ptr_t vaddr, void *data)
18{
19 MOS_UNUSED(pml2);
20 MOS_UNUSED(vaddr);
21 struct pagetable_do_flag_data *flag_data = (pagetable_do_flag_data *) data;
22 platform_pml2e_set_flags(e, flag_data->flags);
23}
24
25static void pml3e_do_flag_callback(pml3_t pml3, pml3e_t *e, ptr_t vaddr, void *data)
26{
27 MOS_UNUSED(pml3);
28 MOS_UNUSED(vaddr);
29 struct pagetable_do_flag_data *flag_data = (pagetable_do_flag_data *) data;
30 platform_pml3e_set_flags(e, flag_data->flags);
31}
32
33static void pml4e_do_flag_callback(pml4_t pml4, pml4e_t *e, ptr_t vaddr, void *data)
34{
35 MOS_UNUSED(pml4);
36 MOS_UNUSED(vaddr);
37 struct pagetable_do_flag_data *flag_data = (pagetable_do_flag_data *) data;
38 platform_pml4e_set_flags(e, flag_data->flags);
39}
40
42 .pml4e_pre_traverse = pml4e_do_flag_callback,
43 .pml3e_pre_traverse = pml3e_do_flag_callback,
44 .pml2e_pre_traverse = pml2e_do_flag_callback,
45 .pml1e_callback = pml1e_do_flag_callback,
46};
void platform_pml2e_set_flags(pml2e_t *pml2e, vm_flags flags)
Definition mm.cpp:125
void platform_pml4e_set_flags(pml4e_t *pml4e, vm_flags flags)
Definition mm.cpp:225
void platform_pml1e_set_flags(pml1e_t *pml1e, vm_flags flags)
Definition mm.cpp:95
void platform_invalidate_tlb(ptr_t vaddr)
Definition mm.cpp:72
void platform_pml3e_set_flags(pml3e_t *pml3e, vm_flags flags)
Definition mm.cpp:175
bool platform_pml1e_get_present(const pml1e_t *pml1e)
Definition mm.cpp:90
static void pml3e_do_flag_callback(pml3_t pml3, pml3e_t *e, ptr_t vaddr, void *data)
Definition do_flag.cpp:25
static void pml1e_do_flag_callback(pml1_t pml1, pml1e_t *e, ptr_t vaddr, void *data)
Definition do_flag.cpp:5
static void pml2e_do_flag_callback(pml2_t pml2, pml2e_t *e, ptr_t vaddr, void *data)
Definition do_flag.cpp:17
static void pml4e_do_flag_callback(pml4_t pml4, pml4e_t *e, ptr_t vaddr, void *data)
Definition do_flag.cpp:33
const pagetable_walk_options_t pagetable_do_flag_callbacks
Definition do_flag.cpp:41
#define MOS_UNUSED(x)
Definition mos_global.h:65
pml3e_t pml4e_t
Definition pml_types.hpp:72
pml2e_t pml3e_t
Definition pml_types.hpp:60
unsigned long ptr_t
Definition types.h:21