summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/KernelKit/UserProcessScheduler.inl
diff options
context:
space:
mode:
Diffstat (limited to 'dev/kernel/KernelKit/UserProcessScheduler.inl')
-rw-r--r--dev/kernel/KernelKit/UserProcessScheduler.inl18
1 files changed, 11 insertions, 7 deletions
diff --git a/dev/kernel/KernelKit/UserProcessScheduler.inl b/dev/kernel/KernelKit/UserProcessScheduler.inl
index 2333b898..df35e037 100644
--- a/dev/kernel/KernelKit/UserProcessScheduler.inl
+++ b/dev/kernel/KernelKit/UserProcessScheduler.inl
@@ -11,13 +11,17 @@
/// @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 from usage. */
/***********************************************************************************/
template <typename T>
-Boolean USER_PROCESS::Delete(ErrorOr<T*> ptr) {
+BOOL USER_PROCESS::Delete(ErrorOr<T*> ptr) {
if (!ptr) return No;
if (!this->HeapTree) {
@@ -25,30 +29,30 @@ Boolean USER_PROCESS::Delete(ErrorOr<T*> ptr) {
return No;
}
- USER_HEAP_TREE* entry = this->HeapTree;
+ PROCESS_HEAP_TREE<VoidPtr>* entry = this->HeapTree;
while (entry != nullptr) {
- if (entry->MemoryEntry == ptr.Leak().Leak()) {
- this->UsedMemory -= entry->MemoryEntrySize;
+ 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_delete_heap(entry->MemoryEntry);
+ auto ret = mm_free_ptr(entry->Entry);
hal_write_cr3(pd);
return ret == kErrorSuccess;
#else
- Bool ret = mm_delete_heap(ptr.Leak().Leak());
+ Bool ret = mm_free_ptr(ptr.Leak().Leak());
return ret == kErrorSuccess;
#endif
}
- entry = entry->MemoryNext;
+ entry = entry->Next;
}
kout << "USER_PROCESS: Trying to free a pointer which doesn't exist.\r";