diff options
Diffstat (limited to 'kernel/vmem.c')
| -rw-r--r-- | kernel/vmem.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/vmem.c b/kernel/vmem.c index 0a9e4b1..0cea40b 100644 --- a/kernel/vmem.c +++ b/kernel/vmem.c @@ -254,7 +254,7 @@ uint32_t vmem_alloc_block_at(uint32_t virt_addr) */ // vmem init and also copies all the shit for FORK -volatile int vmem_new_space_dir() +volatile int vmem_new_space_dir(int copy_dir) { x86_paging_disable(); @@ -319,7 +319,7 @@ volatile int vmem_new_space_dir() { ptable* table = (ptable*) pmmngr_alloc_block (); - pd_entry *oldentry= &(page_dirs[0]->m_entries[PAGE_DIRECTORY_INDEX(virt_addr)]); + pd_entry *oldentry= &(page_dirs[copy_dir]->m_entries[PAGE_DIRECTORY_INDEX(virt_addr)]); ptable* oldtable=pd_entry_get_frame(oldentry); log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"oldtable at: 0x%08X",oldtable); @@ -381,7 +381,7 @@ void vmem_init() { //log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"init paging (vesa base: 0x%08x)",vesa_physbase); log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"init paging"); - vmem_set_dir(vmem_new_space_dir()); + vmem_set_dir(vmem_new_space_dir(0)); x86_paging_enable(); } |
