aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/kernel
AgeCommit message (Collapse)Author
2021-01-28hle: kernel: KLightLock: Fix several bugs.bunnei
2021-01-28hle: kernel: KThread: Release thread resource on thread exit.bunnei
2021-01-28yuzu: debugger: Ignore HLE threads.bunnei
2021-01-28hle: kernel: process: Add state lock.bunnei
2021-01-28hle: kernel: threading: Fix bug with host thread naming.bunnei
2021-01-28hle: kernel: k_scheduler_lock: Cleanup.bunnei
2021-01-28hle: kernel: Allocate a dummy KThread for each host thread, and use it for ↵bunnei
scheduling.
2021-01-28hle: kernel: k_scheduler: Use atomics for current_thread, etc.bunnei
2021-01-28hle: kernel: k_scheduler: Fix for single core mode.bunnei
2021-01-28kernel: Fix build errors.bunnei
2021-01-28hle: kernel: KScheduler: Introduce thread context_guard.bunnei
2021-01-28hle: kernel: Recode implementation of KThread to be more accurate.bunnei
2021-01-28kernel: svc_types: Add ThreadActivity.bunnei
2021-01-28kernel: KSchedulerPriorityQueue: Lowest priority should be LowestThreadPriority.bunnei
2021-01-28kernel: k_light_lock: Simplify EmuThreadHandle implementation.bunnei
2021-01-28hle: kernel: TimeManager: Simplify to not rely on previous EmuThreadHandle ↵bunnei
implementation.
2021-01-28core: hle: kernel: object: Implement Finalize() virtual method.bunnei
2021-01-28core: hle: kernel: svc_results: Populate with several missing error codes.bunnei
2021-01-28core: hle: kernel: Implement KLightLock.bunnei
2021-01-28core: hle: kernel: Implement KThreadQueue.bunnei
2021-01-28hle: kernel: KThread: Clean up thread priorities.bunnei
2021-01-28hle: kernel: KThread: Reorganize thread priority defaults.bunnei
2021-01-28hle: kernel: KThread: Fix ThreadType definition.bunnei
2021-01-28hle: kernel: Move single core "phantom mode" out of KThread.bunnei
- This is a workaround that does not belong in a kernel primitive.
2021-01-28hle: kernel: KThread: Remove thread types that do not exist.bunnei
2021-01-28core: hle: kernel: Rename Thread to KThread.bunnei
2021-01-28hle_ipc: Add Can(Read, Write)BufferMorph
Allows us to test whether a buffer can be read from or written to memory
2021-01-15common/bit_util: Replace CLZ/CTZ operations with standardized onesLioncash
Makes for less code that we need to maintain.
2021-01-11hle: kernel: thread: Preserve thread wait reason for debugging only.bunnei
- This is decoupled from core functionality and used for debugging only.
2021-01-11hle: kernel: k_scheduler_lock: Fix shadowing errors.bunnei
2021-01-11core: hle: Integrate new KConditionVariable and KAddressArbiter implementations.bunnei
2021-01-11core: hle: kernel: Update KAddressArbiter.bunnei
2021-01-11core: hle: kernel: Update KConditionVariable.bunnei
2021-01-11core: hle: kernel: Begin moving common SVC defintions to its own header.bunnei
2021-01-11hle: kernel: Remove unnecessary AddressArbiter definition.bunnei
2021-01-11hle: kernel: k_scheduler: Cleanup OnThreadPriorityChanged.bunnei
2021-01-11hle: kernel: Rename thread "status" to "state".bunnei
2021-01-11hle: 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-11core: hle: kernel: Add some useful functions for checking kernel addresses.bunnei
2021-01-11core: hle: kernel: svc_types: Add type definitions for KAddressArbiter.bunnei
2021-01-11core: hle: kernel: Update KSynchronizationObject.bunnei
2021-01-11core: hle: kernel: Begin moving common SVC results to its own header.bunnei
2021-01-05core: Silence warnings when compiling without assertsReinUsesLisp
2021-01-02general: Fix various spelling errorsMorph
2021-01-01Merge pull request #5249 from ReinUsesLisp/lock-free-pagesbunnei
core/memory: Read and write page table atomically
2020-12-30Merge pull request #5208 from bunnei/service-threadsbunnei
Service threads
2020-12-29core/memory: Read and write page table atomicallyReinUsesLisp
Squash attributes into the pointer's integer, making them an uintptr_t pair containing 2 bits at the bottom and then the pointer. These bits are currently unused thanks to alignment requirements. Configure Dynarmic to mask out these bits on pointer reads. While we are at it, remove some unused attributes carried over from Citra. Read/Write and other hot functions use a two step unpacking process that is less readable to stop MSVC from emitting an extra AND instruction in the hot path: mov rdi,rcx shr rdx,0Ch mov r8,qword ptr [rax+8] mov rax,qword ptr [r8+rdx*8] mov rdx,rax -and al,3 and rdx,0FFFFFFFFFFFFFFFCh je Core::Memory::Memory::Impl::Read<unsigned char> mov rax,qword ptr [vaddr] movzx eax,byte ptr [rdx+rax]
2020-12-29Merge pull request #5247 from comex/xx-conceptsbunnei
k_priority_queue: Fix concepts use
2020-12-29hle: kernel: service_thread: Make thread naming more consistent.bunnei
2020-12-29hle: kernel: Manage service threads on another thread.bunnei
- This is to allow service threads to defer destruction of themselves.