Fernando Sahmkow
da6673e79a
SVC: Implement svcInfo:IdleTickCount
...
Used by the Witcher 3
2021-10-16 20:33:44 +02:00
Morph
bea7824bd1
kernel: hle_ipc: Foward declare KAutoObject
2021-10-07 13:32:36 -04:00
bunnei
5b2fa8dd41
Merge pull request #7115 from ameerj/log-compile
...
common/logging: Reduce dependent header include overhead
2021-10-05 10:05:46 -07:00
Ameer J
01f79d638f
Merge pull request #7091 from vonchenplus/fix_memroy_leak
...
core: Fix memory leak
2021-10-04 00:09:08 -04:00
ameerj
5daf3abe65
common/logging: Move Log::Entry declaration to a separate header
...
This reduces the load of requiring to include std::chrono in all files which include log.h
2021-10-01 20:48:49 -04:00
Morph
e29f3b87f1
style: Remove extra space preceding the :: operator
2021-09-29 01:26:01 -04:00
Feng Chen
5fbfc4c19e
Fix KShareMemory object leak
2021-09-29 09:51:20 +08:00
Feng Chen
7cd43b139a
Fix KScopedAutoObject object leak when SendSyncRequest
2021-09-25 22:16:21 +08:00
ameerj
73666fb262
general: Update style to clang-format-12
2021-09-24 15:52:05 -04:00
Morph
6f307f1521
kernel: Add missing <functional> include
2021-09-11 17:19:15 -04:00
bunnei
0c8594b225
Revert "kernel: Various improvements to scheduler"
2021-08-25 20:59:28 -07:00
Ameer J
bed0c3c92a
Merge pull request #6878 from BreadFish64/optimize-GetHostThreadID
...
kernel: Optimize GetHostThreadID
2021-08-24 00:01:13 -04:00
Valeri
0b3d12be40
Fix check is thread current in GetThreadContext
...
Misplaced break made it only check for the first core.
2021-08-19 16:46:30 +03:00
BreadFish64
14e93f133a
kernel: Optimize GetHostThreadID
2021-08-16 07:30:23 -05:00
bunnei
aef0ca6f0d
core: hle: kernel: Disable dispatch count tracking on single core.
...
- This would have limited value, and would be a mess to handle properly.
2021-08-14 02:14:19 -07:00
bunnei
5060a97210
core: hle: kernel: k_thread: Mark KScopedDisableDispatch as nodiscard.
2021-08-07 12:33:31 -07:00
bunnei
48a3496b93
core: hle: kernel: k_auto_object: Add GetName method.
...
- Useful purely for debugging.
2021-08-07 12:18:48 -07:00
bunnei
5051d3c415
core: hle: kernel: DisableDispatch on suspend threads.
2021-08-07 12:18:47 -07:00
bunnei
1798c3b6b0
core: hle: kernel: k_scheduler: Improve DisableScheduling and EnableScheduling.
2021-08-07 12:18:47 -07:00
bunnei
2dfb07388a
core: hle: kernel: Use CurrentPhysicalCoreIndex as appropriate.
2021-08-07 12:18:47 -07:00
bunnei
d1c502720d
core: hle: kernel: k_scheduler: Remove unnecessary MakeCurrentProcess.
2021-08-07 12:18:47 -07:00
bunnei
77ad64b97d
core: hle: kernel: k_scheduler: Improve ScheduleImpl.
2021-08-07 12:18:47 -07:00
bunnei
bedcf19710
core: hle: kernel: k_scheduler: Improve Unload.
2021-08-07 12:18:47 -07:00
bunnei
7569d6774d
core: hle: kernel: k_process: DisableDispatch on main thread.
2021-08-07 12:18:47 -07:00
bunnei
f2b0d28983
core: hle: kernel: k_handle_table: Use KScopedDisableDispatch as necessary.
2021-08-07 12:18:47 -07:00
bunnei
01af2f4162
core: hle: kernel: k_thread: Add KScopedDisableDispatch.
2021-08-07 12:18:47 -07:00
bunnei
2b9560428b
core: hle: kernel: Ensure idle threads are closed before destroying scheduler.
2021-08-07 12:18:47 -07:00
bunnei
68eee94875
core: hle: kernel: Reflect non-emulated threads as core 3.
2021-08-07 12:18:47 -07:00
bunnei
f3db3dcc8d
hle: kernel: svc: Remove part of ExitProcess.
...
- ExitProcess is not actually implemented either way, and this needs more work before we implement.
2021-07-20 18:54:56 -07:00
bunnei
52caa52cc2
hle: kernel: Track and release server sessions, and protect methods with locks.
2021-07-20 18:54:56 -07:00
bunnei
8d755147d8
hle: kernel: KProcess: Change process termination assert to a warning.
...
- Since we do not implement multiprocess right now, this should not be a crashing assert.
2021-07-20 18:54:56 -07:00
bunnei
854c7a3c28
hle: kernel: Ensure current running process is closed.
2021-07-20 18:54:56 -07:00
bunnei
ecf3653444
hle: kernel: Ensure global handle table is finalized before closing.
2021-07-20 18:54:56 -07:00
bunnei
24540e0ad9
kernel: svc: ConnectToNamedPort: Close extra reference to port.
2021-07-20 18:54:56 -07:00
bunnei
b119363fc2
hle: kernel: k_process: Close the handle table on shutdown.
2021-07-20 18:54:55 -07:00
bunnei
6020723e77
hle: kernel: k_process: Close main thread reference after it is inserted into handle table.
2021-07-20 18:54:55 -07:00
bunnei
fe402d3506
hle: kernel: Ensure global handle table is initialized.
2021-07-20 18:54:55 -07:00
bunnei
929994132a
hle: kernel: Provide methods for tracking dangling kernel objects.
2021-07-20 18:54:55 -07:00
Wunkolo
4569f39c7c
common: Replace common_sizes into user-literals
...
Removes common_sizes.h in favor of having `_KiB`, `_MiB`, `_GiB`, etc
user-literals within literals.h.
To keep the global namespace clean, users will have to use:
```
using namespace Common::Literals;
```
to access these literals.
2021-06-24 09:27:40 -07:00
Morph
1a5eceeb9c
kernel: Fix missing peak set in KResourceLimit::SetLimitValue
2021-06-18 07:27:48 -04:00
Morph
ebd38d66db
kernel: Unconditionally set thread state when appropriate
2021-06-11 00:58:04 -04:00
Morph
aa79ca7a7a
kernel: KLightConditionVariable: Update implementation to 12.x
...
Updates the implementation of KLightConditionVariable to FW 12.x
2021-06-11 00:58:04 -04:00
bunnei
b259e95c09
hle: kernel: KClientPort: Add an assert for session count.
...
- Prevents us from over decrementing num_sessions.
2021-06-09 22:36:42 -07:00
bunnei
ec5674a6ad
hle: service: sm: Fix GetService setup of session & port.
2021-06-09 22:29:18 -07:00
bunnei
b2971b48ed
hle: kernel: KServerSession: Fix client disconnected.
...
- Prevents a cloned session's handler from being overwritten by another disconnected session.
- Fixes session handler nullptr asserts with Pokemon Sword & Shield.
2021-06-09 21:37:11 -07:00
bunnei
c63ea608aa
kernel: svc: Add missing error check to CancelSynchronization.
...
- Avoids a potential crash if the handle is invalid, and also makes this code accurate to real kernel behavior.
2021-06-09 15:24:46 -07:00
bunnei
b8fb9b3f11
hle: kernel: KServerSession: Work-around scenario where session is closed too early.
2021-06-08 13:39:20 -07:00
bunnei
08d798b6fe
hle: kernel: hle_ipc: Ensure SessionRequestHandler is valid.
2021-06-07 21:55:37 -07:00
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.
2021-06-07 21:10:51 -07:00
bunnei
9db569b2d9
hle: kernel: KServerSession: Use ASSERT_MSG where appropriate.
2021-06-06 22:09:25 -07:00