summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZachary Yedidia <zyedidia@gmail.com>2022-05-09 20:20:50 -0700
committerZachary Yedidia <zyedidia@gmail.com>2022-05-09 22:37:03 -0700
commit8623677a985ab5b015dfec65a52c1dbea114ee7d (patch)
tree9a9c3255329073942fe8ba89acb871bb1e78078c
parent789edbf4f17d3c0d38f1d21cf7dc4218286f6f56 (diff)
Minor changes
-rw-r--r--vm.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/vm.c b/vm.c
index 8d778b1..cedc9d0 100644
--- a/vm.c
+++ b/vm.c
@@ -4,8 +4,8 @@
static pde_t* pgdir;
void vm_init() {
- pgdir = kmalloc_aligned(256 * sizeof(pde_t), 1 << 14);
- memset(pgdir, 0, 256 * sizeof(pde_t));
+ pgdir = kmalloc_aligned(4096 * sizeof(pde_t), 1 << 14);
+ memset(pgdir, 0, 4096 * sizeof(pde_t));
}
static void init_second_level(pde_t* pde) {
@@ -13,7 +13,7 @@ static void init_second_level(pde_t* pde) {
memset(pgtbl, 0, 256 * sizeof(pte_small_t));
pde->addr = (uintptr_t) pgtbl >> 10;
pde->tag = 0b01;
- pde->domain = DOM_CLIENT;
+ pde->domain = DOM_MANAGER;
}
static void system_set_cache_control(unsigned reg) {
@@ -28,7 +28,7 @@ void vm_map(uintptr_t va, uintptr_t pa, unsigned flags) {
switch (pde->tag) {
case 0b00:
init_second_level(pde);
- case 0b01:
+ case 0b01: ;
pte_small_t* pgtbl = (pte_small_t*) (pde->addr << 10);
pte_small_t* pte = &pgtbl[bits_get(va, 12, 19)];
pte->addr = pa >> 12;
@@ -66,7 +66,7 @@ void vm_enable() {
system_invalidate_cache();
system_invalidate_tlb();
dsb();
- system_set_domain(DOM_CLIENT);
+ system_set_domain(DOM_MANAGER);
system_set_tlb_base((uintptr_t) pgdir);
system_set_cache_control(
SYSTEM_MMU_ENABLE | SYSTEM_DCACHE_ENABLE | SYSTEM_ICACHE_ENABLE |
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback