Michael Scire
b70e367745
kern/ldr: add support for --x executables
2024-10-15 21:51:39 -07:00
Michael Scire
49f2449073
kern/strat: update for new DebugFlags capability semantics
2024-10-15 21:51:38 -07:00
Michael Scire
0c85274c14
kern: allocate all TTBR0 pages during init, use procidx as asid
2024-10-15 21:51:37 -07:00
Michael Scire
89bfecb6b6
kern/svc: update WaitForAddress to support 64-bit WaitIfEqual
2024-10-15 21:51:35 -07:00
Michael Scire
e0998df82e
kern: refactor smc helpers to share more common logic
2024-03-29 02:55:05 -07:00
Michael Scire
6571df6cbc
kern: implement new attr tracking for memory range/traversal context
2024-03-29 02:55:04 -07:00
Michael Scire
60e3c8a4cc
kern/os: support CreateProcessFlag_EnableAliasRegionExtraSize
2024-03-29 02:55:02 -07:00
Michael Scire
43b8461b5f
kern/svc: fix query/insecure names
2023-11-16 16:25:26 -07:00
Michael Scire
e07b0a924d
kern: Add special-case for InvalidateProcessDataCache on current process
2023-10-12 09:22:26 -07:00
Michael Scire
6dcf506423
kern: KPageTable: remove MapFirst operation, replace with MapFirstGroup
2023-10-12 09:22:25 -07:00
Michael Scire
9f51df06d5
kern: KSupervisorPageTable now checks wxn instead of setting it
2023-10-12 09:22:24 -07:00
Michael Scire
41eea11a19
kern: KPageTable::Initialize no longer takes unused process id
2023-10-12 09:22:24 -07:00
Michael Scire
c8f04e21e5
kern: update KMemoryState, remove bijection (separate IoRegister/IoMemory)
2023-10-12 09:22:23 -07:00
Michael Scire
a6e34647de
kern: clear new pages in init page allocator, not init page table
2023-10-12 09:22:22 -07:00
Michael Scire
8d84b5776f
kern: add speculation barriers after eret
2023-10-12 09:22:22 -07:00
Michael Scire
d21f281094
kern: remove unnecessary fields from InitArgs (0x80 -> 0x40)
2023-10-12 09:22:22 -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
8afa5a9057
kern: update for new ChangePermissions page table operation
2023-02-23 09:00:30 -07:00
Michael Scire
07213a23fb
kern: update UnmapIoRegion for new Mapping_Memory handling
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
22a4a85fb2
kern: implement Svc(Un)MapInsecureMemory
2022-10-12 09:15:50 -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
8ca94db643
kern: implement K(Secure)SystemResource
2022-10-12 09:15:48 -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
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
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
3304c91dae
kern: add (and use) generic KSystemControlBase
2021-10-26 01:11:18 -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
62bdae5b3f
kern: devirtualize most things that are free to devirtualize (see #1672 )
2021-10-26 01:11:15 -07:00
SciresM
823c0df6b9
kern: avoid constexpr init for many objects (avoids unnecessary memory clear) ( #1668 )
2021-10-26 01:11:13 -07:00
Michael Scire
d9d6d52575
kern: remove spurious assertion
2021-10-26 01:11:12 -07:00
Michael Scire
573769303b
kern: update scheduler for 13.0.0 change, fix some ctz/clz bugs
2021-10-26 01:11:11 -07:00
Michael Scire
960c5c19f9
ams: improve offsetof style consistency
2021-10-26 01:11:10 -07:00
Michael Scire
002422d5dc
ams: the copyright^H^H^H^H^H^H^Hmplex plane is the algebraic closure of the reals
2021-10-07 23:06:25 -07:00
Michael Scire
204b389252
kern: devirtualize page table operations
2021-09-24 09:17:11 -07:00
Michael Scire
ecb607bade
kern/svc: implement IoPool/Region svc support
2021-09-19 10:35:39 -07:00
Michael Scire
b579a6d75e
svc/kern/dd: remove MapDeviceAddressSpace()
2021-09-19 10:35:39 -07:00
Michael Scire
3e328eae72
kern: update Initialize0 for new arguments/randomization semantics
2021-09-19 10:35:38 -07:00
Michael Scire
1ac249dd13
kern: support dynamic resource expansion for system heaps/events/sessions.
2021-09-19 10:35:38 -07:00
Michael Scire
2913096bc4
kern: kill the interrupt task manager thread
2021-09-19 10:35:36 -07:00