445b4342b3
Mutex: Revert workaround due to poor exclusive memory.
2020-06-27 11:35:38 -04:00
cd1c38be8d
ARM/Memory: Correct Exclusive Monitor and Implement Exclusive Memory Writes.
2020-06-27 11:35:37 -04:00
535c542d84
SVC: WaitSynchronization add Termination Pending Result.
2020-06-27 11:35:36 -04:00
725bac1404
Scheduler: Remove arm_interface lock and a few corrections.
2020-06-27 11:35:35 -04:00
83c7ba1ef7
SVC: Correct SetThreadActivity.
2020-06-27 11:35:33 -04:00
a66c61ca2d
SCC: Small corrections to CancelSynchronization
2020-06-27 11:35:33 -04:00
44cb9997b3
Scheduler: Correct locking for hle threads.
2020-06-27 11:35:32 -04:00
6ed28e15fa
Scheduler: Fix HLE Threads on guard
2020-06-27 11:35:31 -04:00
3de33348e4
Scheduler: Protect on closed threads.
2020-06-27 11:35:31 -04:00
19847d4d42
Scheduler: Correct assert.
2020-06-27 11:35:30 -04:00
a33fbaddec
Core: Correct rebase.
2020-06-27 11:35:29 -04:00
1c672128c4
Scheduler: Release old thread fiber before trying to switch to the next thread fiber.
2020-06-27 11:35:28 -04:00
a6bce296ad
Mutex: Correct Result writting to clear exclusivity.
2020-06-27 11:35:26 -04:00
e4b175ade2
SVC: Correct svcWaitForAddress and svcSignalToAddress.
2020-06-27 11:35:25 -04:00
1e987dbe8d
Scheduler: Correct Select Threads Step 2.
2020-06-27 11:35:24 -04:00
07993ac8c8
Kernel: Corrections to Scheduling.
2020-06-27 11:35:23 -04:00
b4dc01f16a
Kernel: Correct Signal on Thread Death and Setup Sync Objects on Thread for Debugging
2020-06-27 11:35:23 -04:00
75e10578f1
Core: Correct HLE Event Callbacks and other issues.
2020-06-27 11:35:22 -04:00
de5b521c09
Process: Protect TLS region and Modules.
2020-06-27 11:35:21 -04:00
2a8837ff51
General: Add Asserts
2020-06-27 11:35:21 -04:00
04e0f8776c
General: Add better safety for JIT use.
2020-06-27 11:35:20 -04:00
bd36eaf15d
SVC: Correct races on physical core switching.
2020-06-27 11:35:19 -04:00
3902067008
SVC: Add locks to the memory management.
2020-06-27 11:35:18 -04:00
d4ebb510a0
SVC: Correct WaitSynchronization, WaitProcessWideKey, SignalProcessWideKey.
2020-06-27 11:35:17 -04:00
5b6a67f849
SVC: Cleanup old methods.
2020-06-27 11:35:16 -04:00
3d9fbb8226
CPU_Manager: Reconfigre guest threads for dynamrmic downsides
2020-06-27 11:35:15 -04:00
15a79eb0d7
SVC: Correct SendSyncRequest.
2020-06-27 11:35:14 -04:00
203e706302
SVC: Correct ArbitrateUnlock
2020-06-27 11:35:14 -04:00
3b5b950c89
SVC: Correct SignalEvent, ClearEvent, ResetSignal, WaitSynchronization, CancelSynchronization, ArbitrateLock
2020-06-27 11:35:13 -04:00
ef4afa9760
SVC: Remove global HLE Lock.
2020-06-27 11:35:13 -04:00
589f9cf108
SVC: Correct GetThreadPriority, SetThreadPriority, GetThreadCoreMask, SetThreadCoreMask, GetCurrentProcessorNumber
2020-06-27 11:35:12 -04:00
49ba563995
SVC: Correct CreateThread, StartThread, ExitThread, SleepThread.
2020-06-27 11:35:11 -04:00
e31425df38
General: Recover Prometheus project from harddrive failure
...
This commit: Implements CPU Interrupts, Replaces Cycle Timing for Host
Timing, Reworks the Kernel's Scheduler, Introduce Idle State and
Suspended State, Recreates the bootmanager, Initializes Multicore
system.
2020-06-27 11:35:06 -04:00
a91f92a89d
Merge pull request #4152 from ogniK5377/ipc-err
...
Mark invalid IPC buffers as ASSERT_OR_EXECUTE_MSG
2020-06-26 23:37:19 -04:00
38868e5750
memory_manager: Remove useless assertion
...
num_pages is an std::size_t. It will always be >= 0
2020-06-25 16:35:58 +10:00
82ecdd0104
Mark invalid IPC buffers as ASSERT_OR_EXECUTE_MSG
...
Previously if applications would send faulty buffers(example homebrew) it would lead to us returning uninitalized data. Switching from ASSERT_MSG to ASSERT_OR_EXECUTE_MSG allows us to have a fail safe to prevent crashes but also continue execution without introducing undefined behavior
2020-06-24 22:50:27 +10:00
b19fe55f84
memory_manager: Explicitly specifcy std::min<size_t>
2020-06-18 15:47:44 +01:00
89d11f2268
Merge pull request #4069 from ogniK5377/total-phys-mem
...
kernel: Account for system resource size for memory usage
2020-06-14 00:44:34 -04:00
e1911e5c8b
Merge pull request #4010 from ogniK5377/reserve-always-break
...
kernel: ResourceLimit::Reserve remove useless while loop
2020-06-12 22:30:19 -04:00
74ff1db758
kernel: Account for system resource size for memory usage
...
GetTotalPhysicalMemoryAvailableWithoutSystemResource & GetTotalPhysicalMemoryUsedWithoutSystemResource seem to subtract the resource size from the usage.
2020-06-10 14:49:00 +10:00
c0d2e3212f
Downgrade "handle not signaled" error to trace
...
clogs logs quite a bit
2020-06-04 22:27:15 +10:00
43bf860b22
kernel: ResourceLimit::Reserve remove useless while loop
...
Timeout is a u64, it will always be >= 0
2020-05-29 13:48:01 +10:00
1121960f0e
Merge pull request #3879 from lioncash/global2
...
hle_ipc: Eliminate core memory globals
2020-05-07 19:13:34 -04:00
88141bb2d4
Merge pull request #3881 from lioncash/mem-warning
...
kernel/memory: Resolve several compiler warnings
2020-05-05 15:41:18 -04:00
4620580245
kernel/memory: Remove #pragma once within cpp file
...
This isn't necessary in a cpp file and will cause warnings on clang.
2020-05-03 13:42:07 -04:00
1ecaa86a52
kernel/memory: Remove unused includes
...
Prevents header churn and needing to recompile these files if these
headers are ever changed in the future.
2020-05-03 13:41:18 -04:00
a2e61e6542
kernel/memory: Remove unused variables in memory_block_manager
...
Prevents unused variable warnings.
2020-05-03 13:36:20 -04:00
26aee55aef
kernel/memory: Make use of std::array consistently in address_space_info
...
This allows tuning standard library implementations to enable or disable
range checks at runtime, which is nicer for debugging.
2020-05-03 13:34:24 -04:00
dfa582169b
kernel/memory: Resolve -Wshadow warnings
...
Prevents variable name clashing.
2020-05-03 13:29:42 -04:00
93c083aef1
kernel/memory: Amend potential encoding warnings
...
While èis generally representable in some language encodings, in some
it isn't and will result in compilation warnings occurring. To remain
friendly with other language's codepages on Windows, we normalize it to
an ASCII e.
2020-05-03 13:01:03 -04:00