diff options
Diffstat (limited to 'kernel/src/mem')
| -rw-r--r-- | kernel/src/mem/heap.c | 4 | ||||
| -rw-r--r-- | kernel/src/mem/paging.c | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/kernel/src/mem/heap.c b/kernel/src/mem/heap.c index 3dfb0ea..229933b 100644 --- a/kernel/src/mem/heap.c +++ b/kernel/src/mem/heap.c @@ -121,7 +121,7 @@ void init_heap() // allocate pages for kheap for (size_t i = 0; i < upper_div(HEAP_SIZE, PAGE_SIZE); i++) - map_addr(HEAP_START_ADDR + i * PAGE_SIZE, HEAP_START_ADDR + i * PAGE_SIZE, FLAG_PRESENT + FLAG_WRITABLE + FLAG_HUGE); + map_addr(HEAP_VMEM_ADDR + i * PAGE_SIZE, HEAP_PMEM_ADDR + i * PAGE_SIZE, FLAG_PRESENT + FLAG_WRITABLE + FLAG_HUGE); - kheap_add_block(&main_kheap, HEAP_START_ADDR, HEAP_SIZE, HEAP_BLOCK_SIZE); + kheap_add_block(&main_kheap, HEAP_VMEM_ADDR, HEAP_SIZE, HEAP_BLOCK_SIZE); } diff --git a/kernel/src/mem/paging.c b/kernel/src/mem/paging.c index cd1cb68..531c300 100644 --- a/kernel/src/mem/paging.c +++ b/kernel/src/mem/paging.c @@ -62,7 +62,7 @@ void init_paging(void) void page_fault(uint64_t error) { uint64_t addr; - __asm__ volatile ("mov %%cr2, %0" : "=r"(addr) : : "memory"); + __asm__ volatile ("mov %%cr2, %0;" : "=r"(addr) : : "memory"); map_addr(addr, addr, FLAG_PRESENT | FLAG_WRITABLE | FLAG_HUGE); |
