Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | kernel: Remove unnecessary includes | Lioncash | 2018-07-31 | 1 | -2/+0 |
| | | | | | Removes unnecessary direct dependencies in some headers and also gets rid of indirect dependencies that were being relied on to be included. | ||||
* | Format: Run the new clang format on everything | James Rowe | 2018-01-21 | 1 | -1/+1 |
| | |||||
* | Kernel/SVC: Pass the current thread as a parameter to ClientSession::SendSyncRequest. | Subv | 2017-06-29 | 1 | -2/+3 |
| | |||||
* | Kernel/Sessions: Clean up the list of pending request threads of a session when the client endpoint is closed. | Subv | 2017-06-26 | 1 | -0/+5 |
| | |||||
* | Kernel/ServerSession: Keep track of which threads have issued sync requests. | Subv | 2017-06-25 | 1 | -1/+1 |
| | |||||
* | Session: Remove/add some forward declarations | Yuri Kunde Schlesner | 2017-06-08 | 1 | -0/+1 |
| | |||||
* | Kernel: Ensure objects are kept alive during ClientSession disconnection | Yuri Kunde Schlesner | 2017-06-08 | 1 | -7/+13 |
| | | | | Fixes #2760 | ||||
* | HLE: Move SessionRequestHandler from Service:: to Kernel:: | Yuri Kunde Schlesner | 2017-06-06 | 1 | -0/+2 |
| | | | | | Most of the code that works with this is or will be in the kernel, so it's a more appropriate place for it to be. | ||||
* | Kernel: Centralize error definitions in errors.h | Yuri Kunde Schlesner | 2017-05-25 | 1 | -2/+1 |
| | |||||
* | Kernel/Sessions: Remove the ClientSession::Create function. | Subv | 2017-05-22 | 1 | -8/+0 |
| | | | | It is not meant to be used by anything other than CreateSessionPair. | ||||
* | Kernel: Remove a now unused enum and variable regarding a session's status. | Subv | 2017-05-15 | 1 | -1/+0 |
| | |||||
* | Kernel: Use a Session object to keep track of the status of a Client/Server session pair. | Subv | 2017-05-15 | 1 | -9/+15 |
| | | | | Reduce the associated port's connection count when a ServerSession is destroyed. | ||||
* | Fixed the codestyle to match our clang-format rules. | Subv | 2016-12-14 | 1 | -3/+6 |
| | |||||
* | Added a framework for partially handling Session disconnections. | Subv | 2016-12-08 | 1 | -3/+12 |
| | | | | | | Further implementation will happen in a future commit. Fixes a regression. | ||||
* | Use std::move where appropriate. | Subv | 2016-12-08 | 1 | -1/+1 |
| | |||||
* | KServerPorts now have an HLE handler "template", which is inherited by all ServerSessions created from it. | Subv | 2016-12-05 | 1 | -1/+1 |
| | |||||
* | Declare empty ServerSession and ClientSession constructors as default. | Subv | 2016-12-03 | 1 | -2/+2 |
| | |||||
* | Fixed the rebase mistakes. | Subv | 2016-12-01 | 1 | -3/+0 |
| | |||||
* | A bit of a redesign. | Subv | 2016-12-01 | 1 | -14/+2 |
| | | | | | | | Sessions and Ports are now detached from each other. HLE services are handled by means of a SessionRequestHandler class, Interface now inherits from this class. The File and Directory classes are no longer kernel objects, but SessionRequestHandlers instead, bound to a ServerSession when requested. File::OpenLinkFile now creates a new session pair and binds the File instance to it. | ||||
* | IPC/HLE: Associate the ClientSessions with their parent port's HLE interface if it exists. | Subv | 2016-12-01 | 1 | -4/+5 |
| | | | | Pass the triggering ServerSession to the HLE command handler to differentiate which session caused the request. | ||||
* | Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication. | Subv | 2016-12-01 | 1 | -0/+42 |
All handles obtained via srv::GetServiceHandle or svcConnectToPort are references to ClientSessions. Service modules will wait on the counterpart of those ClientSessions (Called ServerSessions) using svcReplyAndReceive or svcWaitSynchronization[1|N], and will be awoken when a SyncRequest is performed. HLE Interfaces are now ClientPorts which override the HandleSyncRequest virtual member function to perform command handling immediately. |