CamilleLaVey
9800c47966
[hle] BufferDescritorC
2 months ago
Liam
f5bfeef951
service: add template serializer for method calls
2 years ago
Fernando Sahmkow
9db159da71
SMMU: Initial adaptation to video_core.
2 years ago
Fernando Sahmkow
eb4f7f35ea
NVDRV: Implement sessions and initial implementation of SMMU
2 years ago
Viktor Szépe
cff668e1c4
Fix typos in src/core ( #12625 )
* Fix typos in src/core
* Fix typo correction
* Fix indentation of MemoryStateNames
* Fix indent
2 years ago
Liam
7836881b24
am/jit: reference memory instance from context
2 years ago
Liam
6bd1dfa8cc
service: fetch objects from the client handle table
2 years ago
Liam
662bc7c6a1
service: populate pid and handle table from client
2 years ago
Liam
cb8b331981
service: use interface factory in server manager
2 years ago
german77
ecf98d37b8
service: hle: Allow to access read buffer A and X directly
2 years ago
Liam
d7e9461b71
service: move hle_ipc from kernel
3 years ago
Liam
91c597e869
sm:: fix lingering session initialization issues
3 years ago
Liam
893a54f2bd
sm:: support service registration deferral
3 years ago
Liam
1c3a93e7c4
service: refactor server architecture
Converts services to have their own processes
3 years ago
ameerj
7cc5da4a9f
Revert "Merge pull request #9718 from yuzu-emu/revert-9508-hle-ipc-buffer-span"
This reverts commit 153fa289d2 , reversing
changes made to 20676b3b5a .
3 years ago
liamwhite
f74a95b6fb
Revert "hle_ipc: Use std::span to avoid heap allocations/copies when calling ReadBuffer"
3 years ago
ameerj
713394d526
hle_ipc: Rename ReadBufferSpan to ReadBuffer
3 years ago
ameerj
571d469697
hle_ipc: Rename ReadBuffer to ReadBufferCopy
Indicates explicitly that a copy is occurring
3 years ago
ameerj
e17c343915
hle_ipc: Add ReadBufferSpan function
Returns a std::span to the buffer address, rather than create a copy of the memory into a std::vector
3 years ago
Lioncash
ff19204dc6
hle_ipc: Add helper functions for getting number of buffer elements
3 years ago
Lioncash
ce329764a2
hle_ipc: Mark relevant member functions as [[nodiscard]]
Will allow the compiler to complain about cases where ignoring the
return value would be a bug.
3 years ago
Liam
0fc08006e5
service_thread: fix deletion
3 years ago
Liam
2e56a382a9
kernel: invert session request handling flow
3 years ago
Morph
89ace6c367
concepts: Use the std::contiguous_iterator concept
This also covers std::span, which does not have a const iterator.
Also renames IsSTLContainer to IsContiguousContainer to explicitly convey its semantics.
3 years ago
Liam
c0ae56548e
kernel: remove most SessionRequestManager handling from KServerSession
3 years ago
Liam
09777eea76
kernel: remove KWritableEvent
3 years ago
Kelebek1
be1f5f1d9f
Project Andio
4 years ago
german77
c7890ebccc
core: Replace all instances of ResultCode with Result
4 years ago
Liam
c1771c98f3
common: Change semantics of UNREACHABLE to unconditionally crash
4 years ago
Morph
2b87305d31
general: Convert source file copyright comments over to SPDX
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.
4 years ago
bunnei
75e39568a0
hle: service: Add option for service interfaces to create or use the default thread.
4 years ago
bunnei
8421193857
core: hle: kernel: Use weak_ptr where possible for SessionRequestHandler and SessionRequestManager.
4 years ago
bunnei
af11abed3f
hle: kernel: KServerSession: Simplify CompleteSyncRequest EndWait.
- Considering is_thread_waiting is never set, so we can remove IsThreadWaiting.
- KThread::EndWait will take the scheduler lock, so we can remove the redundant lock.
4 years ago
Morph
6bc7f27655
kernel: hle_ipc: Foward declare KAutoObject
4 years ago
bunnei
4ad8a148ee
hle: kernel: hle_ipc: Ensure SessionRequestHandler is valid.
5 years ago
bunnei
a3de201dcf
hle: kernel: Remove service thread manager and use weak_ptr.
- We no longer need to queue up service threads to be destroyed.
- Fixes a race condition where a thread could be destroyed too early, which caused a crash in Pokemon Sword/Shield.
5 years ago
bunnei
ff57fd7281
hle: kernel: k_server_session: Return service thread by strong pointer.
5 years ago
bunnei
8bf7b19d1d
hle: kernel: Refactor to allocate a ServiceThread per service handler.
- 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 .
5 years ago
bunnei
14f50729e2
hle: kernel: hle_ipc: Simplify incoming/outgoing move/copy/domain objects.
5 years ago
bunnei
6e3c9d2b06
hle: kernel: Implement CloneCurrentObject and improve session management.
5 years ago
Morph
29ce6e48ed
hle_ipc: Add a getter for PID
5 years ago
bunnei
006a51c86b
hle: kernel: hle_ipc: Fix outgoing IPC response size calculation.
5 years ago
bunnei
232102c794
hle: kernel: hle_ipc: Improve IPC code and add initial support for TIPC.
- Fixes our move handles implementation to actually move objects.
- Simplifies the traditional IPC path.
5 years ago
bunnei
4a781928dd
hle: kernel: Further cleanup and add TIPC helpers.
5 years ago
bunnei
ae86003503
hle: ipc_helpers: Update IPC response generation for TIPC.
5 years ago
Lioncash
e019da0487
kernel: Eliminate variable shadowing
Now that the large kernel refactor is merged, we can eliminate the
remaining variable shadowing cases.
5 years ago
bunnei
47224d3864
hle: kernel: Migrate to KHandleTable.
5 years ago
bunnei
ad048de3d6
hle: kernel: Rename Process to KProcess.
5 years ago
bunnei
796dddf78f
hle: kernel: Remove deprecated Object class.
5 years ago
bunnei
d6844cf75f
hle: kernel: Migrate KPort, KClientPort, and KServerPort to KAutoObject.
5 years ago