diff options
| author | bunnei <bunneidev@gmail.com> | 2018-02-18 14:11:34 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-02-18 14:11:34 -0500 |
| commit | ec39c9eb321e88697448091b95842adb18cb485f (patch) | |
| tree | 49cd0eb8264d5ac6eb47179b41c83848f25078a9 /src/core/hle/kernel/server_session.h | |
| parent | 5babad5de58869414b767c7f1ee5e37463ea46a8 (diff) | |
| parent | 94ee8fc97b6e3373d801d70efdd1b604ad03b85e (diff) | |
Merge pull request #201 from Subv/ipc_delay_
Kernel/IPC: Add a small delay after each SyncRequest to prevent thread starvation.
Diffstat (limited to 'src/core/hle/kernel/server_session.h')
| -rw-r--r-- | src/core/hle/kernel/server_session.h | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/src/core/hle/kernel/server_session.h b/src/core/hle/kernel/server_session.h index 144692106..2da807042 100644 --- a/src/core/hle/kernel/server_session.h +++ b/src/core/hle/kernel/server_session.h @@ -21,6 +21,7 @@ class ServerSession; class Session; class SessionRequestHandler; class Thread; +class HLERequestContext; /** * Kernel object representing the server endpoint of an IPC session. Sessions are the basic CTR-OS @@ -116,17 +117,12 @@ private: */ static ResultVal<SharedPtr<ServerSession>> Create(std::string name = "Unknown"); + /// Handles a SyncRequest to a domain, forwarding the request to the proper object or closing an + /// object handle. + ResultCode HandleDomainSyncRequest(Kernel::HLERequestContext& context); + /// When set to True, converts the session to a domain at the end of the command bool convert_to_domain{}; }; -/** - * Performs command buffer translation for an HLE IPC request. - * The command buffer from the ServerSession thread's TLS is copied into a - * buffer and all descriptors in the buffer are processed. - * TODO(Subv): Implement this function, currently we do not support multiple processes running at - * once, but once that is implemented we'll need to properly translate all descriptors - * in the command buffer. - */ -ResultCode TranslateHLERequest(ServerSession* server_session); } // namespace Kernel |
