citra-canary/src/core/hle/kernel
Subv c9c1ba0952 Kernel/IPC: Implement StaticBuffer translation for HLE services that use the HLERequestContext architecture.
The real kernel requires services to set up their static buffer targets ahead of time. This implementation does not require that and will simply create the storage for the buffers as they are processed in the incoming IPC request.

Static buffers are kept in an unordered_map keyed by their buffer id, and are written into the already-setup area of the request thread when responding an IPC request.

This fixes a regression (crash) introduced in #2992.

This PR introduces more warnings due to the [[deprecated]] attribute being added to void PushStaticBuffer(VAddr buffer_vaddr, size_t size, u8 buffer_id); and VAddr PopStaticBuffer(size_t* data_size);
2017-11-12 11:00:00 -05:00
..
address_arbiter.cpp core: clear format warnings 2017-11-01 12:35:32 +02:00
address_arbiter.h Kernel: Move HandleTable to a separate file 2017-05-29 17:34:39 -07:00
client_port.cpp Kernel: Add a dedicated SetHleHandler method to ServerPort/ServerSession 2017-06-06 02:56:32 -07:00
client_port.h Kernel: Move HandleTable to a separate file 2017-05-29 17:34:39 -07:00
client_session.cpp Kernel/SVC: Pass the current thread as a parameter to ClientSession::SendSyncRequest. 2017-06-29 12:30:34 -05:00
client_session.h Kernel/SVC: Pass the current thread as a parameter to ClientSession::SendSyncRequest. 2017-06-29 12:30:34 -05:00
errors.h Kernel/SVC: Don't let svcReleaseMutex release a mutex owned by another thread. 2017-11-04 10:05:18 -05:00
event.cpp Merge pull request #2397 from Subv/pulse 2017-01-10 10:45:00 -05:00
event.h Kernel: Move WaitObject to a separate file 2017-05-29 16:16:46 -07:00
handle_table.cpp Kernel: Move HandleTable to a separate file 2017-05-29 17:34:39 -07:00
handle_table.h Kernel: Move HandleTable to a separate file 2017-05-29 17:34:39 -07:00
hle_ipc.cpp Kernel/IPC: Implement StaticBuffer translation for HLE services that use the HLERequestContext architecture. 2017-11-12 11:00:00 -05:00
hle_ipc.h Kernel/IPC: Implement StaticBuffer translation for HLE services that use the HLERequestContext architecture. 2017-11-12 11:00:00 -05:00
kernel.cpp Kernel: Move HandleTable to a separate file 2017-05-29 17:34:39 -07:00
kernel.h Merge pull request #2839 from Subv/global_kernel_lock 2017-08-23 18:17:44 -06:00
memory.cpp Kernel/Memory: Changed GetPhysicalPointer so that it doesn't go through the current process' page table to obtain a pointer. 2017-09-15 14:26:13 -05:00
memory.h Kernel/Memory: Changed GetPhysicalPointer so that it doesn't go through the current process' page table to obtain a pointer. 2017-09-15 14:26:13 -05:00
mutex.cpp Kernel/SVC: Don't let svcReleaseMutex release a mutex owned by another thread. 2017-11-04 10:05:18 -05:00
mutex.h Kernel/SVC: Don't let svcReleaseMutex release a mutex owned by another thread. 2017-11-04 10:05:18 -05:00
process.cpp Kernel/Thread: Allow specifying which process a thread belongs to when creating it. 2017-09-26 17:40:49 -05:00
process.h Kernel: Map special regions according to ExHeader 2017-05-09 21:44:00 -07:00
resource_limit.cpp Fixed type conversion ambiguity 2017-09-30 09:34:35 +01:00
resource_limit.h Fixed type conversion ambiguity 2017-09-30 09:34:35 +01:00
semaphore.cpp Kernel: Centralize error definitions in errors.h 2017-05-24 21:06:00 -07:00
semaphore.h Kernel: Move HandleTable to a separate file 2017-05-29 17:34:39 -07:00
server_port.cpp Kernel: Implement AcceptSession SVC 2017-06-23 11:26:37 -07:00
server_port.h Kernel: Implement AcceptSession SVC 2017-06-23 11:26:37 -07:00
server_session.cpp Merge pull request #2793 from Subv/replyandreceive 2017-06-29 17:05:22 -05:00
server_session.h Kernel/ServerSession: Keep track of which threads have issued sync requests. 2017-06-25 14:47:25 -05:00
session.cpp Manually tweak source formatting and then re-run clang-format 2016-09-18 21:14:25 -07:00
session.h Kernel: Use a Session object to keep track of the status of a Client/Server session pair. 2017-05-15 11:22:15 -05:00
shared_memory.cpp Kernel/SharedMemory: Don't take over and unmap the source memory block when creating a shared memory, just reference it. 2017-10-02 15:16:16 -05:00
shared_memory.h Fixed type conversion ambiguity 2017-09-30 09:34:35 +01:00
thread.cpp Merge pull request #2971 from Subv/per_process_memops 2017-10-01 14:44:06 -05:00
thread.h Merge pull request #2971 from Subv/per_process_memops 2017-10-01 14:44:06 -05:00
timer.cpp ResultVal: Remove MoveFrom() 2017-06-18 19:03:15 -07:00
timer.h Kernel: Move WaitObject to a separate file 2017-05-29 16:16:46 -07:00
vm_manager.cpp Kernel/Memory: Give each Process its own page table. 2017-09-10 15:13:41 -05:00
vm_manager.h Kernel/Memory: Give each Process its own page table. 2017-09-10 15:13:41 -05:00
wait_object.cpp Merge pull request #2967 from Subv/thread_wakeup_callbacks 2017-09-30 09:12:18 -05:00
wait_object.h Kernel: Move WaitObject to a separate file 2017-05-29 16:16:46 -07:00