aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/hle_ipc.cpp
Commit message (Collapse)AuthorAgeFilesLines
* service: move hle_ipc from kernelLiam2023-03-011-531/+0
|
* service: refactor server architectureLiam2023-02-211-24/+6
| | | | Converts services to have their own processes
* Revert "Merge pull request #9718 from yuzu-emu/revert-9508-hle-ipc-buffer-span"ameerj2023-02-031-1/+29
| | | | | This reverts commit 153fa289d219c37f8344bccfdf67edc6e579d8c8, reversing changes made to 20676b3b5a1a613af4e498c7cbfdc456339d85a0.
* Revert "hle_ipc: Use std::span to avoid heap allocations/copies when calling ↵liamwhite2023-02-021-29/+1
| | | | ReadBuffer"
* hle_ipc: Use thread_local ReadBufferameerj2022-12-281-4/+14
|
* hle_ipc: Rename ReadBufferSpan to ReadBufferameerj2022-12-281-1/+1
|
* hle_ipc: Rename ReadBuffer to ReadBufferCopyameerj2022-12-281-1/+1
| | | | Indicates explicitly that a copy is occurring
* service: Use ReadBufferSpan where it is trivial to do soameerj2022-12-251-1/+0
|
* hle_ipc: Add ReadBufferSpan functionameerj2022-12-251-0/+19
| | | | Returns a std::span to the buffer address, rather than create a copy of the memory into a std::vector
* Merge pull request #9452 from ameerj/hle-read-buffer-resreveliamwhite2022-12-171-8/+6
|\ | | | | hle_ipc: Refactor ReadBuffer to set buffer size upon initialization
| * hle_ipc: Refactor ReadBuffer to set buffer size upon initializationameerj2022-12-151-8/+6
| | | | | | | | Initializing the vector size during initialization is more efficient than a later call to resize()
* | hle_ipc: Reserve vectors before populatingameerj2022-12-151-0/+8
|/
* service_thread: fix deletionLiam2022-11-061-9/+5
|
* kernel: invert session request handling flowLiam2022-10-311-33/+22
|
* kernel: remove most SessionRequestManager handling from KServerSessionLiam2022-10-191-11/+99
|
* Project AndioKelebek12022-07-221-2/+36
|
* core: Replace all instances of ResultCode with Resultgerman772022-06-261-3/+3
|
* general: Convert source file copyright comments over to SPDXMorph2022-04-231-3/+2
| | | | | This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
* hle: kernel: Unify and integrate reference tracking for ↵bunnei2022-04-081-0/+3
| | | | | | KServerPort/KServerSession. - These are not managed elsewhere, and need to be tracked and closed on emulation shutdown.
* hle: kernel: hle_ipc: HasSessionRequestHandler: Check if domain handler is ↵bunnei2022-04-081-1/+1
| | | | expired rather than locking.
* hle: service: Add option for service interfaces to create or use the default ↵bunnei2022-04-021-2/+9
| | | | thread.
* core: Reduce unused includesameerj2022-03-191-1/+0
|
* core: hle: kernel: Remove server session tracking.bunnei2022-03-141-3/+0
| | | | - These are now allocated/managed by emulated memory, so we do not need to track and free them on shutdown.
* core: hle: kernel: Use weak_ptr where possible for SessionRequestHandler and ↵bunnei2022-03-141-1/+1
| | | | SessionRequestManager.
* core: Remove unused includesameerj2021-11-031-6/+0
|
* kernel: hle_ipc: Foward declare KAutoObjectMorph2021-10-071-0/+1
|
* hle: kernel: Track and release server sessions, and protect methods with locks.bunnei2021-07-201-0/+3
|
* hle: kernel: KServerSession: Fix client disconnected.bunnei2021-06-091-2/+2
| | | | | - Prevents a cloned session's handler from being overwritten by another disconnected session. - Fixes session handler nullptr asserts with Pokemon Sword & Shield.
* hle: kernel: hle_ipc: Ensure SessionRequestHandler is valid.bunnei2021-06-071-0/+15
|
* hle: kernel: hle_ipc: Use default destructor for SessionRequestManager.bunnei2021-06-061-1/+1
|
* hle: kernel: Refactor to allocate a ServiceThread per service handler.bunnei2021-06-041-2/+9
| | | | | | - Previously, we would allocate a thread per session, which adds new threads on CloneCurrentObject. - This results in race conditions with N sessions queuing requests to the same service interface. - Fixes Pokken Tournament DX crashes/softlocks, which were regressed by #6347.
* general: Replace RESULT_SUCCESS with ResultSuccessMorph2021-06-021-3/+3
| | | | Transition to PascalCase for result names.
* hle: kernel: hle_ipc: Simplify incoming/outgoing move/copy/domain objects.bunnei2021-05-201-10/+6
|
* hle: kernel: Implement CloneCurrentObject and improve session management.bunnei2021-05-201-16/+4
|
* hle_ipc: unsigned -> u32Morph2021-05-161-7/+7
| | | | This is more concise and consistent with the rest of the codebase.
* hle_ipc: Add a getter for PIDMorph2021-05-161-1/+1
|
* hle: kernel: hle_ipc: Fix outgoing IPC response size calculation.bunnei2021-05-111-1/+13
|
* hle: kernel: hle_ipc: Improve IPC code and add initial support for TIPC.bunnei2021-05-101-80/+55
| | | | | - Fixes our move handles implementation to actually move objects. - Simplifies the traditional IPC path.
* hle: kernel: Further cleanup and add TIPC helpers.bunnei2021-05-101-1/+1
|
* kernel: Eliminate variable shadowingLioncash2021-05-081-4/+4
| | | | | Now that the large kernel refactor is merged, we can eliminate the remaining variable shadowing cases.
* hle: kernel: Migrate to KHandleTable.bunnei2021-05-051-3/+3
|
* hle: kernel: Rename Process to KProcess.bunnei2021-05-051-1/+1
|
* hle: kernel: Remove deprecated Object class.bunnei2021-05-051-1/+0
|
* hle: kernel: Migrate KPort, KClientPort, and KServerPort to KAutoObject.bunnei2021-05-051-6/+4
|
* hle: kernel: HandleTable: Remove deprecated APIs.bunnei2021-05-051-4/+4
|
* hle: kernel: Migrate KSession, KClientSession, and KServerSession to ↵bunnei2021-05-051-14/+9
| | | | KAutoObject.
* hle: kernel: Migrate KSharedMemory to KAutoObject.bunnei2021-05-051-2/+2
|
* hle: kernel: Refactor IPC interfaces to not use std::shared_ptr.bunnei2021-05-051-5/+7
|
* hle: kernel: Refactor out various KThread std::shared_ptr usage.bunnei2021-05-051-5/+5
|
* hle_ipc: Add helper functions to get copy/move handlesMorph2021-04-151-2/+6
|