summaryrefslogtreecommitdiff
path: root/src/core/hle/kernel
diff options
context:
space:
mode:
authorGravatar bunnei2018-03-14 22:08:15 -0400
committerGravatar bunnei2018-03-16 18:32:23 -0400
commit8581404482e31b6ef6adc522b303baddaec760ec (patch)
tree816e82fbebfd41fbc55435b63b58fd5f50342b53 /src/core/hle/kernel
parentmemory: Add regions for map region, "new" map region, etc. (diff)
downloadyuzu-8581404482e31b6ef6adc522b303baddaec760ec.tar.gz
yuzu-8581404482e31b6ef6adc522b303baddaec760ec.tar.xz
yuzu-8581404482e31b6ef6adc522b303baddaec760ec.zip
kernel: Move stack region outside of application heap.
Diffstat (limited to 'src/core/hle/kernel')
-rw-r--r--src/core/hle/kernel/kernel.h4
-rw-r--r--src/core/hle/kernel/process.cpp5
-rw-r--r--src/core/hle/kernel/thread.cpp2
3 files changed, 3 insertions, 8 deletions
diff --git a/src/core/hle/kernel/kernel.h b/src/core/hle/kernel/kernel.h
index c77e58f3c..053bf4e17 100644
--- a/src/core/hle/kernel/kernel.h
+++ b/src/core/hle/kernel/kernel.h
@@ -33,10 +33,6 @@ enum class HandleType : u32 {
33 ServerSession, 33 ServerSession,
34}; 34};
35 35
36enum {
37 DEFAULT_STACK_SIZE = 0x10000,
38};
39
40enum class ResetType { 36enum class ResetType {
41 OneShot, 37 OneShot,
42 Sticky, 38 Sticky,
diff --git a/src/core/hle/kernel/process.cpp b/src/core/hle/kernel/process.cpp
index 8987a0e38..5711b5247 100644
--- a/src/core/hle/kernel/process.cpp
+++ b/src/core/hle/kernel/process.cpp
@@ -121,9 +121,8 @@ void Process::Run(VAddr entry_point, s32 main_thread_priority, u32 stack_size) {
121 // TODO(bunnei): This is heap area that should be allocated by the kernel and not mapped as part 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. 122 // of the user address space.
123 vm_manager 123 vm_manager
124 .MapMemoryBlock(Memory::HEAP_VADDR_END - stack_size, 124 .MapMemoryBlock(Memory::STACK_VADDR, std::make_shared<std::vector<u8>>(stack_size, 0), 0,
125 std::make_shared<std::vector<u8>>(stack_size, 0), 0, stack_size, 125 stack_size, MemoryState::Mapped)
126 MemoryState::Mapped)
127 .Unwrap(); 126 .Unwrap();
128 misc_memory_used += stack_size; 127 misc_memory_used += stack_size;
129 memory_region->used += stack_size; 128 memory_region->used += stack_size;
diff --git a/src/core/hle/kernel/thread.cpp b/src/core/hle/kernel/thread.cpp
index 419ad1e63..a39c53db5 100644
--- a/src/core/hle/kernel/thread.cpp
+++ b/src/core/hle/kernel/thread.cpp
@@ -357,7 +357,7 @@ SharedPtr<Thread> SetupMainThread(VAddr entry_point, u32 priority,
357 357
358 // Initialize new "main" thread 358 // Initialize new "main" thread
359 auto thread_res = Thread::Create("main", entry_point, priority, 0, THREADPROCESSORID_0, 359 auto thread_res = Thread::Create("main", entry_point, priority, 0, THREADPROCESSORID_0,
360 Memory::HEAP_VADDR_END, owner_process); 360 Memory::STACK_VADDR_END, owner_process);
361 361
362 SharedPtr<Thread> thread = std::move(thread_res).Unwrap(); 362 SharedPtr<Thread> thread = std::move(thread_res).Unwrap();
363 363