Commit graph

439 commits

Author SHA1 Message Date
Michael Scire
a33576e674 kern: update Initialize0 for new arguments/randomization semantics 2021-09-18 09:58:02 -07:00
Michael Scire
1cf3b24c2d kern: KMemoryManager/KPageGroup use physical addresses instead of virtual, now 2021-09-18 00:11:10 -07:00
Michael Scire
f8fd072349 kern: support dynamic resource expansion for system heaps/events/sessions. 2021-09-17 22:01:58 -07:00
Michael Scire
dfd57b09a3 kern: improve kdebug attach semantics 2021-09-17 18:10:05 -07:00
Michael Scire
ecd2392ff4 kern: update KPageTable::Unmap block closing logic 2021-09-17 16:54:49 -07:00
Michael Scire
62fe20693e kern: optimize logging for release kernel strings (saves printf space in .text) 2021-09-17 16:44:57 -07:00
Michael Scire
d2664c60a3 kern: add new KMemoryState 2021-09-17 16:26:01 -07:00
Michael Scire
0230609cca kern: KWorkerTaskManager no longer tracks id 2021-09-17 16:20:55 -07:00
Michael Scire
e105b39ae7 kern: KSchedulerInterruptTask -> KSchedulerInterruptHandler 2021-09-17 16:18:11 -07:00
Michael Scire
05e9084e93 kern: kill the interrupt task manager thread 2021-09-17 16:12:01 -07:00
Michael Scire
a85a87a907 kern: remove per-KInterruptEventTask locks 2021-09-17 15:34:24 -07:00
Michael Scire
e10a7e7d65 kern: delete KWritableEvent, devirtualize KReadableEvent Signal/Clear 2021-09-17 15:31:25 -07:00
Michael Scire
fe03791d11 kern: KConditionVariable arbiter functions now static 2021-09-17 15:11:58 -07:00
Michael Scire
a5aed96b80 kern: optimize handle table layout 2021-09-17 15:03:21 -07:00
Michael Scire
4a1ca5f39b kern: update GetInfo logic for tick count InfoTypes 2021-09-17 14:57:08 -07:00
Michael Scire
71e87ef8d0 kern: port limit is now 0x180 2021-09-17 14:52:36 -07:00
Michael Scire
ebb0bd2b41 kern: improve single-step around user-exception entry 2021-09-11 19:41:47 -07:00
Michael Scire
c10265676f kern: fix spsr register in RestoreContext 2021-09-11 19:41:47 -07:00
Michael Scire
9e7b56b33c kern: optimize hw-single-step management 2021-09-11 19:41:47 -07:00
Michael Scire
4075d24e0c kern: add hardware single step extension 2021-09-11 19:41:47 -07:00
Michael Scire
f175802136 kern: improve some debug output 2021-08-20 00:06:43 -07:00
Michael Scire
fe79bc253a kern: fix same is_current check in GetThreadContext 2021-08-19 07:38:25 -07:00
Michael Scire
81bf8c577a kern: fix check for thread-is-current in KDebugBase::SetThreadContext 2021-08-19 07:34:08 -07:00
Michael Scire
f5704d25f8 kern: remove firmare-specific SignalAndModify impl
Nintendo made this breaking change because there was zero official software relying on it,
so it's safe for us to make the same change.
2021-07-22 15:56:45 -07:00
Michael Scire
2da31b122f kern: fix hardware watchpoint detection 2021-07-22 00:35:40 -07:00
Michael Scire
43bbfd29bb kern: fix inverted condition in context breakpoint validation 2021-07-21 23:56:28 -07:00
Michael Scire
0c596e682f exo/daybreak: advertise (and check against) supported hos version 2021-07-21 18:21:38 -07:00
Michael Scire
bd6155bcb4 kern: since 10.0.0, KDebug::GetThreadContext always returns X0-X7 2021-07-13 13:00:16 -07:00
Michael Scire
3bedf56512 kern: fix incorrect waiter management in KProcess::ReleaseUserException 2021-07-13 05:27:19 -07:00
Michael Scire
1be74ea6e2 kern: fix bug in KConditionVariable::SignalImpl 2021-07-13 01:40:16 -07:00
Michael Scire
14d458522d kern: update initial cache management to match latest kernel 2021-07-12 18:30:01 -07:00
Michael Scire
5e3339e866 kern: add missing abort on unmap failure 2021-07-11 21:59:06 -07:00
Michael Scire
2088c5a34a kern: fix handling of is_aligned parameter in DevicePageTable 2021-07-04 10:45:14 -07:00
Michael Scire
4892ffae15 kern: implement improved [new page tables are zero] invariant 2021-06-17 13:03:46 -07:00
Michael Scire
25305257d6 kern: fix missing peak set in KResourceLimit::SetLimitValue 2021-06-17 12:57:56 -07:00
Michael Scire
7821241356 kern: fix enormous whoops 2021-05-31 04:20:59 -07:00
Michael Scire
dcdf46f576 kern: slightly improve genericity of debugger break event 2021-05-30 21:13:42 -07:00
Michael Scire
4f16106702 exo/meso: update for gcc 11 compatibility 2021-04-26 20:06:18 -07:00
Michael Scire
19be54ff95 kern: fix initial process binary load on 2.0.0-4.1.0 (closes #1460) 2021-04-21 19:24:41 -07:00
Michael Scire
57b6c71c1c util: implement red black trees as templates over macros 2021-04-20 16:56:33 -07:00
Michael Scire
fbc526d163 kern: tweak KAutoObject::Open/Close codegen 2021-04-19 18:03:27 -07:00
Michael Scire
037b04ac60 kern: mostly kill magic numbers in assembly, fix SVCs >= 0x80 2021-04-14 18:01:08 -07:00
Michael Scire
96937a611d kern: fuck the KPolice^H^H^H^H^H^HPageGroups 2021-04-11 03:42:16 -07:00
Michael Scire
6faa3534bf kern: update pinning semantics for terminating threads 2021-04-11 03:42:16 -07:00
Michael Scire
afb1d68d06 kern: ensure handle table is finalized when deferring termination 2021-04-11 03:42:16 -07:00
Michael Scire
911e431d65 kern: simplify handle table registration for port/session 2021-04-11 03:42:16 -07:00
Michael Scire
ee91063bbb kern: update kdebug process management semantics 2021-04-11 03:42:16 -07:00
Michael Scire
cbdf33260e kern: update port/session state semantics 2021-04-11 03:42:16 -07:00
Michael Scire
c62a7381f8 kern: update KLightConditionVariable 2021-04-11 03:42:16 -07:00
Michael Scire
b4498734e4 kern: optimize KHandleTable to use indices instead of pointers 2021-04-11 03:42:16 -07:00