summaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/kernel.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hle/kernel/kernel.h')
-rw-r--r--src/core/hle/kernel/kernel.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/core/hle/kernel/kernel.h b/src/core/hle/kernel/kernel.h
index c1254b18d..d4306d5ef 100644
--- a/src/core/hle/kernel/kernel.h
+++ b/src/core/hle/kernel/kernel.h
@@ -43,6 +43,7 @@ class KHandleTable;
43class KLinkedListNode; 43class KLinkedListNode;
44class KMemoryLayout; 44class KMemoryLayout;
45class KMemoryManager; 45class KMemoryManager;
46class KPageBuffer;
46class KPort; 47class KPort;
47class KProcess; 48class KProcess;
48class KResourceLimit; 49class KResourceLimit;
@@ -52,6 +53,7 @@ class KSession;
52class KSharedMemory; 53class KSharedMemory;
53class KSharedMemoryInfo; 54class KSharedMemoryInfo;
54class KThread; 55class KThread;
56class KThreadLocalPage;
55class KTransferMemory; 57class KTransferMemory;
56class KWorkerTaskManager; 58class KWorkerTaskManager;
57class KWritableEvent; 59class KWritableEvent;
@@ -239,12 +241,6 @@ public:
239 /// Gets the virtual memory manager for the kernel. 241 /// Gets the virtual memory manager for the kernel.
240 const KMemoryManager& MemoryManager() const; 242 const KMemoryManager& MemoryManager() const;
241 243
242 /// Gets the slab heap allocated for user space pages.
243 KSlabHeap<Page>& GetUserSlabHeapPages();
244
245 /// Gets the slab heap allocated for user space pages.
246 const KSlabHeap<Page>& GetUserSlabHeapPages() const;
247
248 /// Gets the shared memory object for HID services. 244 /// Gets the shared memory object for HID services.
249 Kernel::KSharedMemory& GetHidSharedMem(); 245 Kernel::KSharedMemory& GetHidSharedMem();
250 246
@@ -336,6 +332,10 @@ public:
336 return slab_heap_container->writeable_event; 332 return slab_heap_container->writeable_event;
337 } else if constexpr (std::is_same_v<T, KCodeMemory>) { 333 } else if constexpr (std::is_same_v<T, KCodeMemory>) {
338 return slab_heap_container->code_memory; 334 return slab_heap_container->code_memory;
335 } else if constexpr (std::is_same_v<T, KPageBuffer>) {
336 return slab_heap_container->page_buffer;
337 } else if constexpr (std::is_same_v<T, KThreadLocalPage>) {
338 return slab_heap_container->thread_local_page;
339 } 339 }
340 } 340 }
341 341
@@ -397,6 +397,8 @@ private:
397 KSlabHeap<KTransferMemory> transfer_memory; 397 KSlabHeap<KTransferMemory> transfer_memory;
398 KSlabHeap<KWritableEvent> writeable_event; 398 KSlabHeap<KWritableEvent> writeable_event;
399 KSlabHeap<KCodeMemory> code_memory; 399 KSlabHeap<KCodeMemory> code_memory;
400 KSlabHeap<KPageBuffer> page_buffer;
401 KSlabHeap<KThreadLocalPage> thread_local_page;
400 }; 402 };
401 403
402 std::unique_ptr<SlabHeapContainer> slab_heap_container; 404 std::unique_ptr<SlabHeapContainer> slab_heap_container;