diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-06-18 17:56:12 +0200 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@nekernel.org> | 2025-06-18 17:56:12 +0200 |
| commit | c50ae11abc23c0ea5d79fd7044273685c73990d1 (patch) | |
| tree | e324ffed2ffda2c22c4555b9e28a28ecebdc6b23 /dev/kernel/HALKit/AMD64/HalPagingMgr.cc | |
| parent | a5cae885d3f714897ae175cc8643fbbd5573dc22 (diff) | |
feat: level based virtual memory mapping for NeKernel's paging system.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'dev/kernel/HALKit/AMD64/HalPagingMgr.cc')
| -rw-r--r-- | dev/kernel/HALKit/AMD64/HalPagingMgr.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/dev/kernel/HALKit/AMD64/HalPagingMgr.cc b/dev/kernel/HALKit/AMD64/HalPagingMgr.cc index 048cb7c2..ced4f268 100644 --- a/dev/kernel/HALKit/AMD64/HalPagingMgr.cc +++ b/dev/kernel/HALKit/AMD64/HalPagingMgr.cc @@ -117,9 +117,12 @@ EXTERN_C Int32 mm_memory_fence(VoidPtr virtual_address) { /// @param flags the flags to put on the page. /// @return Status code of page manipulation process. /***********************************************************************************/ -EXTERN_C Int32 mm_map_page(VoidPtr virtual_address, VoidPtr physical_address, UInt32 flags) { +EXTERN_C Int32 mm_map_page(VoidPtr virtual_address, VoidPtr physical_address, UInt32 flags, + UInt32 level) { if (physical_address == 0) return kErrorInvalidData; + NE_UNUSED(level); /// @todo support PML4, and PDPT levels. + const UInt64 kVMAddr = (UInt64) virtual_address; constexpr UInt64 kMask9 = 0x1FF; constexpr UInt64 kPageMask = 0xFFF; |
