summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFreya Murphy <freya@freyacat.org>2025-03-27 16:36:02 -0400
committerFreya Murphy <freya@freyacat.org>2025-03-27 16:36:02 -0400
commitff990eb0c3e09170c70fb98d687938389065cc4c (patch)
tree55f3cee2ea4e91ede8242e5b6d1d1c85b6eda0b1
parentdisable kvm (breaks gdb), fix kernel to be flat binary (diff)
downloadcomus-ff990eb0c3e09170c70fb98d687938389065cc4c.tar.gz
comus-ff990eb0c3e09170c70fb98d687938389065cc4c.tar.bz2
comus-ff990eb0c3e09170c70fb98d687938389065cc4c.zip
track changes
-rw-r--r--kernel/vm.c9
-rw-r--r--kernel/vmtables.c5
2 files changed, 9 insertions, 5 deletions
diff --git a/kernel/vm.c b/kernel/vm.c
index c9b632d..2ab5720 100644
--- a/kernel/vm.c
+++ b/kernel/vm.c
@@ -591,10 +591,11 @@ int vm_map(pde_t *pdir, void *va, uint32_t pa, uint32_t size, int perm)
// couldn't find it
return E_NO_PTE;
}
-#if TRACING_VM
- cio_printf(" addr %08x pa %08x last %08x pte %08x *pte %08x\n",
- (uint32_t)addr, pa, (uint32_t)last, (uint32_t)pte, *pte);
-#endif
+ // #if TRACING_VM
+ // cio_printf( " addr %08x pa %08x last %08x pte %08x *pte %08x\n",
+ // (uint32_t) addr, pa, (uint32_t) last, (uint32_t) pte, *pte
+ // );
+ //#endif
// create the new entry
pde_t entry = pa | perm | PTE_P;
diff --git a/kernel/vmtables.c b/kernel/vmtables.c
index ab398f0..4dfce43 100644
--- a/kernel/vmtables.c
+++ b/kernel/vmtables.c
@@ -365,6 +365,8 @@ const pte_t id_map[N_PTE] = {
};
#endif /* MAKE_IDENTITY_MAP */
+extern int _end;
+
/*
** Kernel address mappings, present in every page table
*/
@@ -372,7 +374,8 @@ const mapping_t kmap[] = {
// va pa_start pa_end perms
{ KERN_BASE, 0, EXT_BASE, PDE_RW },
{ KERN_VLINK, KERN_PLINK, V2P(_data), PDE_RW },
- { (uint32_t)_data, V2P(_data), KERN_BASE, PDE_RW },
+ // { (uint32_t) _data, V2P(_data), V2P(_end), PDE_RW },
+ { (uint32_t)_data, V2P(_data), PHYS_TOP, PDE_RW },
{ DEV_BASE, DEV_BASE, 0, PDE_RW }
};
const uint_t n_kmap = sizeof(kmap) / sizeof(kmap[0]);