diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-11-24 03:02:43 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@nekernel.org> | 2025-11-24 03:02:43 +0100 |
| commit | 83d870e58457a1d335a1d9b9966a6a1887cc297b (patch) | |
| tree | 72888f88c7728c82f3f6df1f4f70591de15eab36 /dev/kernel/KernelKit/UserProcessScheduler.inl | |
| parent | ab37adbacf0f33845804c788b39680cd754752a8 (diff) | |
feat! breaking changes on kernel sources.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'dev/kernel/KernelKit/UserProcessScheduler.inl')
| -rw-r--r-- | dev/kernel/KernelKit/UserProcessScheduler.inl | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/dev/kernel/KernelKit/UserProcessScheduler.inl b/dev/kernel/KernelKit/UserProcessScheduler.inl deleted file mode 100644 index 3d3659d6..00000000 --- a/dev/kernel/KernelKit/UserProcessScheduler.inl +++ /dev/null @@ -1,64 +0,0 @@ -/* ======================================== - - Copyright (C) 2024-2025, Amlal El Mahrouss, licensed under the Apache 2.0 license. - - FILE: UserProcessScheduler.inl - PURPOSE: Low level/Ring-3 process scheduler. - -======================================== */ - -/// @brief USER_PROCESS inline definitions. -/// @author Amlal El Mahrouss (amlal@nekernel.org) -/// @date Tue Apr 22 22:01:07 CEST 2025 - -#ifndef INC_PROCESS_SCHEDULER_H -#include <KernelKit/UserProcessScheduler.h> -#endif // INC_PROCESS_SCHEDULER_H - -namespace Kernel { -/***********************************************************************************/ -/** @brief Free pointer/file from usage. */ -/***********************************************************************************/ - -template <typename T> -BOOL USER_PROCESS::Delete(ErrorOr<T*> ptr) { - if (!ptr) return No; - - if (!this->HeapTree) { - kout << "USER_PROCESS's heap is empty.\r"; - return No; - } - - PROCESS_HEAP_TREE<VoidPtr>* entry = this->HeapTree; - - while (entry != nullptr) { - if (entry->Entry == ptr.Leak().Leak()) { - this->UsedMemory -= entry->EntrySize; - -#ifdef __NE_AMD64__ - auto pd = hal_read_cr3(); - - hal_write_cr3(this->VMRegister); - - auto ret = mm_free_ptr(entry->Entry); - - hal_write_cr3(pd); - - return ret == kErrorSuccess; -#else - Bool ret = mm_free_ptr(ptr.Leak().Leak()); - - return ret == kErrorSuccess; -#endif - } - - entry = entry->Next; - } - - kout << "USER_PROCESS: Trying to free a pointer which doesn't exist.\r"; - - this->Crash(); - - return No; -} -} // namespace Kernel |
