Colin Kinloch
d0ca9973a7
kernel/svc: Fix undefined info_id
4 years ago
bunnei
86a1aa0fcc
core: kernel: k_process: Use application system resource.
4 years ago
ameerj
8467bf5224
kernel: Refactor thread_local variable usage
On MSVC at least, there seems to be a non-trivial overhead to calling GetHostThreadId().
This slightly reworks the host_thread_id variable to reduce some of the complexity around its usage, along with some small refactors around current_thread and dummy thread
4 years ago
Liam
f68b3dcb29
kernel: avoid usage of bit_cast
4 years ago
Liam
b91913334e
kernel/svc: switch to generated wrappers
4 years ago
Liam
43131451c3
kernel: fix compilation with older gcc
4 years ago
Liam
2d0892da7f
kernel/svc: Split implementations into separate files
4 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 .
4 years ago
liamwhite
f74a95b6fb
Revert "hle_ipc: Use std::span to avoid heap allocations/copies when calling ReadBuffer"
4 years ago
Liam
1f14d5ebce
kernel: add KDeviceAddressSpace
4 years ago
Liam
943f0bf0c3
kernel: add KCapabilities
4 years ago
Levi Behunin
2ff6c44168
Move to Clang Format 15
Depends on https://github.com/yuzu-emu/build-environments/pull/69
clang-15 primary run
4 years ago
Liam
86c6735bd0
kernel: unbreak min/max template deduction on Apple Clang
4 years ago
Liam
b85a155abd
kernel: split SetAddressKey into user and kernel variants
4 years ago
Liam
31945a6e8b
kernel: fix incorrect locking order in suspension
4 years ago
Liam
3b4c6e5425
kernel: KPageTable: update
4 years ago
Liam
e1b0b3d0db
timing: wait for completion on unregister
4 years ago
bunnei
1bd2034592
Revert "Revert "k_page_group: synchronize""
4 years ago
gidoly
118d57a8f0
Revert "k_page_group: synchronize"
4 years ago
ameerj
ddbee432b2
hle_ipc: Use thread_local ReadBuffer
4 years ago
ameerj
713394d526
hle_ipc: Rename ReadBufferSpan to ReadBuffer
4 years ago
ameerj
571d469697
hle_ipc: Rename ReadBuffer to ReadBufferCopy
Indicates explicitly that a copy is occurring
4 years ago
ameerj
db9a523aae
service: Use ReadBufferSpan where it is trivial to do so
4 years ago
Liam
b4504fdd19
k_page_table: remove HACK_OpenPages/ClosePages
4 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
4 years ago
Liam
4b9df26091
k_page_group: synchronize
4 years ago
Liam
71ec5c9519
kernel: workaround static shared memory initialization
4 years ago
Liam
8df44232e8
kernel: remove TimeManager
4 years ago
Liam
49d1cf6477
kernel: add KHardwareTimer
4 years ago
ameerj
c57883f1bc
hle_ipc: Refactor ReadBuffer to set buffer size upon initialization
Initializing the vector size during initialization is more efficient than a later call to resize()
4 years ago
ameerj
333fd1165a
hle_ipc: Reserve vectors before populating
4 years ago
Narr the Reg
dfe49436c8
kernel: svc: Fix duplicated InfoType enum
4 years ago
Narr the Reg
464b7a9ee2
kernel: process: Implement GetFreeThreadCount
Used by Just Dance® 2023 Edition
4 years ago
Salvage
a4369e6175
Remove the lock entirely as per PR discussion
Correctly unlock mutex before its destruction
As per https://en.cppreference.com/w/cpp/thread/mutex/~mutex destroying a locked mutex is undefined behavior and MSVC++ decides to throw in this case
Swap out unique for scoped lock and readd comment
4 years ago
Liam
08d81c9726
general: improve handling of system startup failure
4 years ago
Lioncash
7ed6f9d6fd
kernel/k_shared_memory: Ensure device_memory is always initialized
4 years ago
Lioncash
0435142f58
kernel/k_memory_block: Ensure members are always initialized
4 years ago
Lioncash
4c5de31093
kernel/physical_core: Ensure is_interrupted is always initialized
4 years ago
Lioncash
6fea145402
kernel/thread: Ensure stack_top and argument are always initialized
4 years ago
Lioncash
8b8320be4a
kernel/kernel: Ensure shutdown threads are always initialized
4 years ago
Liam
4a65ee47d3
service_thread: fix uninitialized memory usage
4 years ago
Lioncash
ff19204dc6
hle_ipc: Add helper functions for getting number of buffer elements
4 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.
4 years ago
Liam
5a712bb51a
general: fix compile for Apple Clang
4 years ago
Lioncash
71d5db9354
k_handle_table: Remove cast to void* in GetObjectForIpc
This was used to get around the KProcess class being incomplete. We can
just move this to the cpp file and eliminate the cast entirely, letting
the compiler do its work.
4 years ago
Kyle Kienapfel
d886438754
Add break for default cases
Visual Studio has an option to search all files in a solution, so I
did a search in there for "default:" looking for any missing break
statements.
I've left out default statements that return something, and that throw
something, even if via ThrowInvalidType. UNREACHABLE leads towards throw
R_THROW macro leads towards a return
4 years ago
Liam
e313e4f1ae
kernel: implement FlushProcessDataCache
4 years ago
Liam
9f12c3e22f
gdbstub: add ams monitor commands
4 years ago
Liam
47ce2e44d9
service_thread: remove explicit KProcess
4 years ago
Liam
affd5c32f9
kernel/svc_types: refresh
4 years ago