AquilaOS documentation
How it works, and its code
Loading...
Searching...
No Matches
pmap.h
Go to the documentation of this file.
1#ifndef _AARCH64_MM_PMAP_H
2#define _AARCH64_MM_PMAP_H
3
4/*
5 * An address space's page tables: those of its user half (TTBR0_EL1's top
6 * table). The kernel's half is one set of tables, in TTBR1_EL1, the same
7 * whatever process runs (mm/pmap.c).
8 */
9struct pmap {
11 size_t ref;
12};
13
14/* tlb_shootdown() and pmap_loaded(), as on x86 (arch/i386/include/mm/pmap.h
15 * documents them). With one CPU, only this CPU's TLB is flushed. */
16void tlb_shootdown(struct pmap *pmap, vaddr_t sva, vaddr_t eva, int leave);
17void pmap_loaded(struct pmap *from, struct pmap *to);
18
19#include_next <mm/pmap.h>
20
21#endif /* ! _AARCH64_MM_PMAP_H */
uint64_t paddr_t
Definition mm.h:39
uint64_t vaddr_t
Definition mm.h:40
void pmap_loaded(struct pmap *from, struct pmap *to)
Definition pmap.c:157
void tlb_shootdown(struct pmap *pmap, vaddr_t sva, vaddr_t eva, int leave)
Definition pmap.c:130
An address space's page tables, on x86.
Definition pmap.h:9
paddr_t map
Definition pmap.h:10
size_t ref
Definition pmap.h:11