ameerj
5fa6b15215
kernel: KScopedReservation implementation
This implements KScopedReservation, allowing resource limit reservations to be more HW accurate, and release upon failure without requiring too many conditionals.
5 years ago
Chloe
37939482fb
kernel: Unify result codes ( #5890 )
* kernel: Unify result codes
Drop the usage of ERR_NAME convention in kernel for ResultName. Removed seperation between svc_results.h & errors.h as we mainly include both most of the time anyways.
* oops
* rename errors to svc_results
5 years ago
Lioncash
75a60a6e22
svc: Provide more detailed error logs for svc functions
Allows SVC calls to have much more informative information during error
cases. This also doesn't hide control flow returns from the reader.
5 years ago
bunnei
eba3c59a61
hle: kernel: svc: Cleanup KEvent/KReadableEvent/KWritableEvent SVCs.
5 years ago
bunnei
ff3c7c068b
hle: kernel: Reimplement KReadableEvent and KWritableEvent.
5 years ago
bunnei
3f942c01f0
hle: kernel: Rename WritableEvent to KWritableEvent.
5 years ago
bunnei
e86a7e3691
hle: kernel: Rename ReadableEvent to KReadableEvent.
5 years ago
Chloe Marcec
2c6e940493
Simplify limitableresource names
5 years ago
Chloe Marcec
3bf62c7a8a
Move to GetGlobalTimeNs, fix GetTotalPhysicalMemoryAvailable
5 years ago
Chloe Marcec
3be1a565f8
kernel: Rewrite resource limit to be more accurate
Matches closer to hardware
5 years ago
bunnei
3856564727
hle: kernel: process: Add state lock.
5 years ago
bunnei
cdd14b03e5
hle: kernel: Recode implementation of KThread to be more accurate.
5 years ago
bunnei
4dbf3f4880
hle: kernel: KThread: Clean up thread priorities.
5 years ago
bunnei
1e55498110
hle: kernel: KThread: Reorganize thread priority defaults.
5 years ago
bunnei
0530292b97
hle: kernel: KThread: Fix ThreadType definition.
5 years ago
bunnei
c0d3aef28c
core: hle: kernel: Rename Thread to KThread.
5 years ago
bunnei
03dfc8d8e7
hle: kernel: thread: Preserve thread wait reason for debugging only.
- This is decoupled from core functionality and used for debugging only.
5 years ago
bunnei
912dd50146
core: hle: Integrate new KConditionVariable and KAddressArbiter implementations.
5 years ago
bunnei
c3c43e32fc
hle: kernel: thread: Replace ThreadStatus/ThreadSchedStatus with a single ThreadState.
- This is how the real kernel works, and is more accurate and simpler.
5 years ago
bunnei
35c3c078e3
core: hle: kernel: Update KSynchronizationObject.
5 years ago
ameerj
0383363a8f
svc: demote SleepThread log to LOG_TRACE
This log is called often, and introduces a lot of noise when debug logging is enabled, making it difficult to see other debug logs.
5 years ago
Lioncash
2de124e223
svc: Remove unnecessary casts
Simplifies and removes some casts. In all cases, these were generally
widening from a 32-bit unsigned type to a 64-bit unsigned type, so no
information would be lost from the conversion.
5 years ago
bunnei
ccce6cb3be
hle: kernel: Migrate to KScopedSchedulerLock.
5 years ago
bunnei
4756cb203e
hle: kernel: Separate KScopedSchedulerLockAndSleep from k_scheduler.
5 years ago
bunnei
9e29e36a78
hle: kernel: Rewrite scheduler implementation based on Mesopshere.
5 years ago
bunnei
39d356782e
hle: kernel: svc: Remove reschedule on svcBreak.
- This breaks things, and is unnecessary, since emulation will be done at this point.
5 years ago
bunnei
493263f415
hle: kernel: svc: Remove unnecessary hack in svcSleep.
5 years ago
bunnei
e18ee8d681
hle: kernel: Port KAffinityMask from Mesosphere.
5 years ago
bunnei
7b642c7781
hle: kernel: multicore: Replace n-JITs impl. with 4 JITs.
5 years ago
Lioncash
874be0e3e1
svc: Remove unnecessary [[maybe_unused]] tag
The parameter is used in this function, so this suppression isn't
necessary.
5 years ago
bunnei
3d592972dc
Revert "core: Fix clang build"
5 years ago
Lioncash
be1954e04c
core: Fix clang build
Recent changes to the build system that made more warnings be flagged as
errors caused building via clang to break.
Fixes #4795
5 years ago
Lioncash
ec2a6e5ba8
kernel: Remove all dependencies on the global system instance
With this, the kernel finally doesn't depend directly on the global
system instance anymore.
5 years ago
Lioncash
2bab07c367
kernel: Remove unused variables
Resolves some compiler warnings in the Linux build.
6 years ago
Fernando Sahmkow
4105f38022
SVC: Implement 32-bits wrappers and update Dynarmic.
6 years ago
Fernando Sahmkow
ce350e7ce0
SVC: Add GetCurrentProcessorNumber32, CreateTransferMemory32, SetMemoryAttribute32
6 years ago
Fernando Sahmkow
22ceaca2f4
SVC: Add GetThreadPriority32 & SetThreadPriority32
6 years ago
Fernando Sahmkow
7fd7d05838
Common/Kernel: Corrections and small bug fixing.
6 years ago
Fernando Sahmkow
48fa3b7a0f
General: Cleanup legacy code.
6 years ago
Fernando Sahmkow
c8bf47dcfb
Kernel/svcBreak: Implement CacheInvalidation for Singlecore and correct svcBreak.
6 years ago
Fernando Sahmkow
19165cd859
HLE_IPC: Correct HLE Event behavior on timeout.
6 years ago
Fernando Sahmkow
f5e32935ca
SingleCore: Use Cycle Timing instead of Host Timing.
6 years ago
Fernando Sahmkow
1567824d2d
General: Move ARM_Interface into Threads.
6 years ago
Fernando Sahmkow
87c49aa7be
SVC/ARM: Correct svcSendSyncRequest and cache ticks on arm interface.
6 years ago
Fernando Sahmkow
25565dffd5
ARM: Addapt to new Exclusive Monitor Interface.
6 years ago
Fernando Sahmkow
7020d498c5
General: Fix microprofile on dynarmic/svc, fix wait tree showing which threads were running.
6 years ago
Fernando Sahmkow
f370de84b1
Kernel: Rewind on SVC change.
6 years ago
Fernando Sahmkow
d494b074e8
Kernel: Preempt Single core on redudant yields.
6 years ago
Fernando Sahmkow
6515c6e8c6
Kernel: Fixes, corrections and asserts to scheduler and different svcs.
6 years ago
Fernando Sahmkow
cd1c38be8d
ARM/Memory: Correct Exclusive Monitor and Implement Exclusive Memory Writes.
6 years ago