Michael Scire
4892ffae15
kern: implement improved [new page tables are zero] invariant
2021-06-17 13:03:46 -07:00
Michael Scire
96937a611d
kern: fuck the KPolice^H^H^H^H^H^HPageGroups
2021-04-11 03:42:16 -07:00
Michael Scire
85f9355184
kern: use KScopedLightLockPair helper for page table pair-locks
2021-04-11 03:42:16 -07:00
Michael Scire
60b5bd73b7
kern: track mapped ipc server memory in page table
2021-04-11 03:42:16 -07:00
Michael Scire
53e7aa0a20
kern: add KPageTableBase::Read/WriteDebugIoMemory
2021-04-11 03:42:16 -07:00
Michael Scire
4aa18b06e8
kern: greatly improve codegen for atomics, scheduler
2021-01-08 02:13:43 -08:00
Michael Scire
968f50bc07
kern: refactor to use m_ for member variables
2020-12-18 13:31:01 -08:00
Michael Scire
be8473cf65
kern: implement memory debug
2020-12-10 16:32:19 -08:00
Michael Scire
1a6e003a5d
kern: add kernel object debug
2020-12-10 03:31:57 -08:00
Michael Scire
7b279ab863
kern: remove KPageTableBase::MakeAndOpenContiguousPageGroup
2020-12-02 06:43:37 -08:00
Michael Scire
6a85f7225d
kern: implement DisableDeviceAddressSpaceMerge
2020-12-02 06:43:37 -08:00
Michael Scire
281dcf232a
kern: update KMemoryBlockManagerUpdateAllocator api
2020-12-02 06:43:37 -08:00
Michael Scire
4a216dc928
kern: update KPageTableBase for new disable-merge attrs
2020-12-02 06:43:37 -08:00
Michael Scire
1b63002f91
kern: refactor KMemoryLayout
2020-08-18 15:17:40 -07:00
Michael Scire
91fa0d651f
kern: SvcQueryPhysicalAddress
2020-07-31 14:50:52 -07:00
Michael Scire
f6f43300e0
kern: SvcReadDebugProcessMemory, SvcWriteDebugProcessMemory
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
39b22cee8c
kern: implement KCodeMemory (and SVCs)
2020-07-31 14:50:52 -07:00
Michael Scire
840ab0785c
kern: SvcMapPhysicalMemoryUnsafe, SvcUnmapPhysicalMemoryUnsafe
2020-07-31 14:50:52 -07:00
Michael Scire
5ecc80a5f6
kern: implement SvcMapPhysicalMemory
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
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
ab96255a5d
kern: implement SvcSetMemoryAttribute
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
51311a7332
kern: add KProcess::Initialize (for non-kip processes)
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
0d3aa13f70
kern: add infra (but not impl) for all DeviceAddressSpace svcs
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
a8d4b10b17
kern: implement IPC KPageTable functionality
2020-07-12 15:42:47 -07:00
Michael Scire
f37eda6b86
kern: implement KPageTableBase::CopyHeapToHeap(WithoutCheckDestination)
2020-07-10 21:37:56 -07:00
Michael Scire
c72bdec328
kern: add KPageTableBase::CopyMemory Linear <-> User and Linear <-> Kernel
2020-07-10 20:09:06 -07:00
Michael Scire
804aa0e55d
ipc: add MapAlias processing logic for Receive
2020-07-10 11:55:33 -07:00
Michael Scire
a510a1138d
ipc::Reply -> add raw data copy logic
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
9503aae522
kern: implement SvcMapMemory
2020-07-10 11:55:33 -07:00
Michael Scire
16c9c53a4a
kern: implement KEvent, KWritableEvent, KServerSession::OnClientClosed
2020-07-10 11:55:33 -07:00
Michael Scire
1a0696f8a3
kern: implement SvcUnmapMemory, more of SvcGetInfo
2020-07-10 11:55:33 -07:00
SciresM
3a1ccdd919
Switch atmosphere's build target to C++20. ( #952 )
...
* ams: update to build with gcc10/c++20
* remove mno-outline-atomics
* ams: take care of most TODO C++20s
* fusee/sept: update for gcc10
* whoosh, your code now uses pre-compiled headers
* make: dependency fixes
2020-05-11 15:02:10 -07:00
Michael Scire
152a945561
kern: Update page bitmaps/alloc to reflect 10.0.0 changes
2020-04-18 17:10:26 -07:00
Michael Scire
96d15b28c6
kern: implement CallSecureMonitor, some of GetInfo/GetSystemInfo
2020-03-18 00:09:50 -07:00
Michael Scire
efae01c165
kern: implement KUserPointer (and test with QueryMemory) in advance of svc dev
2020-02-20 09:05:24 -08:00
Michael Scire
c568788609
kern: implement KProcess::Run
2020-02-19 19:38:20 -08:00
Michael Scire
28ea0b12a8
kern: implement SetProcessMemoryPermission
2020-02-19 08:07:44 -08:00
Michael Scire
b857153964
kern: finish KProcess::Initialize() for KIPs
2020-02-19 06:46:59 -08:00
Michael Scire
b99bcbc619
kern: implement MapIo
2020-02-19 05:35:22 -08:00
Michael Scire
905ce0eeea
kern: implement capabilities parsing
2020-02-19 04:55:00 -08:00
Michael Scire
05a3e95834
kern: implement process(pagetable) init
2020-02-19 01:22:27 -08:00