Commit Graph

421 Commits

Author SHA1 Message Date
Michael Scire
a47e5c387d kern: delete creation time field from KProcess 2023-02-23 09:00:33 -07:00
Michael Scire
7451d0c8ab kern: add InfoType_IoRegionHint 2023-02-23 09:00:32 -07:00
Michael Scire
7042cd28a1 kern: refactor priority inheritance to represent locks as C++ objects 2023-02-23 09:00:32 -07:00
Michael Scire
03d0fd0f62 kern: refactor init (kill identity map, merge cpu on logic) 2023-02-23 09:00:31 -07:00
Michael Scire
0db64c5e6f kern: use variable-count parameter arrays for DebugEvents 2023-02-23 09:00:31 -07:00
Michael Scire
913710ddf3 kern: update KSystemControl::InitializePhase1, dynamically scale 39-bit address space regions 2023-02-23 09:00:30 -07:00
Michael Scire
8afa5a9057 kern: update for new ChangePermissions page table operation 2023-02-23 09:00:30 -07:00
Michael Scire
ec29feb497 kern: simplify KSchedulerLock::Lock 2023-02-23 09:00:29 -07:00
Michael Scire
07213a23fb kern: update UnmapIoRegion for new Mapping_Memory handling 2023-02-23 09:00:28 -07:00
Michael Scire
6bd8bdc020 kern: use tree for IoPool regions instead of list 2023-02-23 09:00:28 -07:00
Michael Scire
326f737349 kern: use different psr masks for 64 and 32-bit El0 threads 2023-02-23 09:00:27 -07:00
Michael Scire
f81abe0625 kern: increase stack parameter size by 0x10 2023-02-23 09:00:27 -07:00
Michael Scire
30ecdbcf6a kern: update scheduler for new switch count tracking logic 2023-02-23 09:00:26 -07:00
Michael Scire
044c8fbd72 kern: fix unnecessarily strong load in aligned spinlock
Copy-paste error I didn't notice for two years, whoops
2023-01-24 14:39:17 -07:00
Michael Scire
63e9c62380 kern: use slab allocated KSessionRequest dynamic mappings 2022-10-12 09:15:50 -07:00
Michael Scire
22a4a85fb2 kern: implement Svc(Un)MapInsecureMemory 2022-10-12 09:15:50 -07:00
Michael Scire
9fc57cbbbb kern: move SecureAppletMemory/KPageBuffer heap into the ResourceRegion 2022-10-12 09:15:50 -07:00
Michael Scire
5f10b6670d kern: increase stack region size when thread resource limit is increased 2022-10-12 09:15:49 -07:00
Michael Scire
e4825cc879 kern: Implement new PageTable operations/PhysicalMemory reference semantics 2022-10-12 09:15:49 -07:00
Michael Scire
cfe81a7eb3 kern: update for new device map semantics 2022-10-12 09:15:49 -07:00
Michael Scire
4c74021035 kern: merge/simplify KInterruptEventTask into KInterruptEvent 2022-10-12 09:15:48 -07:00
Michael Scire
8ca94db643 kern: implement K(Secure)SystemResource 2022-10-12 09:15:48 -07:00
Michael Scire
2e9d055b19 kern: update handle table init 2022-10-12 09:15:48 -07:00
Liam
d24ea71108 KScheduler: fix documentation mistakes 2022-10-12 09:15:42 -07:00
Michael Scire
737720086b kern: codegen tweaks, now that we're no longer -Os 2022-03-23 09:16:07 -07:00
Michael Scire
4689ef9033 kern: on second thought, gcc built ins are for chumps 2022-03-23 09:16:07 -07:00
Michael Scire
8022175f5f kern: implement revised IPI/SGI semantics 2022-03-23 09:16:07 -07:00
Michael Scire
d066ac3d69 kern: update for new hw maintenance semantics 2022-03-23 09:16:06 -07:00
Michael Scire
f38d589516 kern: implement new thread context/fpu semantics 2022-03-23 09:16:06 -07:00
Michael Scire
52e51c0634 kern: implement additional randomness in KPageHeap allocations 2022-03-23 09:16:05 -07:00
Michael Scire
692742b434 kern: enforce end of dram == end of partitions (move our probably outdated KTraceBuffer to new location) 2022-03-23 09:16:04 -07:00
Michael Scire
3be59053ca kern: add new KCapability checks before creating process 2022-03-23 09:16:04 -07:00
Michael Scire
a3b74aece9 kern: add InfoType_IsSvcPermitted 2022-03-23 09:16:04 -07:00
Michael Scire
ab25a959f2 pm/kern: update for 14.0.0 2022-03-23 09:15:57 -07:00
Michael Scire
1f2822fafe abort/error: print backtrace, abuse templates, overhaul result/diag (macos not done yet) 2022-03-23 09:15:49 -07:00
Michael Scire
d7a9c7ec4c ams: support building unit test programs on windows/linux/macos 2022-03-23 09:15:46 -07:00
Michael Scire
9f7ff7a64a kern: fix syntax in audit statement 2022-03-23 09:15:41 -07:00
SciresM
00203fd7c3 Integrate new result macros. (#1780)
* result: try out some experimental shenanigans

* result: sketch out some more shenanigans

* result: see what it looks like to convert kernel to use result conds instead of guards

* make rest of kernel use experimental new macro-ing
2022-03-23 09:15:40 -07:00
Michael Scire
9436b9a555 ams: deduplicate static initialization logic 2022-01-19 16:28:54 -08:00
Michael Scire
24101aaa86 KScheduler big brain strat for mdscr_el1 cfg change 2021-11-30 16:34:43 -08:00
Michael Scire
1c7ae0d066 kern/dmnt2: allow retrieval of process info via extension
This also fixes ctrl-c break in gdbstub, and fixes crash on unknown monitor cmd.
2021-11-03 23:59:54 -07:00
Michael Scire
17ceca9140 kern: fix minor assembly bugs, avoid unnecessary function call in KScheduler hotloop 2021-10-29 17:47:13 -07:00
Michael Scire
cb7f4e7757 kern: optimize and bring into line with N our pstate.i management 2021-10-27 22:57:18 -07:00
Michael Scire
610e99b277 kern: audit (and fix) our hardware maintenance instructions to match official kernel 2021-10-27 22:57:18 -07:00
Michael Scire
dfba6af22c kern: implement 13.1.0 kernel changes 2021-10-26 01:11:18 -07:00
Michael Scire
8cc1c43ba4 kern: simplify random bitmap selection to match latest Nintendo logic 2021-10-26 01:11:18 -07:00
Michael Scire
3304c91dae kern: add (and use) generic KSystemControlBase 2021-10-26 01:11:18 -07:00
Michael Scire
de5b6169d6 kern: add toggleable support for 40-bit physaddr caps 2021-10-26 01:11:17 -07:00
Michael Scire
194e58a3e3 kern/test: add wip qemu-virt board support to mesosphere 2021-10-26 01:11:16 -07:00
Michael Scire
1713d12946 kern: devirtualize KReadableEvent::Reset, KWorkerTask::DoWorkerTask 2021-10-26 01:11:15 -07:00