Fernando Sahmkow
5acd086b18
Kernel: Clang Format
2019-10-15 11:55:27 -04:00
Fernando Sahmkow
ac9dd91f1e
Kernel: Reverse global accessor removal.
2019-10-15 11:55:26 -04:00
Fernando Sahmkow
a88238d68d
Kernel: Address Feedback.
2019-10-15 11:55:25 -04:00
Fernando Sahmkow
17b53b4a54
Kernel Scheduler: Make sure the global scheduler shutdowns correctly.
2019-10-15 11:55:24 -04:00
Fernando Sahmkow
0d57b899dd
Kernel_Thread: Eliminate most global accessors.
2019-10-15 11:55:23 -04:00
Fernando Sahmkow
59b89b1dd5
KernelSVC: Assert that condition variable address is aligned to 4 bytes.
2019-10-15 11:55:22 -04:00
Fernando Sahmkow
8363d07df8
Kernel: Correct Paused scheduling
2019-10-15 11:55:21 -04:00
Fernando Sahmkow
3da21e4b4f
Kernel: Corrections to Wait Objects clearing in which a thread could still be signalled after a timeout or a cancel.
2019-10-15 11:55:20 -04:00
Fernando Sahmkow
248795db6e
Kernel: Correct redundant yields to only advance time forward.
2019-10-15 11:55:20 -04:00
Fernando Sahmkow
a24c331b84
Kernel: Corrections to ModifyByWaitingCountAndSignalToAddressIfEqual
2019-10-15 11:55:19 -04:00
Fernando Sahmkow
598203b5cf
Kernel: Correct Results in Condition Variables and Mutexes
2019-10-15 11:55:18 -04:00
Fernando Sahmkow
3c9e26a003
Kernel: Clang Format
2019-10-15 11:55:17 -04:00
Fernando Sahmkow
abc8856e2c
Kernel: Remove global system accessor from WaitObject
2019-10-15 11:55:16 -04:00
Fernando Sahmkow
7d04b271a6
Scheduler: Implement Yield Count and Core migration on Thread Preemption.
2019-10-15 11:55:16 -04:00
Fernando Sahmkow
f2989c81d9
Scheduler: Corrections to YieldAndBalanceLoad and Yield bombing protection.
2019-10-15 11:55:15 -04:00
Fernando Sahmkow
68325300ae
Kernel: Initial implementation of thread preemption.
2019-10-15 11:55:14 -04:00
Fernando Sahmkow
acdce3b4df
Scheduler: Add protections for Yield bombing
...
In case of redundant yields, the scheduler will now idle the core for
it's timeslice, in order to avoid continuously yielding the same thing
over and over.
2019-10-15 11:55:13 -04:00
Fernando Sahmkow
5130168171
Kernel: Style and Corrections
2019-10-15 11:55:12 -04:00
Fernando Sahmkow
87334f0f16
Correct PrepareReschedule
2019-10-15 11:55:12 -04:00
Fernando Sahmkow
655ed87f53
Comment and reorganize the scheduler
2019-10-15 11:55:11 -04:00
Fernando Sahmkow
891babbe20
Add PrepareReschedule where required.
2019-10-15 11:55:10 -04:00
Fernando Sahmkow
4760c27922
Correct compiling errors and addapt to the new interface.
2019-10-15 11:55:09 -04:00
Fernando Sahmkow
bddf90701b
Correct Supervisor Calls to work with the new scheduler,
2019-10-15 11:55:08 -04:00
Fernando Sahmkow
07524b63e8
Add interfacing to the Global Scheduler
2019-10-15 11:55:07 -04:00
Fernando Sahmkow
18c796ab58
Addapt thread class to the new Scheduler
2019-10-15 11:55:06 -04:00
Fernando Sahmkow
7a10ae0128
Implement a new Core Scheduler
2019-10-15 11:55:04 -04:00
Zach Hilman
8d904c20be
pl_u: Fix mismatched rebase size error in font encryption
2019-10-13 13:46:27 -04:00
Zach Hilman
1dcc71fc9c
pl_u: Use kernel physical memory
2019-10-13 13:46:27 -04:00
Zach Hilman
45cdc92252
pl_u: Remove excess static qualifier
2019-10-13 13:46:27 -04:00
Zach Hilman
d37be63099
pl_u: Use OSS system archives if real archives don't exist
2019-10-13 13:46:27 -04:00
bunnei
f9b784f1a6
Merge pull request #2921 from FreddyFunk/compiler-warnings-core
...
Services::ES fix casting warnings
2019-10-09 10:34:48 -04:00
bunnei
9680991009
Merge pull request #2654 from DarkLordZach/lm-log-rewrite
...
lm: Rewrite logger to use core reporting services
2019-10-08 20:23:13 -04:00
Morph
bebe0ff470
hid: Implement DeactivateNpad
...
Makes use of the already existing DeactivateController function.
2019-10-07 04:44:09 -07:00
Zach Hilman
fa828a828f
Merge pull request #2951 from lioncash/global
...
core: Remove Core::CurrentProcess()
2019-10-06 20:47:48 -04:00
Lioncash
3685b588d0
bcat/module: Silence truncation warnings
...
We need to perform explicit casts here, otherwise we're implicitly
truncating a 64-bit type to a 32-bit one.
2019-10-06 15:38:12 -04:00
Lioncash
bf17041e33
bcat: Take std::function instance by value in NullBackend's constructor
...
Without this, the std::move within the constructor initializer list
won't be able to actually perform a move.
2019-10-06 15:38:12 -04:00
Lioncash
ca16eb6b49
bcat: In-class initialize ProgressServiceBackend's impl member
...
Allows us to remove a constructor initializer list.
2019-10-06 15:38:12 -04:00
Lioncash
8d1a3e2fab
bcat: Make ProgressServiceBackend's constructor take a std::string_view
...
Given the string is appended to another, we can make it a view so a
redundant full copy of the string isn't made.
2019-10-06 15:38:09 -04:00
Lioncash
2269566f26
bcat: Make ProgressServiceBackend's GetEvent() const
...
This member function doesn't modify internal member state, so it can be
marked const.
2019-10-06 14:03:18 -04:00
Lioncash
0cab8c117d
boxcat: Silence an unused variable warning
...
On parse errors, we can log out the explanatory string indicating what
the parsing error was, rather than just ignoring the variable and
returning an overly broad error code.
2019-10-06 14:00:32 -04:00
Lioncash
922799f1d5
core: Remove Core::CurrentProcess()
...
This only encourages the use of the global system instance (which will
be phased out long-term). Instead, we use the direct system function
call directly to remove the appealing but discouraged short-hand.
2019-10-06 13:53:12 -04:00
Lioncash
e4e4af80e8
hle/service: Replace global system instance calls with instance-based ones
...
Migrates the HLE service code off the use of directly accessing the
global system instance where trivially able to do so.
This removes all usages of Core::CurrentProcess from the service code,
only 8 occurrences of this function exist elsewhere. There's still quite
a bit of "System::GetInstance()" being used, however this was able to
replace a few instances.
2019-10-06 13:42:23 -04:00
ReinUsesLisp
20c476154f
audio/audout_u: Change formatting for old clang-format versions
2019-10-04 23:51:56 +00:00
ReinUsesLisp
ac7d5ab87f
service/nvdrv: Silence -Wswitch
2019-10-04 23:41:22 +00:00
ReinUsesLisp
88f3837483
service/nfp: Silence -Wunused and -Wswitch
2019-10-04 23:41:22 +00:00
ReinUsesLisp
271d159f41
service/hid: Silence -Wunused and -Wswitch
2019-10-04 23:41:22 +00:00
ReinUsesLisp
6fcae076c6
service/am: Silence -Wreorder
2019-10-04 23:41:21 +00:00
ReinUsesLisp
d6d8c7a19b
service/hid: Remove unused system reference
2019-10-04 23:41:21 +00:00
ReinUsesLisp
a0856d1280
service/friend: Remove unused field
2019-10-04 23:41:21 +00:00
ReinUsesLisp
bd6ddbd3db
service/filesystem: Silence -Wunused-variable
2019-10-04 23:41:21 +00:00