suyu/src/core/hle/kernel
Lioncash 1e92ba2785 kernel/vm_manager: Handle shrinking of the heap size within SetHeapSize()
One behavior that we weren't handling properly in our heap allocation
process was the ability for the heap to be shrunk down in size if a
larger size was previously requested.

This adds the basic behavior to do so and also gets rid of HeapFree, as
it's no longer necessary now that we have allocations and deallocations
going through the same API function.

While we're at it, fully document the behavior that this function
performs.
2019-03-24 17:08:30 -04:00
..
address_arbiter.cpp kernel/svc: Move address arbiter signaling behind a unified API function 2019-03-07 23:27:47 -05:00
address_arbiter.h kernel: Make the address arbiter instance per-process 2019-03-07 23:27:51 -05:00
client_port.cpp kernel/server_port: Make data members private 2019-03-11 10:41:05 -04:00
client_port.h Added forward define for ServerPort 2018-10-06 17:47:33 +10:00
client_session.cpp kernel/server_session: Make data members private 2019-03-05 20:10:07 -05:00
client_session.h kernel/client_session: Make data members private 2019-03-05 20:10:03 -05:00
code_set.cpp kernel: Move CodeSet structure to its own source files 2019-03-20 13:07:04 -04:00
code_set.h kernel: Move CodeSet structure to its own source files 2019-03-20 13:07:04 -04:00
errors.h kernel/handle_table: Allow process capabilities to limit the handle table size 2019-02-25 11:12:32 -05:00
handle_table.cpp kernel/handle_table: Make local variables as const where applicable 2019-02-25 11:12:38 -05:00
handle_table.h kernel/handle_table: Allow process capabilities to limit the handle table size 2019-02-25 11:12:32 -05:00
hle_ipc.cpp kernel/hle_ipc: Convert std::shared_ptr IPC header instances to std::optional 2019-03-07 23:34:37 -05:00
hle_ipc.h kernel/hle_ipc: Convert std::shared_ptr IPC header instances to std::optional 2019-03-07 23:34:37 -05:00
kernel.cpp kernel: Make the address arbiter instance per-process 2019-03-07 23:27:51 -05:00
kernel.h kernel: Make the address arbiter instance per-process 2019-03-07 23:27:51 -05:00
mutex.cpp core/hle/kernel/mutex: Remove usages of global system accessors 2019-03-14 20:55:52 -04:00
mutex.h core/hle/kernel: Make Mutex a per-process class. 2019-03-14 20:55:52 -04:00
object.cpp kernel: Remove the Timer class 2019-01-31 23:05:15 -05:00
object.h kernel: Remove the Timer class 2019-01-31 23:05:15 -05:00
process.cpp Merge pull request #2234 from lioncash/mutex 2019-03-21 22:18:36 -04:00
process.h Merge pull request #2234 from lioncash/mutex 2019-03-21 22:18:36 -04:00
process_capability.cpp kernel/handle_table: Allow process capabilities to limit the handle table size 2019-02-25 11:12:32 -05:00
process_capability.h kernel/handle_table: Allow process capabilities to limit the handle table size 2019-02-25 11:12:32 -05:00
readable_event.cpp kernel/readable_event: Remove unnecessary WakeupAllWaitingThreads() override 2019-01-30 12:45:00 -05:00
readable_event.h kernel/readable_event: Remove unnecessary WakeupAllWaitingThreads() override 2019-01-30 12:45:00 -05:00
resource_limit.cpp kernel/resource_limit: Clean up interface 2018-11-19 18:16:39 -05:00
resource_limit.h svc: Implement svcGetResourceLimitLimitValue() 2018-11-26 21:12:13 -05:00
scheduler.cpp core: Move PageTable struct into Common. 2019-03-16 22:05:40 -04:00
scheduler.h kernel/scheduler: Pass in system instance in constructor 2019-03-04 17:01:37 -05:00
server_port.cpp kernel/server_port: Make data members private 2019-03-11 10:41:05 -04:00
server_port.h kernel/server_port: Make data members private 2019-03-11 10:41:05 -04:00
server_session.cpp kernel/hle_ipc: Convert std::shared_ptr IPC header instances to std::optional 2019-03-07 23:34:37 -05:00
server_session.h kernel/server_session: Make data members private 2019-03-05 20:10:07 -05:00
session.cpp Format: Run the new clang format on everything 2018-01-20 16:45:11 -07:00
session.h kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
shared_memory.cpp kernel/shared_memory: Get rid of the use of global accessor functions within Create() 2019-03-04 16:52:36 -05:00
shared_memory.h Fix Process object leak on emulation stop 2018-12-12 17:25:56 +01:00
svc.cpp kernel/vm_manager: Rename HeapAllocate to SetHeapSize 2019-03-24 17:08:30 -04:00
svc.h vm_manager: Migrate MemoryInfo and PageInfo to vm_manager.h 2018-12-12 14:03:53 -05:00
svc_wrap.h kernel/svc: Correct output parameter for svcGetProcessId 2018-12-18 22:30:56 -05:00
thread.cpp Fix crash caused by 2238. 2019-03-19 22:45:34 -04:00
thread.h Merge pull request #2238 from lioncash/thread 2019-03-17 22:27:33 -04:00
vm_manager.cpp kernel/vm_manager: Handle shrinking of the heap size within SetHeapSize() 2019-03-24 17:08:30 -04:00
vm_manager.h kernel/vm_manager: Handle shrinking of the heap size within SetHeapSize() 2019-03-24 17:08:30 -04:00
wait_object.cpp core/kernel: Remove unnecessary inclusions 2018-12-31 19:04:16 -05:00
wait_object.h kernel/wait_object: Devirtualize functions related to manipulating the thread list directly 2019-01-30 12:50:37 -05:00
writable_event.cpp hle_ipc: Refactor SleepClientThread to avoid ReadableEvent 2018-11-29 09:14:20 -05:00
writable_event.h core/kernel: Remove unnecessary inclusions 2018-12-31 19:04:16 -05:00