7c4b6aab2e
core: Remove unused includes
2021-11-03 21:42:57 -04:00
dd29285e35
Fix dangling kernel objects when exiting
2021-10-27 09:06:30 +08:00
052017e189
Revert PR7009
2021-10-27 09:06:30 +08:00
a8b0104923
Fix memory leak
2021-10-27 09:06:22 +08:00
0c8594b225
Revert "kernel: Various improvements to scheduler"
2021-08-25 20:59:28 -07:00
bed0c3c92a
Merge pull request #6878 from BreadFish64/optimize-GetHostThreadID
...
kernel: Optimize GetHostThreadID
2021-08-24 00:01:13 -04:00
14e93f133a
kernel: Optimize GetHostThreadID
2021-08-16 07:30:23 -05:00
5051d3c415
core: hle: kernel: DisableDispatch on suspend threads.
2021-08-07 12:18:47 -07:00
2dfb07388a
core: hle: kernel: Use CurrentPhysicalCoreIndex as appropriate.
2021-08-07 12:18:47 -07:00
2b9560428b
core: hle: kernel: Ensure idle threads are closed before destroying scheduler.
2021-08-07 12:18:47 -07:00
68eee94875
core: hle: kernel: Reflect non-emulated threads as core 3.
2021-08-07 12:18:47 -07:00
52caa52cc2
hle: kernel: Track and release server sessions, and protect methods with locks.
2021-07-20 18:54:56 -07:00
854c7a3c28
hle: kernel: Ensure current running process is closed.
2021-07-20 18:54:56 -07:00
ecf3653444
hle: kernel: Ensure global handle table is finalized before closing.
2021-07-20 18:54:56 -07:00
fe402d3506
hle: kernel: Ensure global handle table is initialized.
2021-07-20 18:54:55 -07:00
929994132a
hle: kernel: Provide methods for tracking dangling kernel objects.
2021-07-20 18:54:55 -07:00
4569f39c7c
common: Replace common_sizes into user-literals
...
Removes common_sizes.h in favor of having `_KiB`, `_MiB`, `_GiB`, etc
user-literals within literals.h.
To keep the global namespace clean, users will have to use:
```
using namespace Common::Literals;
```
to access these literals.
2021-06-24 09:27:40 -07:00
a493ab2678
hle: kernel: Remove service thread manager and use weak_ptr.
...
- We no longer need to queue up service threads to be destroyed.
- Fixes a race condition where a thread could be destroyed too early, which caused a crash in Pokemon Sword/Shield.
2021-06-07 21:10:51 -07:00
5388e6db84
Merge pull request #6373 from bunnei/use-slabheap-tls
...
hle: kernel: KSlabHeap: Allow host or guest allocations.
2021-05-29 00:17:24 -07:00
5a8cd1b118
Fix two GCC 11 warnings: Unneeded copies.
...
std::move created an unneeded copy.
iterating without reference also created copies.
2021-05-29 08:57:44 +02:00
ee099b2697
hle: kernel: KSlabHeap: Allow host or guest allocations.
...
- Use host allocations for kernel memory, as this is not properly emulated yet.
- Use guest allocations for TLS, as this needs to be backed by DeviceMemory.
2021-05-28 17:42:41 -07:00
c6de9657be
hle: kernel: Implement named service ports using service interface factory.
...
- This allows us to create a new interface each time ConnectToNamedPort is called, removing the assumption that these are static.
2021-05-10 20:34:38 -07:00
2f62bae9e3
kernel: Eliminate variable shadowing
...
Now that the large kernel refactor is merged, we can eliminate the
remaining variable shadowing cases.
2021-05-08 12:33:26 -04:00
b805ee653f
hle: kernel: Move slab resource counts to Kernel.
2021-05-05 16:40:54 -07:00
da22def511
hle: kernel: Fix un/sign mismatch errors with NUM_CPU_CORES.
2021-05-05 16:40:54 -07:00
4b03e6e776
hle: kernel: Migrate to KHandleTable.
2021-05-05 16:40:53 -07:00
0b27c721c9
hle: kernel: Improve MapSharedMemory and implement UnmapSharedMemory.
2021-05-05 16:40:52 -07:00
2a7eff57a8
hle: kernel: Rename Process to KProcess.
2021-05-05 16:40:52 -07:00
864841eb9e
hle: kernel: Do not shutdown twice on emulator close.
2021-05-05 16:40:52 -07:00
39a8dba9a6
hle: kernel: Cleanup shutdown of persistent kernel objects.
2021-05-05 16:40:52 -07:00
0297448fbc
hle: kernel: Migrate KClientPort to KAutoObject.
2021-05-05 16:40:52 -07:00
b57c5a9b54
hle: kernel: Migrate KResourceLimit to KAutoObject.
2021-05-05 16:40:52 -07:00
cfa7b92563
hle: kernel: Move slab heaps to their own container.
2021-05-05 16:40:51 -07:00
89edbe8aa2
hle: kernel: Refactor several threads/events/sharedmemory to use slab heaps.
2021-05-05 16:40:51 -07:00
ab704acab8
hle: kernel: Ensure all kernel objects with KAutoObject are properly created.
2021-05-05 16:40:51 -07:00
722195cf70
hle: kernel: Use unique_ptr for suspend and dummy threads.
2021-05-05 16:40:50 -07:00
086db71e94
hle: kernel: Migrate KSharedMemory to KAutoObject.
2021-05-05 16:40:50 -07:00
7ccbdd4d8d
hle: kernel: Migrate KProcess to KAutoObject.
2021-05-05 16:40:50 -07:00
da7e9553de
hle: kernel: Migrate more of KThread to KAutoObject.
2021-05-05 16:40:50 -07:00
34bed1ab41
hle: kernel: Refactor out various KThread std::shared_ptr usage.
2021-05-05 16:40:50 -07:00
2067115c78
k_resource_limit: Minor cleanup of member variables/headers
2021-04-14 00:40:33 -04:00
5e85bc3d23
kernel/process: Replace process resource limit instance with the kernel's resource limit
...
This commit addresses the inaccurate behavior of kernel processes creating their own resource limit, rather than utilizing the kernel's system-wide resource limit instance.
2021-04-12 16:14:19 -04:00
b04877dd95
Merge pull request #6099 from bunnei/derive-mem
...
Kernel Rework: Derive memory regions from board layout.
2021-04-10 00:02:52 -07:00
24900674b7
kernel: Increase event and session counts
...
12.x increased the number of available sessions and event resource counts
2021-04-07 01:01:05 -04:00
cb7f2e5616
hle: kernel: Initialize preemption task after schedulers.
...
- Fixes a startup crash that occurs if CoreTiming tries to preempt before kernel initialization completes.
2021-03-27 10:04:13 -07:00
10d6e9f32b
hle: kernel: Breakup InitializeMemoryLayout.
2021-03-23 18:47:16 -07:00
ab5995c7ae
common: common_sizes: Move sizes to the Common namespace.
2021-03-23 18:31:46 -07:00
3ffbe50e7d
hle: kernel: Remove unused variable.
2021-03-21 15:47:24 -07:00
343eaecd38
hle: kernel: k_memory_layout: Derive memory regions based on board layout.
2021-03-21 14:45:13 -07:00
778e0f8ec1
hle: kernel: Move KMemoryRegion to its own module and update.
2021-03-21 14:45:02 -07:00