01bc0c84f0
Merge pull request #8512 from german77/nnResult
...
Replace multiple names with a better name
2022-06-28 16:59:33 -07:00
c78f6d4f20
Merge pull request #8504 from comex/mesosphere-current-process
...
Support `InfoType_MesosphereCurrentProcess`
2022-06-27 13:05:07 -07:00
7b48e7b363
core: kernel: Replace instances of KPageLinkedList with KPageGroup
2022-06-26 20:21:45 -05:00
a7d9be1384
core: Replace all instances of ResultCode with Result
2022-06-26 20:21:37 -05:00
bf7e78795f
Re-add missing case
and braces, and trim whitespace
2022-06-25 18:01:56 -07:00
a14438d013
Update src/core/hle/kernel/svc.cpp
...
Co-authored-by: liamwhite <liamwhite@users.noreply.github.com >
2022-06-25 18:00:29 -07:00
48737a4bb2
Support InfoType_MesosphereCurrentProcess
2022-06-25 16:23:23 -07:00
2c56e94702
kernel: make current thread pointer thread local
2022-06-23 00:28:00 -04:00
cf7e4bda92
Implement ExitProcess svc
...
Currently this just stops all the emulation
This works under assumption that only application will try to use
ExitProcess, with services not touching it
If application exits - it quite makes sense to end the emulation
2022-06-16 21:35:34 +03:00
f86b770ff7
Merge pull request #8457 from liamwhite/kprocess-suspend
...
kernel: implement KProcess suspension
2022-06-16 02:41:12 +02:00
23514388ed
Merge pull request #8464 from liamwhite/break-debug
...
kernel: notify debugger on break SVC
2022-06-15 11:55:54 -04:00
a7358ff1d4
kernel: notify debugger on break SVC
2022-06-14 21:06:23 -04:00
20eab9fed9
core: centralize profile scope for Dynarmic
2022-06-14 18:19:04 -04:00
888f499188
kernel: implement KProcess suspension
2022-06-14 10:04:11 -04:00
084d7d6b01
common: Change semantics of UNREACHABLE to unconditionally crash
2022-06-13 20:09:00 -04:00
8eabdc058b
kernel: svc: Replace -1ULL with 0xFFFFFFFFFFFFFFFF
...
Resolves the C4146 compiler warning on MSVC.
2022-04-24 17:40:47 -04:00
99ceb03a1c
general: Convert source file copyright comments over to SPDX
...
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-23 05:55:32 -04:00
3b91d213b1
hle: kernel: Invalidate entire icache in UnmapProcessMemory and UnmapCodeMemory ( fixes #8174 )
2022-04-09 13:29:19 +02:00
1b3dba329a
hle: kernel: svc: MapProcessMemory: Fix usage of KPageLinkedList to use physical address space.
2022-03-26 01:35:37 -07:00
3bc0c2a625
hle: kernel: svc: CreateCodeMemory: Remove log of 'out' host pointer.
...
- This does not seem terribly useful and is inconsistent with other usage.
2022-03-26 01:34:29 -07:00
4e2401c11a
hle: kernel: svc: UnmapProcessCodeMemory: Fix inverted alignment check.
2022-03-26 01:01:55 -07:00
57ebcbf2c4
core: hle: kernel: KEvent: Pass in owner KProcess on event creation.
...
- This is necessary to ensure resource limits are freed from the right process.
2022-02-21 12:41:06 -08:00
c3242abe95
kernel: svc: Add OutputDebugString32, CreateCodeMemory32, ControlCodeMemory32
...
Very straightforward, they are just wrappers to the 64-bit version of
the SVC.
2022-02-15 00:45:19 +01:00
d0c7c3f64f
svc: Set unique names for function tables
2022-02-08 21:03:31 -06:00
16bf50e610
service: pm: Implement AtmosphereGetProcessInfo
2022-02-04 01:41:36 +01:00
1ed22b4613
svc: Add 32 bit SynchronizePreemptionState
...
Used by Espgaluda II
2022-01-31 19:02:41 -06:00
b8b1b58f36
core: hle: kernel: Rename Un/Map to Un/MapMeory.
2022-01-22 01:33:26 -08:00
49a0e4330e
hle: kernel: k_page_table: Update SetProcessMemoryPermission.
2022-01-11 16:28:11 -08:00
081669c334
hle: kernel: k_page_table: Rename *ProcessCodeMemory -> *CodeMemory.
2022-01-11 16:28:11 -08:00
af4696657c
core: hle: kernel: svc: Updates to SetMemoryAttribute and SetMemoryPermission.
2022-01-08 12:18:14 -08:00
3a89723d97
core: hle: kernel: Implement thread pinning.
...
- We largely had the mechanics in place for thread pinning, this change hooks these up.
- Validated with tests https://github.com/Atmosphere-NX/Atmosphere/blob/master/tests/TestSvc/source/test_thread_pinning.cpp .
2021-12-30 15:50:45 -08:00
091463a429
core: hle: kernel: Updated implementation of svcSetHeapSize.
...
- Updates our svcSetHeapSize with latest HOS, furthermore allowing heap size to properly be extended/shrunk.
- Validated with tests https://github.com/Atmosphere-NX/Atmosphere/blob/master/tests/TestSvc/source/test_set_heap_size.cpp .
2021-12-28 01:25:20 -08:00
4e7a6639d2
core: hle: kernel: Implement SetMemoryPermission.
...
- Not seen in any games yet, but validated with kernel tests.
2021-12-23 01:10:36 -08:00
49e3c073a5
hle: kernel: svc: GetInfo: Fix error checking with IdleTickCount.
...
- Enforce tha the supplied handle is invalid, not valid.
- This gets Witcher 3 booting.
2021-12-21 22:41:23 -08:00
c73841500a
core: hle: Remove global HLE lock.
...
- This was added early on as a hack to protect against some concurrency issues.
- It's not clear that this serves any purpose anymore, and if it does, individual components should be fixed rather than using a global recursive mutex.
2021-12-17 16:05:51 -08:00
280c779898
Merge pull request #7462 from bunnei/kernel-improve-scheduling
...
Kernel: Improve threading & scheduling V3
2021-12-12 22:43:25 -08:00
e3d156ab0e
hle: kernel: svc: Fix deadlock that can occur with single core.
2021-12-06 16:39:18 -08:00
e942d97540
hle: kernel: KServerSession: Migrate to updated KThreadQueue.
2021-12-06 16:39:17 -08:00
2f89456041
hle: kernel: KThread: Remove tracking of sync object from threads.
2021-12-06 16:39:17 -08:00
669a2d2c67
core: hle: kernel: Reflect non-emulated threads as core 3.
2021-12-06 16:39:16 -08:00
8aef8f39d8
kernel: svc: Implement Map/UnmapProcessMemory and Create/ControlCodeMemory
...
Used by Skyline modding framework
2021-12-05 15:04:08 -05:00
5cf93c1346
kernel: svc: Move all IsValid functions to an anonymous namespace
2021-11-20 22:49:13 -05:00
2726d705f8
kernel: svc: Implement SetProcessMemoryPermission
...
- Used by Skyline modding framework
2021-11-20 22:18:56 -05:00
64275dfbf4
general: Rename GetTitleID to GetProgramID
2021-11-04 16:57:16 -04:00
7c4b6aab2e
core: Remove unused includes
2021-11-03 21:42:57 -04:00
b871388a31
svc: Correct WaitSynchronization num_handles param type
...
num_handles is a s32
2021-11-02 22:31:04 -04:00
b118fa8698
Merge pull request #7227 from vonchenplus/fix_memory_leak_v2
...
Fix memory leak v2
2021-11-01 20:11:30 -07:00
a8b0104923
Fix memory leak
2021-10-27 09:06:22 +08:00
da6673e79a
SVC: Implement svcInfo:IdleTickCount
...
Used by the Witcher 3
2021-10-16 20:33:44 +02:00
7cd43b139a
Fix KScopedAutoObject object leak when SendSyncRequest
2021-09-25 22:16:21 +08:00