From ef101c1852301f828531ee1e2217fc64bf26bd12 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Fri, 14 Mar 2025 21:42:49 +0100 Subject: Kernel: Patch UserProcess::Delete, and AHCI identify command. Signed-off-by: Amlal El Mahrouss --- dev/Kernel/KernelKit/UserProcessScheduler.inl | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'dev/Kernel/KernelKit/UserProcessScheduler.inl') diff --git a/dev/Kernel/KernelKit/UserProcessScheduler.inl b/dev/Kernel/KernelKit/UserProcessScheduler.inl index ecb668fe..6b3b9300 100644 --- a/dev/Kernel/KernelKit/UserProcessScheduler.inl +++ b/dev/Kernel/KernelKit/UserProcessScheduler.inl @@ -19,6 +19,12 @@ namespace NeOS if (!ptr) return No; + if (!this->ProcessMemoryHeap) + { + kout << "Process Memory is empty.\r"; + return No; + } + ProcessMemoryHeapList* entry = this->ProcessMemoryHeap; while (entry != nullptr) @@ -29,16 +35,18 @@ namespace NeOS #ifdef __NE_AMD64__ auto pd = hal_read_cr3(); + hal_write_cr3(this->VMRegister); auto ret = mm_delete_heap(entry->MemoryEntry); hal_write_cr3(pd); - return ret; + return ret == kErrorSuccess; #else Bool ret = mm_delete_heap(ptr.Leak().Leak()); - return ret; + + return ret == kErrorSuccess; #endif } -- cgit v1.2.3