Michael Scire
|
6113ffa191
|
kern: refactor smc helpers to share more common logic
|
2024-03-28 03:42:37 -07:00 |
|
Michael Scire
|
48e86f0406
|
kern: return ExceptionType_UnalignedData on data abort caused by alignment fault
|
2024-03-28 02:52:32 -07:00 |
|
Michael Scire
|
bf3203da0f
|
kern: add KPageGroup::CopyRangeTo
|
2024-03-28 02:50:37 -07:00 |
|
Michael Scire
|
af7a200865
|
kern: implement new attr tracking for memory range/traversal context
|
2024-03-28 02:30:24 -07:00 |
|
Michael Scire
|
cfb12deb51
|
kern: simplify size calculations in KPageTableBase::Read/WriteDebugIoMemory
|
2024-03-28 02:22:19 -07:00 |
|
Michael Scire
|
4aac5f0082
|
kern: pass properties directly to KPageTableBase::AllocateAndMapPagesImpl
|
2024-03-28 02:19:45 -07:00 |
|
Michael Scire
|
f5a9d1d6e8
|
kern: take alignment argument in KMemoryManager::AllocateAndOpen
|
2024-03-28 02:17:38 -07:00 |
|
Michael Scire
|
5e63792a67
|
kern/os: support CreateProcessFlag_EnableAliasRegionExtraSize
|
2024-03-28 02:07:04 -07:00 |
|
Michael Scire
|
8cacb07d5f
|
kern: revise KPageTableBase region layout logic to match 18.0.0 changes
|
2024-03-28 01:47:36 -07:00 |
|
Michael Scire
|
4301e948cc
|
kern: fix longstanding bug in ConvertToKMemoryPermission
|
2024-03-28 00:25:48 -07:00 |
|
Michael Scire
|
c331216f99
|
kern: pass kernel base from KernelLdr to Kernel
|
2024-03-28 00:24:45 -07:00 |
|
Michael Scire
|
b12e89d0a9
|
kern: use userspace access instructions to read from tlr
|
2024-03-28 00:18:31 -07:00 |
|
Michael Scire
|
e09ba765a1
|
kern: fix various comment/style hygiene issues (thanks @liamwhite)
|
2023-12-27 23:24:35 -07:00 |
|
Michael Scire
|
3217df147e
|
kern: allow ktrace map capability when ktrace is disabled
|
2023-12-27 23:17:52 -07:00 |
|
Michael Scire
|
872c18c501
|
kern: fix some comment typos
|
2023-11-01 10:25:31 -07:00 |
|
Michael Scire
|
afc0e14556
|
kern/svc: fix query/insecure names
|
2023-11-01 10:24:13 -07:00 |
|
Michael Scire
|
693fb423cb
|
kern: fix minor sin
|
2023-10-12 14:25:17 -07:00 |
|
Michael Scire
|
6d0bf70783
|
kern: fix assert usage in process load
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
06a840e550
|
kern: fix operation type enum-value whoops
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
11c02e22e0
|
kern: implement support for applying relr relocations
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
f93aea4c06
|
kern: split Process/Thread exit to separate WorkerTaskManagers
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
4ddfb6183c
|
kern: split out GetInstructionDataUserMode in exception handler
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
3737151a2f
|
kern: Add special-case for InvalidateProcessDataCache on current process
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
2a4d68f916
|
kern: KPageTable: remove MapFirst operation, replace with MapFirstGroup
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
7b523cfc8d
|
kern: note OnFinalize calls in KPageTable::Finalize
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
39a95d4023
|
kern: implement new default application system resource field in KProcess
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
2c5002ce50
|
kern: update KMemoryRegionType values for new ids + SecureUnknown region
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
b7384a8667
|
kern: KSupervisorPageTable now checks wxn instead of setting it
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
85b5f20395
|
kern: KPageTable::Initialize no longer takes unused process id
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
ad5bd81d3f
|
kern: implement PermissionLock, update KPageTableBase attribute/alignment checks
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
777b6d285c
|
kern: KPageTableBase::CheckMemoryState now invokes a helper
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
ae2c25e9c8
|
kern: update KMemoryState, remove bijection (separate IoRegister/IoMemory)
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
3b8f65d502
|
kern: update initial process load logic to do per-segment mapping/decompression
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
cfd2d5b012
|
kern: clear new pages in init page allocator, not init page table
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
c72ba35684
|
kern: add speculation barriers after eret
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
ec96203cb7
|
kern: remove unnecessary fields from InitArgs (0x80 -> 0x40)
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
0daef4a6e8
|
kern/ldr: move crt0 into .rodata
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
4ca3c44e5f
|
kern: pass ini1 size from loader to kernel, remove slab memset from init0
|
2023-10-12 08:55:58 -07:00 |
|
Michael Scire
|
1f5ec68a5c
|
ams: fix compilation with gcc 13
|
2023-05-07 03:36:46 -07:00 |
|
Michael Scire
|
ed9e60acb9
|
kern: track heap in KPageTableBase::MemoryRange
|
2023-04-30 16:50:53 -07:00 |
|
Michael Scire
|
e9b28ab4b1
|
kern: adjust wording to be more technically correct
|
2023-03-27 10:54:58 -07:00 |
|
Michael Scire
|
a8df400825
|
kern: fix stray addressof operator
|
2023-03-08 09:46:38 -07:00 |
|
Michael Scire
|
8da4d14e15
|
kern: minor cleanup (thanks @liamwhite)
|
2023-03-06 21:18:00 -07:00 |
|
Michael Scire
|
3292ea5970
|
kern: fix stray comment copy/paste error
|
2023-02-23 22:00:00 -07:00 |
|
Michael Scire
|
d64ab354ad
|
kern: 16.x web applet crashes on exit with 48 MB stolen (rip)
|
2023-02-22 17:19:51 -08:00 |
|
Michael Scire
|
406320f6ec
|
kern: better divide non-secure size, don't waste fatal memory unless necessary
|
2023-02-22 17:19:51 -08:00 |
|
Michael Scire
|
aad2be0a01
|
kern: delete creation time field from KProcess
|
2023-02-22 17:19:51 -08:00 |
|
Michael Scire
|
25383db524
|
kern: add InfoType_IoRegionHint
|
2023-02-22 17:19:51 -08:00 |
|
Michael Scire
|
48f4c526f3
|
kern: refactor priority inheritance to represent locks as C++ objects
|
2023-02-22 17:19:51 -08:00 |
|
Michael Scire
|
1279d236f3
|
kern: remove unnecessary interrupt disables from arbiter/condvar
|
2023-02-22 17:19:51 -08:00 |
|