Michael Scire
|
726d7b6e4d
|
kern: tweak optimization settings for hot paths
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
ab8de72db0
|
microkernel: hot paths are pretty fucking hot
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
fd745ab2d3
|
kern: fix SvcGetResourceLimitPeakValue
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
0a1465f198
|
kern: add new overflow checks on KMemoryRegions
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
e400e2afc7
|
kern: stubs for Svc39, 3A, 46, 47
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
28f9b534b6
|
kern: implement 64-virtual-core interface
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
1852fe8612
|
kern: improve KSynchronizationObject, kill KSynchronization
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
783f1077be
|
kern: KObjectContainer::Register -> void
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
f469dfbeb3
|
kern: SvcGetResourceLimitPeakValue
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
dbe59fd041
|
kern: fix KCodeMemory SVCs when Owner process != Generator process
|
2020-09-17 08:26:08 -07:00 |
|
Michael Scire
|
49af4fae32
|
kern: begin 1.0.0 backwards compat changes (kips run, full boot fails)
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
e8ffbe630f
|
kern: support 2-pool layout on 2.x-4.x instead of modern 4-pool layout
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
496f93ccdb
|
kern: expose mesosphere meta over GetInfo instead of GetSystemInfo
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
79c9bed528
|
kern/pm: support for 5.x under mesosphere
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
e5d30217d3
|
kern: fix reference leak in KThread::GetThreadFromId callers
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
b8c2782ede
|
kern: SvcLegacyGetFutureThreadInfo
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
1b63002f91
|
kern: refactor KMemoryLayout
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
e1bd6fb874
|
kern: fix missing scheduler updates in KLightLock/Exception, fix RequestScheduleOnInterrupt
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
f9d68db3f6
|
kern: SvcChangeKernelTraceState
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
89f1c0ce33
|
kern: remove stray log in SetHeapSize
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
73798cb812
|
kern: build with -Wextra
|
2020-08-17 14:20:24 -07:00 |
|
Michael Scire
|
3fd4002bc9
|
kern: complete final SVC stubs (KernelDebug/Trace debug-impl still TODO)
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
5d462c626c
|
kern: SvcReturnFromException
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
5c4fbf5c67
|
kern SvcGetDebugThreadContext, SvcSetDebugThreadContext
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
3afd723b92
|
kern: SvcGetDebugThreadParam
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
c9f8252577
|
kern: resolve MESOSPHERE_UNIMPLEMENTEDs other than UserException
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
325802e29d
|
kern: Add real SvcBreak implementation
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
4c3c910774
|
kern: SvcBreakDebugProcess, SvcTerminateDebugProcess
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
b88e09de5b
|
kern: SvcSetHardwareBreakPoint
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
b143f1e05f
|
kern: Svc(Legacy)ContinueDebugEvent
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
3289b45408
|
kern: Add 4.x InitialProcessIdRange to SvcGetInfo
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
91fa0d651f
|
kern: SvcQueryPhysicalAddress
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
9bc2c0c0c5
|
kern: style parity for return in GetThreadList
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
96c3dfee14
|
kern: SvcGetThreadList
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
51084c0837
|
kern: SvcGetLastThreadInfo, SvcGetDebugFutureThreadInfo
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
0993ae0685
|
kern: SvcFlushDataCache, SvcFlushEntireDataCache
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
f6f43300e0
|
kern: SvcReadDebugProcessMemory, SvcWriteDebugProcessMemory
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
3f17a34b67
|
SvcQueryDebugProcessMemory
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
8922bbd108
|
kern: SendSyncRequestLight, ReplyAndReceiveLight
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
bb7f320f7f
|
kern: fix nonsensical copy/pasted comments in QueryMemory
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
94a170c437
|
kern: QueryMemory64From32, QueryProcessMemory64From32
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
39b22cee8c
|
kern: implement KCodeMemory (and SVCs)
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
3fb3beeaff
|
kern: SvcGetSystemTick
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
4bb9ef061a
|
kern: implement SvcGetThreadContext3
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
787964f7e7
|
kern: implement thread pinning/SvcSynchronizePreemptionState
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
4ac94e9179
|
kern: improve KLightLock accuracy
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
840ab0785c
|
kern: SvcMapPhysicalMemoryUnsafe, SvcUnmapPhysicalMemoryUnsafe
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
1b9acc4a6a
|
kern: SvcUnmapPhysicalMemory, cleanup thread pinning
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
cbecda2a27
|
kern: SvcQueryProcessMemory64, notification SvcBreaks
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
5ecc80a5f6
|
kern: implement SvcMapPhysicalMemory
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
695b82b945
|
kern: finish SvcGetInfo
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
fd9b986938
|
kern: Implement SecureMemory (system resource)
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
9231646f33
|
kern: implement SvcSleepSystem
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
418de7b0dc
|
kern: SvcInvalidateProcessDataCache
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
11d5353827
|
kern: SvcMapProcessCodeMemory, SvcUnmapProcessCodeMemory
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
1d4d637818
|
kern SvcGetCurrentProcessorNumber, SvcSetProcessActivity, half of SvcSetThreadActivity
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
23eed522d3
|
kern: SvcGetThreadCoreMask, SvcSetThreadCoreMask
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
c622539b95
|
kern: SvcSetMemoryPermission
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
d87a9f011c
|
kern: implement transfer memory (and SVCs)
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
28aab09b5d
|
kern: implement process exit
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
3917ecad46
|
kern: add SvcFlushProcessDataCache, SvcStoreProcessDataCache
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
ab96255a5d
|
kern: implement SvcSetMemoryAttribute
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
eecf59dd00
|
kern: fix bugs in interrupt permittance, DpcManager init
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
afe7e41de8
|
kern: SvcGetProcessInfo, SvcTerminateProcess
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
7aa3120f60
|
kern: fully implement KSharedMemory (and Svcs)
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
81db43932d
|
kern: add SvcStartProcess
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
8759cb4da3
|
kern: implement first half of SvcCreateProcess
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
fb6e85b291
|
kern: implement SvcMapProcessMemory, SvcUnmapProcessMemory
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
3265927ed7
|
kern: KDevicePageTable::Finalize, InfoType_RandomEntropy
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
058f223b97
|
kern: finish SvcGetSystemInfo
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
266001ded4
|
kern: implement ResourceLimit Svcs
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
ea6000b372
|
kern: add ResourceLimit to svcGetInfo
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
4fca870f2f
|
kern: fix incorrect cache routines, implement SvcSetProcessMemoryPermission
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
26df56cd87
|
kern: implement SvcCancelSynchronization
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
5b8a20dbf7
|
kern: fix bug in SvcSetThreadPriority
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
94f9cc1626
|
kern: SvcCreateSession, KDebug finalization
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
36eb78a3ce
|
kern: implement SvcDebugActiveProcess, svcGetDebugEvent, SvcWaitProcessWideKeyAtomic
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
75e6999668
|
kern: implement SvcSetThreadPriority
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
a0cc22302c
|
kern: add KAddressArbiter::WaitIfEqual
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
01a7606f95
|
kern: implement SvcSetHeapSize
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
9c4c058307
|
kern: implement all device address space svcs
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
0d3aa13f70
|
kern: add infra (but not impl) for all DeviceAddressSpace svcs
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
fe035736ca
|
kern: implement SvcGetProcessList
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
cfddb75398
|
kern: add SvcCreateDeviceAddressSpace, SvcAttachDeviceAddressSpace
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
04f325cf5a
|
kern: implement SvcCreateInterruptEvent
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
b35380a942
|
kern: implement SvcCreateEvent, SvcSignalEvent, SvcClearEvent, SvcResetSignal
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
93be2ffcba
|
kern: add SvcCreatePort, SvcConnectToPort
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
9f79710cb7
|
kern: add SvcReadWriteRegister
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
d9e9fbe3c2
|
kern: Implement QueryIoMapping logic for < 8.0.0
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
ff022115ca
|
kern: Support older SVC ABIs
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
18698bf1d3
|
kern: add SvcQueryIoMapping (NOTE: pre-10.x, ABI needs update)
|
2020-07-13 13:24:32 -07:00 |
|
Michael Scire
|
57867d6ced
|
kern: fix/add InfoType_(Total/Used)(NonSystem/)MemorySize
|
2020-07-13 12:17:28 -07:00 |
|
Michael Scire
|
ca9327a120
|
kern: implement SvcSleepThread for ns > 0
|
2020-07-10 23:30:15 -07:00 |
|
Michael Scire
|
d52655eaf1
|
kern: add SvcExitThread, SvcSendAsyncRequestWithUserBuffer, SvcReplyAndReceiveWithUserBuffer
|
2020-07-10 15:31:23 -07:00 |
|
Michael Scire
|
4e667bc7c1
|
kern: implement remaining non-KServerSession:: part of Reply/Receive
|
2020-07-10 11:55:33 -07:00 |
|
Michael Scire
|
1b2203d102
|
kern: implement SvcSendSyncRequest(WithUserBuffer)
|
2020-07-10 11:55:33 -07:00 |
|
Michael Scire
|
4f12449acf
|
kern: implement SvcArbitrateLock, SvcArbitrateUnlock
|
2020-07-10 11:55:33 -07:00 |
|
Michael Scire
|
f4fd4cbbb2
|
kern: skeleton SvcReplyAndReceive
|
2020-07-10 11:55:33 -07:00 |
|
Michael Scire
|
be98aaa185
|
kern: partially implement SvcSignalProcessWideKey
|
2020-07-10 11:55:33 -07:00 |
|
Michael Scire
|
7f4c6ae9e7
|
kern: implement SvcCreateThread, SvcStartThread
|
2020-07-10 11:55:33 -07:00 |
|