Michael Scire
51b5c3d87d
ams: avoid UB infinite loops
2020-08-13 17:28:29 -07:00
Michael Scire
874208b44a
sf: handle serialization errors more accurately and gracefully
2020-08-11 16:40:57 -07:00
Michael Scire
44c5cb9789
ams: add support for cpu-extension specific source files
2020-08-11 11:43:34 -07:00
Michael Scire
420bc7df9b
ams: update build system to add generic-fallback support
2020-08-11 11:22:56 -07:00
Michael Scire
ee5a095c1a
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "cac5957d"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "cac5957d"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2020-08-02 15:03:17 -07:00
Michael Scire
3726def6ec
ams: dump version to 0.14.1
2020-08-02 15:02:43 -07:00
Michael Scire
29358dc593
kernel_ldr: use unoptimized memcpy before mmu bringup ( closes #1102 )
...
Before the MMU is up, all reads/writes must be aligned; the optimized
memcpy implementation does not guarantee all reads/writes it performs
are aligned.
This commit splits the libc impl to be separate for kernel/kernel_ldr,
and so now only kernel will use the optimized impl. This is safe,
as the MMU is brought up before kernel begins executing.
2020-08-02 14:40:28 -07:00
Michael Scire
a82914d58e
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "f288b81b"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "f288b81b"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2020-08-01 15:37:27 -07:00
Michael Scire
0508b5d31b
target firmware: I am remarkably bad at this
2020-08-01 15:36:50 -07:00
Michael Scire
235c070a37
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "4e80a401"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "4e80a401"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2020-08-01 15:36:09 -07:00
Michael Scire
82f757459e
target firmware: fix typo
2020-08-01 15:35:38 -07:00
Michael Scire
b2b47da8c1
git subrepo push libraries
...
subrepo:
subdir: "libraries"
merged: "27c71f4e"
upstream:
origin: "https://github.com/Atmosphere-NX/Atmosphere-libs "
branch: "master"
commit: "27c71f4e"
git-subrepo:
version: "0.4.1"
origin: "???"
commit: "???"
2020-08-01 15:34:13 -07:00
Michael Scire
b65707efd9
ams: add support for 10.1.1
2020-08-01 15:29:59 -07:00
Michael Scire
91bbdf2baf
TimeSpan: fix FromDays
2020-07-31 14:52:00 -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
8cd81b3092
kern: fix dynamic calculation of slab heap size
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
e1f3bb10a5
kern: clean up majority of TODOs
2020-07-31 14:50:52 -07:00
Michael Scire
bea550ebce
kern: resolve final non-user-exception MESOSPHERE_UNIMPLEMENTED
2020-07-31 14:50:52 -07:00
Michael Scire
85f533e6c4
kern: SvcGetDebugEventInfo64From32
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
e4b30f4022
kern: build without unwind tables for lto
2020-07-31 14:50:52 -07:00
Michael Scire
f6f43300e0
kern: SvcReadDebugProcessMemory, SvcWriteDebugProcessMemory
2020-07-31 14:50:52 -07:00
Michael Scire
f866f37cdc
kern: panic on failure-to-open auto object in debug config
2020-07-31 14:50:52 -07:00
Michael Scire
008bfc27f3
kern: automatic PC alignment on ERET is implementation defined
2020-07-31 14:50:52 -07:00
Michael Scire
7352d87b20
kern: switch memset to optimized impl
2020-07-31 14:50:52 -07:00
Michael Scire
9ddb4194b3
kern: use optimized memcmp/memcpy implementations
2020-07-31 14:50:52 -07:00
Michael Scire
3f17a34b67
SvcQueryDebugProcessMemory
2020-07-31 14:50:52 -07:00
Michael Scire
5de853b662
kern: fix ARM vs THUMB mode selection on 32-bit entry
2020-07-31 14:50:52 -07:00
Michael Scire
36a3909a24
kern: fix whoops in light ipc
2020-07-31 14:50:52 -07:00
Michael Scire
8922bbd108
kern: SendSyncRequestLight, ReplyAndReceiveLight
2020-07-31 14:50:52 -07:00
Michael Scire
b6cb561c47
kern: fix slab heap atomics
2020-07-31 14:50:52 -07:00
Michael Scire
2db6760461
kern: fix bug in server handle cleanup
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
7cf0432569
kern: add KCodeMemory code left out of previous commit
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
f70ee67753
kern: correct behavior when setting activity/core mask for pinned thread
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
b1f38be3ae
kern: fix building under release config
2020-07-31 14:50:52 -07:00
Michael Scire
9dc3e025fc
kern: Map L1/L2 blocks when possible
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
1448068b69
kern: fix assertion in KThread::(Try)Suspend
2020-07-31 14:50:52 -07:00
Michael Scire
0af44d2875
kern: fix bug in page table mapping calculations
2020-07-31 14:50:52 -07:00
Michael Scire
a4d376cc0f
kern: fix hardware timer task corruption on core migration
2020-07-31 14:50:52 -07:00
Michael Scire
840ab0785c
kern: SvcMapPhysicalMemoryUnsafe, SvcUnmapPhysicalMemoryUnsafe
2020-07-31 14:50:52 -07:00
Michael Scire
583899ede3
kern: General system stability improvements to enhance the user's experience.
2020-07-31 14:50:52 -07:00
Michael Scire
2ad9927a88
kern: Fix bug in thread core migration
2020-07-31 14:50:52 -07:00
Michael Scire
893b046111
kern: update interrupt manager
2020-07-31 14:50:52 -07:00
Michael Scire
3a01fd1ebc
svc: add BreakReason flags
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
46935fea80
kern: fix resource leak bugs
2020-07-31 14:50:52 -07:00
Michael Scire
11d5353827
kern: SvcMapProcessCodeMemory, SvcUnmapProcessCodeMemory
2020-07-31 14:50:52 -07:00
Michael Scire
240e6227e9
kern: Fix bug when reducing heap size
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
185baa7c4d
boot2: work around pcv<->fs<->settings race condition
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
632a75eee7
kern: KConditionVariable::SignalImpl
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
51311a7332
kern: add KProcess::Initialize (for non-kip processes)
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
3cf793f87e
kern: implement KThread::Finalize
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
0c82709af4
kern: fix attribute checks in device unmap
2020-07-31 14:50:52 -07:00
Michael Scire
058f223b97
kern: finish SvcGetSystemInfo
2020-07-31 14:50:52 -07:00
Michael Scire
43ad4eb794
kern: fix asid tlb invalidation
2020-07-31 14:50:52 -07:00
Michael Scire
dea1235e12
kern: dump page table on user exception
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