From ce03dff9d6dca32b352d987451519098b208ab2a Mon Sep 17 00:00:00 2001 From: Baptiste Wicht Date: Sat, 25 Jan 2014 22:49:47 +0100 Subject: [PATCH] Fix small bug --- kernel/src/shell.cpp | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/kernel/src/shell.cpp b/kernel/src/shell.cpp index 4c164f08..357cc7ac 100644 --- a/kernel/src/shell.cpp +++ b/kernel/src/shell.cpp @@ -780,16 +780,14 @@ bool allocate_user_memory(scheduler::process_t& process, size_t address, size_t } void clear_physical_memory(size_t memory, size_t pages){ - auto virt = virtual_allocator::allocate(1); + auto virt = virtual_allocator::allocate(pages); - for(size_t page = 0; page < pages; ++page){ - paging::map(virt, memory); + paging::map_pages(virt, memory, pages); - auto it = reinterpret_cast(virt); - std::fill_n(it, (pages * paging::PAGE_SIZE) / sizeof(uint64_t), 0); + auto it = reinterpret_cast(virt); + std::fill_n(it, (pages * paging::PAGE_SIZE) / sizeof(uint64_t), 0); - paging::unmap(virt); - } + paging::unmap_pages(virt, pages); //TODO virt should be deallocated }