| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2021-03-21 | hle: kernel: Move KMemoryRegion to its own module and update. | bunnei | |
| 2021-03-05 | hle: kernel: KThread: Rework dummy threads & fix memory leak. | bunnei | |
| - Dummy threads are created on thread local storage for all host threads. - Fixes a leak by removing creation of fibers, which are not applicable here. | |||
| 2021-02-27 | Merge pull request #5953 from bunnei/memory-refactor-1 | bunnei | |
| Kernel Rework: Memory updates and refactoring (Part 1) | |||
| 2021-02-20 | kernel: Fix resource release exception on exit | ameerj | |
| After rewriting the resource limit, objects releasing reserved resources require a live kernel instance. This commit fixes exceptions that occur due to the kernel being destroyed before some objects released their resources, allowing for a graceful exit. | |||
| 2021-02-18 | hle: kernel: Migrate MemoryManager to KMemoryManager. | bunnei | |
| 2021-02-18 | hle: kernel: Migrate to KMemoryBlock, KMemoryBlockManager, and others. | bunnei | |
| 2021-02-18 | hle: kernel: Migrate SlabHeap to KSlabHeap. | bunnei | |
| 2021-02-18 | hle: kernel: Migrate MemoryLayout to KMemoryLayout. | bunnei | |
| 2021-02-18 | hle: kernel: Rename SharedMemory to KSharedMemory. | bunnei | |
| 2021-02-12 | kernel: More accurately reserve and release resources | ameerj | |
| 2021-02-12 | kernel: Unify result codes (#5890) | Chloe | |
| * kernel: Unify result codes Drop the usage of ERR_NAME convention in kernel for ResultName. Removed seperation between svc_results.h & errors.h as we mainly include both most of the time anyways. * oops * rename errors to svc_results | |||
| 2021-02-03 | Simplify limitableresource names | Chloe Marcec | |
| 2021-01-30 | kernel: Rewrite resource limit to be more accurate | Chloe Marcec | |
| Matches closer to hardware | |||
| 2021-01-28 | hle: kernel: threading: Fix bug with host thread naming. | bunnei | |
| 2021-01-28 | hle: kernel: Allocate a dummy KThread for each host thread, and use it for ↵ | bunnei | |
| scheduling. | |||
| 2021-01-28 | kernel: Fix build errors. | bunnei | |
| 2021-01-28 | hle: kernel: Recode implementation of KThread to be more accurate. | bunnei | |
| 2021-01-28 | kernel: k_light_lock: Simplify EmuThreadHandle implementation. | bunnei | |
| 2021-01-28 | hle: kernel: KThread: Fix ThreadType definition. | bunnei | |
| 2021-01-28 | hle: kernel: Move single core "phantom mode" out of KThread. | bunnei | |
| - This is a workaround that does not belong in a kernel primitive. | |||
| 2021-01-28 | hle: kernel: KThread: Remove thread types that do not exist. | bunnei | |
| 2021-01-28 | core: hle: kernel: Rename Thread to KThread. | bunnei | |
| 2021-01-11 | hle: kernel: thread: Preserve thread wait reason for debugging only. | bunnei | |
| - This is decoupled from core functionality and used for debugging only. | |||
| 2021-01-11 | hle: kernel: Rename thread "status" to "state". | bunnei | |
| 2021-01-11 | hle: kernel: thread: Replace ThreadStatus/ThreadSchedStatus with a single ↵ | bunnei | |
| ThreadState. - This is how the real kernel works, and is more accurate and simpler. | |||
| 2021-01-11 | core: hle: kernel: Update KSynchronizationObject. | bunnei | |
| 2020-12-29 | hle: kernel: Manage service threads on another thread. | bunnei | |
| - This is to allow service threads to defer destruction of themselves. | |||
| 2020-12-29 | hle: kernel: Manage host thread IDs using TLS. | bunnei | |
| - Avoids the need to have a large map of host to guest thread IDs. | |||
| 2020-12-29 | hle: kernel: Move ServiceThread ownership to KernelCore. | bunnei | |
| - Fixes a circular dependency which prevented threads from being released on shutdown. | |||
| 2020-12-28 | core: hle: kernel: Clear process list on boot. | bunnei | |
| 2020-12-28 | core: kernel: Clear process list earlier. | bunnei | |
| 2020-12-28 | core: hle: server_session: Use separate threads for each service connection. | bunnei | |
| 2020-12-06 | hle: kernel: Migrate to KScopedSchedulerLock. | bunnei | |
| 2020-12-06 | hle: kernel: Rewrite scheduler implementation based on Mesopshere. | bunnei | |
| 2020-11-29 | core: arm: Implement InvalidateCacheRange for CPU cache invalidation. | bunnei | |
| 2020-11-29 | common: fiber: Use boost::context instead of native fibers on Windows. | bunnei | |
| 2020-11-29 | hle: kernel: multicore: Replace n-JITs impl. with 4 JITs. | bunnei | |
| 2020-10-27 | hle/kernel: Remove unused registered_core_threads to fix data races | ReinUsesLisp | |
| This member was only used on asserts and it triggered data races. Remove it to fix them. | |||
| 2020-10-20 | Revert "core: Fix clang build" | bunnei | |
| 2020-10-20 | kernel: Fix build with recent compiler flag changes | Lioncash | |
| This slipped through the cracks due to another change being merged before the compiler flag changes. | |||
| 2020-10-20 | Merge pull request #4796 from lioncash/clang | LC | |
| core: Fix clang build | |||
| 2020-10-17 | core: Fix clang build | Lioncash | |
| Recent changes to the build system that made more warnings be flagged as errors caused building via clang to break. Fixes #4795 | |||
| 2020-10-13 | kernel: Implement host thread register methods without locking | ReinUsesLisp | |
| Locks on GetCurrentHostThreadID were causing performance issues according to Visual Studio's profiler. It was consuming twice the time as arm_interface.Run(). The cost was not in the function itself but in the lockinig it required. Reimplement these functions using atomics and static storage instead of an unordered_map. This is a side effect to avoid locking and using linked lists for reads. Replace unordered_map with a linear search. | |||
| 2020-08-26 | hle/kernel: Fix data race in GetCurrentHostThreadID | ReinUsesLisp | |
| As reported by tsan, host_thread_ids could be read while any of the RegisterHostThread variants were called. To fix this, lock the register mutex when yuzu is running in multicore mode and GetCurrentHostThreadID is called. | |||
| 2020-07-27 | core_timing: Make use of uintptr_t to represent user_data | Lioncash | |
| Makes the interface future-proofed for supporting other platforms in the event we ever support platforms with differing pointer sizes. This way, we have a type in place that is always guaranteed to be able to represent a pointer exactly. | |||
| 2020-07-18 | Merge pull request #4348 from lioncash/nano | bunnei | |
| core_timing: Make usage of nanoseconds more consistent in the interface | |||
| 2020-07-16 | cpu_manager: Mark function getters as static | Lioncash | |
| All these do are return std::function instances of static functions, so these can be used without an instance of the CPU manager. | |||
| 2020-07-15 | core_timing: Make TimedCallback take std::chrono::nanoseconds | Lioncash | |
| Enforces our desired time units directly with a concrete type. | |||
| 2020-07-15 | core_timing: Make use of std::chrono with ScheduleEvent | Lioncash | |
| 2020-07-15 | kernel/handle_table: Remove usages of the global system instance | Lioncash | |
| Removes even more usages of the global system instance, trimming away more dependencies on global variables and making them explicit in the interface. | |||
