diff options
Diffstat (limited to 'src/core/hle/kernel/process.cpp')
| -rw-r--r-- | src/core/hle/kernel/process.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/core/hle/kernel/process.cpp b/src/core/hle/kernel/process.cpp index 9c0a44351..8987a0e38 100644 --- a/src/core/hle/kernel/process.cpp +++ b/src/core/hle/kernel/process.cpp | |||
| @@ -117,11 +117,13 @@ void Process::ParseKernelCaps(const u32* kernel_caps, size_t len) { | |||
| 117 | } | 117 | } |
| 118 | 118 | ||
| 119 | void Process::Run(VAddr entry_point, s32 main_thread_priority, u32 stack_size) { | 119 | void Process::Run(VAddr entry_point, s32 main_thread_priority, u32 stack_size) { |
| 120 | // Allocate and map stack | 120 | // Allocate and map the main thread stack |
| 121 | // TODO(bunnei): This is heap area that should be allocated by the kernel and not mapped as part | ||
| 122 | // of the user address space. | ||
| 121 | vm_manager | 123 | vm_manager |
| 122 | .MapMemoryBlock(Memory::HEAP_VADDR_END - stack_size, | 124 | .MapMemoryBlock(Memory::HEAP_VADDR_END - stack_size, |
| 123 | std::make_shared<std::vector<u8>>(stack_size, 0), 0, stack_size, | 125 | std::make_shared<std::vector<u8>>(stack_size, 0), 0, stack_size, |
| 124 | MemoryState::Heap) | 126 | MemoryState::Mapped) |
| 125 | .Unwrap(); | 127 | .Unwrap(); |
| 126 | misc_memory_used += stack_size; | 128 | misc_memory_used += stack_size; |
| 127 | memory_region->used += stack_size; | 129 | memory_region->used += stack_size; |