Viktor Szépe
f124461674
Fix typos in src/core ( #12625 )
* Fix typos in src/core
* Fix typo correction
* Fix indentation of MemoryStateNames
* Fix indent
2 years ago
Liam
47e44a6693
am/jit: reference memory instance from context
2 years ago
Liam
5165ed9efd
service: fetch objects from the client handle table
2 years ago
Liam
5feda37688
service: populate pid and handle table from client
2 years ago
Liam
34e4012998
service: use interface factory in server manager
2 years ago
german77
c73bb33ff1
service: hle: Allow to access read buffer A and X directly
2 years ago
Liam
65be230fdd
service: move hle_ipc from kernel
3 years ago
Liam
72e5552409
sm:: fix lingering session initialization issues
3 years ago
Liam
6e0a33089b
sm:: support service registration deferral
3 years ago
Liam
a936972614
service: refactor server architecture
Converts services to have their own processes
3 years ago
ameerj
2d2522693e
Revert "Merge pull request #9718 from yuzu-emu/revert-9508-hle-ipc-buffer-span"
This reverts commit 25fc5c0e11 , reversing
changes made to af20e25081 .
3 years ago
liamwhite
b01698775b
Revert "hle_ipc: Use std::span to avoid heap allocations/copies when calling ReadBuffer"
3 years ago
ameerj
a1490d77ac
hle_ipc: Rename ReadBufferSpan to ReadBuffer
3 years ago
ameerj
59c0f85407
hle_ipc: Rename ReadBuffer to ReadBufferCopy
Indicates explicitly that a copy is occurring
3 years ago
ameerj
9349f06963
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
59335f6796
hle_ipc: Add helper functions for getting number of buffer elements
3 years ago
Lioncash
c31f19b6d1
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
6a0d8b2aa1
service_thread: fix deletion
3 years ago
Liam
983f2b7074
kernel: invert session request handling flow
3 years ago
Morph
8b4d5aeb4f
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
fca195b4fb
kernel: remove most SessionRequestManager handling from KServerSession
3 years ago
Liam
a9ace6856d
kernel: remove KWritableEvent
3 years ago
Kelebek1
458da8a948
Project Andio
4 years ago
german77
a7d9be1384
core: Replace all instances of ResultCode with Result
4 years ago
Liam
084d7d6b01
common: Change semantics of UNREACHABLE to unconditionally crash
4 years ago
Morph
99ceb03a1c
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
bf1750664c
hle: service: Add option for service interfaces to create or use the default thread.
4 years ago
bunnei
07c9d9bdbd
core: hle: kernel: Use weak_ptr where possible for SessionRequestHandler and SessionRequestManager.
4 years ago
bunnei
ad53dc22fd
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
bea7824bd1
kernel: hle_ipc: Foward declare KAutoObject
4 years ago
bunnei
08d798b6fe
hle: kernel: hle_ipc: Ensure SessionRequestHandler is valid.
5 years ago
bunnei
a493ab2678
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
ada4242c01
hle: kernel: k_server_session: Return service thread by strong pointer.
5 years ago
bunnei
27ce97fd42
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
f4fe71c1c9
hle: kernel: hle_ipc: Simplify incoming/outgoing move/copy/domain objects.
5 years ago
bunnei
7361eac10f
hle: kernel: Implement CloneCurrentObject and improve session management.
5 years ago
Morph
81a5ecdb18
hle_ipc: Add a getter for PID
5 years ago
bunnei
12d569e483
hle: kernel: hle_ipc: Fix outgoing IPC response size calculation.
5 years ago
bunnei
913971417e
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
ed25191ee6
hle: kernel: Further cleanup and add TIPC helpers.
5 years ago
bunnei
d08bd3e062
hle: ipc_helpers: Update IPC response generation for TIPC.
5 years ago
Lioncash
2f62bae9e3
kernel: Eliminate variable shadowing
Now that the large kernel refactor is merged, we can eliminate the
remaining variable shadowing cases.
5 years ago
bunnei
4b03e6e776
hle: kernel: Migrate to KHandleTable.
5 years ago
bunnei
2a7eff57a8
hle: kernel: Rename Process to KProcess.
5 years ago
bunnei
bf380b8584
hle: kernel: Remove deprecated Object class.
5 years ago
bunnei
626f746971
hle: kernel: Migrate KPort, KClientPort, and KServerPort to KAutoObject.
5 years ago
bunnei
aa2844bcf9
hle: kernel: HandleTable: Remove deprecated APIs.
5 years ago
bunnei
7444963bbb
hle: kernel: Migrate KSession, KClientSession, and KServerSession to KAutoObject.
5 years ago
bunnei
5e5933256b
hle: kernel: Refactor IPC interfaces to not use std::shared_ptr.
5 years ago
bunnei
da7e9553de
hle: kernel: Migrate more of KThread to KAutoObject.
5 years ago