aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/service/sm
AgeCommit message (Collapse)Author
2022-06-26core: Replace all instances of ResultCode with Resultgerman77
2022-04-23general: Convert source file copyright comments over to SPDXMorph
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.
2022-04-08hle: kernel: Unify and integrate reference tracking for ↵bunnei
KServerPort/KServerSession. - These are not managed elsewhere, and need to be tracked and closed on emulation shutdown.
2022-04-08hle: service: sm: Remove manual tracking of KServerPorts.bunnei
2022-04-02hle: service: Add option for service interfaces to create or use the default ↵bunnei
thread.
2022-03-14core: hle: service: sm: Fix KPort reference count.bunnei
2021-11-03core: Remove unused includesameerj
2021-11-02general: Remove MakeResult helpersMorph
This is made obsolete by the presence of implicit constructors.
2021-07-20hle: service: sm: Refactor to better manage ports.bunnei
2021-07-14service: Append service name prefix to common filenamesMorph
2021-06-10hle: service: sm: Remove redundant session reservation, etc.bunnei
- We were double-reserving, causing us to run out of sessions in Pokemon Sword & Shield.
2021-06-09hle: service: sm: Fix GetService setup of session & port.bunnei
2021-06-04hle: kernel: Refactor to allocate a ServiceThread per service handler.bunnei
- 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.
2021-06-02general: Replace RESULT_SUCCESS with ResultSuccessMorph
Transition to PascalCase for result names.
2021-05-20hle: kernel: Implement CloneCurrentObject and improve session management.bunnei
2021-05-20Revert "WORKAROUND: temp. disable session resource limits while we work out ↵bunnei
issues" This reverts commit fc086f93b2165b5c210cb7dcd6c18ebe17f1fd7b.
2021-05-11WORKAROUND: temp. disable session resource limits while we work out issuesbunnei
2021-05-10hle: service: sm: Add TIPC support.bunnei
- Fixes our error checking of names as well.
2021-05-10hle: service: sm: GetService: Reserve session resource when we create a ↵bunnei
KSession.
2021-05-10hle: service: sm: Improve Initialize implementation.bunnei
2021-05-10hle: kernel: KSession: Improve implementation of CloneCurrentObject.bunnei
2021-05-10hle: service: sm: Increase point buffer size.bunnei
2021-05-05hle: kernel: Remove deprecated Object class.bunnei
2021-05-05hle: kernel: Migrate KPort, KClientPort, and KServerPort to KAutoObject.bunnei
2021-05-05hle: kernel: Migrate KServerPort to KAutoObject.bunnei
2021-05-05hle: kernel: Migrate KClientPort to KAutoObject.bunnei
2021-05-05hle: kernel: Migrate KSession, KClientSession, and KServerSession to ↵bunnei
KAutoObject.
2021-05-05hle: kernel: Refactor IPC interfaces to not use std::shared_ptr.bunnei
2021-04-08sm: Use proper names, update to 12.xgerman77
2021-01-11core: hle: kernel: Update KSynchronizationObject.bunnei
2020-11-26service: Eliminate usages of the global system instanceLioncash
Completely removes all usages of the global system instance within the services code by passing in the using system instance to the services.
2020-09-17service/sm: Slightly more efficient string name validationLioncash
We can check the end of the string first for null-termination, rather than the beginning of the string.
2020-09-17service/sm: Eliminate dependency on the global system instanceLioncash
2020-09-07service: Remove two usages of the global system accessorLioncash
Removes more instances of reliance on global state.
2020-08-07common/concepts: Rename IsBaseOf to DerivedFromLioncash
This makes it more inline with its currently unavailable standardized analogue std::derived_from. While we're at it, we can also make the template match the requirements of the standardized variant as well.
2020-08-03sm: Make use of IsBaseOf for GetServiceDavid Marcec
2020-07-11Merge pull request #4203 from VolcaEM/servicesbunnei
service: Update function tables
2020-06-29Remove duplicate functionsVolcaEM
2020-06-29Use decimal instead of hexadecimalVolcaEM
Co-authored-by: David <25727384+ogniK5377@users.noreply.github.com>
2020-06-29service: Update function tablesVolcaEM
2020-06-27General: Cleanup legacy code.Fernando Sahmkow
2020-04-29Don't fail silently for vi, sm, set and ns servicesDavid Marcec
2020-03-23sm/controller: Increase PointerBufferSizeFearlessTobi
This increases the PointerBufferSize as a lager one is required by some services. This change is still not hw-accurate, but it is proven to work in Ryujinx. Instead of using a hardcoded size, we should figure out the specific values for each service in the future. Some of them can be taken from Atmosphere: https://github.com/Atmosphere-NX/Atmosphere/search?q=PointerBufferSize.
2019-11-28kernel: Implement a more accurate IPC dispatch.bunnei
2019-11-24kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for ↵bunnei
kernel objects. (#3154) * kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for kernel objects. - See https://github.com/citra-emu/citra/pull/4710 for details.
2019-03-11kernel/server_port: Make data members privateLioncash
With this, all kernel objects finally have all of their data members behind an interface, making it nicer to reason about interactions with other code (as external code no longer has the freedom to totally alter internals and potentially messing up invariants).
2019-03-05kernel/server_session: Make data members privateLioncash
Makes it much nicer to locally reason about server session behavior, as part of its functionality isn't placed around other classes.
2018-12-18service/sm: Improve debug log for RegisterServiceLioncash
Now it also indicates the name and max session count. This also gives a name to the unknown bool. This indicates if the created port is supposed to be using light handles or regular handles internally. This is passed to the respective svcCreatePort parameter internally.
2018-12-06hle/service, hle/sm: Compress usages of MakeResult()Lioncash
These auto-deduce the result based off its arguments, so there's no need to do that work for the compiler, plus, the function return value itself already indicates what we're returning.
2018-12-06hle/service, hle/sm: Use structured bindings where applicableLioncash
Gets rid of the need to keep the variables separate from their actual initialization spots.