summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/kernel.cpp (unfollow)
Commit message (Expand)AuthorFilesLines
2023-10-22kernel: fix extraneous refLiam1-1/+0
2023-10-22kernel: update KProcessLiam1-29/+25
2023-10-20kernel: make check fully constexpr for broken msvc constant foldingLiam1-1/+1
2023-10-20kernel: update KMemoryRegionType valuesLiam1-2/+21
2023-10-12kernel: mark TLS accessors as noinline for non-MSVC LTOLiam1-8/+8
2023-08-15kernel: remove relative task registrationLiam1-1/+1
2023-07-19general: Silence -Wshadow{,-uncaptured-local} warningslat9nq1-3/+3
2023-04-30kernel: match calls to Register and UnregisterLiam1-3/+28
2023-03-24memory: rename global memory references to application memoryLiam1-2/+2
2023-03-22kernel: use KTypedAddress for addressesLiam1-51/+57
2023-03-13kernel: fix clang buildLiam1-2/+2
2023-03-13kernel: convert KThread to new styleLiam1-3/+0
2023-03-13kernel: remove KLinkedListLiam1-4/+0
2023-03-13kernel: convert KPort, KSessionLiam1-6/+5
2023-03-01kernel: refactor priority inheritance to represent locks as C++ objectsLiam1-0/+93
2023-02-21service: refactor server architectureLiam1-104/+103
2023-02-17kernel: add KObjectNameLiam1-0/+14
2023-02-14remove static from pointer sized or smaller types for aesthetics, change constexpr static to static constexpr for consistencyarades791-22/+21
2023-02-14apply clang-formatarades791-1/+2
2023-02-14add static lifetime to constexpr values to force compile time evaluation where possiblearades791-21/+21
2023-02-14general: rename CurrentProcess to ApplicationProcessLiam1-23/+23
2023-02-11core: kernel: k_process: Use application system resource.bunnei1-0/+8
2023-02-11kernel: Refactor thread_local variable usageameerj1-27/+18
2023-01-23kernel: fix incorrect locking order in suspensionLiam1-16/+23
2022-12-23kernel: workaround static shared memory initializationLiam1-29/+14
2022-12-19kernel: remove TimeManagerLiam1-9/+11
2022-12-06general: improve handling of system startup failureLiam1-5/+9
2022-12-05kernel/kernel: Ensure shutdown threads are always initializedLioncash1-1/+1
2022-11-10kernel/svc_types: refreshLiam1-7/+11
2022-11-07service_thread: fix deletionLiam1-22/+20
2022-11-04service_thread: register service threads to the logical owner processLiam1-10/+17
2022-11-04kernel: avoid racy behavior in global suspensionLiam1-5/+17
2022-11-04core: hle: kernel: Integrate system KSystemResource.bunnei1-18/+103
2022-11-04core: hle: kernel: k_memory_layout: Refresh.bunnei1-1/+5
2022-10-31kernel: fix single core for service threadsLiam1-1/+2
2022-10-31kernel: fix port trackingLiam1-34/+1
2022-10-31kernel: invert session request handling flowLiam1-2/+22
2022-10-23core: barrier service thread shutdownLiam1-3/+9
2022-10-19core: hle: kernel: Fix InitializePreemption order.bunnei1-1/+1
2022-10-19core: hle: kernel: k_process: Improve management of page table & cleanup.bunnei1-9/+14
2022-10-19core: hle: kernel: Remove junk.bunnei1-9/+0
2022-10-19core: hle: kernel: Integration application memory block slab manager.bunnei1-0/+34
2022-10-04common: remove "yuzu:" prefix from thread namesLiam1-1/+1
2022-07-25kernel: unlayer CPU interrupt handlingLiam1-28/+13
2022-07-22Project AndioKelebek11-13/+21
2022-07-15kernel: fix issues with single core modeLiam1-3/+16
2022-07-15kernel: use KScheduler from mesosphereLiam1-9/+1
2022-07-10PRKelebek11-2/+1
2022-07-10Rework CoreTimingKelebek11-4/+6
2022-06-23kernel: make current thread pointer thread localLiam1-1/+12
2022-06-18kernel: wait for threads to stop on pauseLiam1-0/+7
2022-06-16kernel: fix some uses of disable_countLiam1-1/+0
2022-06-14kernel: implement KProcess suspensionLiam1-20/+29
2022-06-14kernel: fix passthrough of local captures in lambdaLiam1-1/+3
2022-06-09CpuManager: simplify pausingLiam1-3/+1
2022-04-23general: Convert source file copyright comments over to SPDXMorph1-3/+2
2022-04-16hidbus: Implement hidbus and ringcongerman771-0/+18
2022-04-08hle: kernel: Unify and integrate reference tracking for KServerPort/KServerSession.bunnei1-13/+28
2022-04-07core/hle: Replace lock_guard with scoped_lockMerry1-8/+8
2022-04-04kernel: Fix current_process racelat9nq1-4/+4
2022-04-02hle: kernel: Create a default thread for services that do not need their own host thread.bunnei1-1/+13
2022-03-19core: Reduce unused includesameerj1-3/+0
2022-03-15core: hle: kernel: Allocate dummy threads on host thread storage.bunnei1-4/+5
2022-03-15core: hle: kernel: Downgrade dangling objects warning to debug.bunnei1-2/+2
2022-03-15core: hle: kernel: Make object list container global and ensure it is reset on each emulation session.bunnei1-7/+9
2022-03-15core: hle: kernel: Remove server session tracking.bunnei1-22/+0
2022-03-15core: hle: kernel: Update init_slab_heap, use device memory, and add KThreadLocalPage and KPageBuffer.bunnei1-26/+1
2022-02-28hle: kernel: Re-create memory layout at initialization.bunnei1-41/+43
2022-02-28hle: kernel: Remove unused pool locals.bunnei1-2/+0
2022-02-28hle: kernel: k_memory_manager: Rework for latest kernel behavior.bunnei1-16/+17
2022-02-21core: hle: kernel: Remove resource limit hack for PhysicalMemory.bunnei1-7/+0
2022-01-21hle: kernel: Remove redundant tracking of dummy threads.bunnei1-9/+3
2022-01-15hle: kernel: k_memory_manager: Clear pages on allocation & free.bunnei1-1/+1
2022-01-15core: hle: kernel: Instantiate a kernel instance of KWorkerTaskManager.bunnei1-0/+11
2022-01-15hle: kernel: Fix service_threads access to be thread safe V2.bunnei1-12/+11
2022-01-14hle: kernel: Fix service_threads access to be thread safe.bunnei1-7/+27
2021-12-19kernel: Manually destroy the current process during shut downameerj1-1/+4
2021-12-07hle: kernel: fix timing on thread preemptionFernandoS271-4/+2
2021-12-07hle: kernel: Add a flag for indicating that the kernel is currently shutting down.bunnei1-0/+18
2021-12-07core: hle: kernel: DisableDispatch on suspend threads.bunnei1-0/+3
2021-12-07core: hle: kernel: Use CurrentPhysicalCoreIndex as appropriate.bunnei1-6/+2
2021-12-07core: hle: kernel: Ensure idle threads are closed before destroying scheduler.bunnei1-23/+15
2021-12-07core: hle: kernel: Reflect non-emulated threads as core 3.bunnei1-0/+8
2021-11-18Fix crash on exit due to static scoped dummy threadsAdam Heinermann1-8/+14
2021-11-04core: Remove unused includesameerj1-2/+0
2021-10-27Fix dangling kernel objects when exitingFeng Chen1-6/+7
2021-10-27Revert PR7009Feng Chen1-2/+2
2021-10-27Fix memory leakFeng Chen1-0/+23
2021-08-26Revert "kernel: Various improvements to scheduler"bunnei1-28/+29
2021-08-16kernel: Optimize GetHostThreadIDBreadFish641-10/+13
2021-08-07core: hle: kernel: DisableDispatch on suspend threads.bunnei1-0/+3
2021-08-07core: hle: kernel: Use CurrentPhysicalCoreIndex as appropriate.bunnei1-6/+2
2021-08-07core: hle: kernel: Ensure idle threads are closed before destroying scheduler.bunnei1-23/+15
2021-08-07core: hle: kernel: Reflect non-emulated threads as core 3.bunnei1-0/+8
2021-07-21hle: kernel: Track and release server sessions, and protect methods with locks.bunnei1-12/+66
2021-07-21hle: kernel: Ensure current running process is closed.bunnei1-5/+6
2021-07-21hle: kernel: Ensure global handle table is finalized before closing.bunnei1-0/+1
2021-07-21hle: kernel: Ensure global handle table is initialized.bunnei1-0/+1
2021-07-21hle: kernel: Provide methods for tracking dangling kernel objects.bunnei1-0/+16
2021-06-24common: Replace common_sizes into user-literalsWunkolo1-9/+8
2021-06-08hle: kernel: Remove service thread manager and use weak_ptr.bunnei1-14/+4
2021-05-29Fix two GCC 11 warnings: Unneeded copies.Markus Wick1-1/+1
2021-05-29hle: kernel: KSlabHeap: Allow host or guest allocations.bunnei1-1/+2
2021-05-11hle: kernel: Implement named service ports using service interface factory.bunnei1-10/+11
2021-05-08kernel: Eliminate variable shadowingLioncash1-8/+8
2021-05-06hle: kernel: Move slab resource counts to Kernel.bunnei1-1/+11
2021-05-06hle: kernel: Fix un/sign mismatch errors with NUM_CPU_CORES.bunnei1-3/+3
2021-05-06hle: kernel: Migrate to KHandleTable.bunnei1-10/+10
2021-05-06hle: kernel: Improve MapSharedMemory and implement UnmapSharedMemory.bunnei1-12/+12
2021-05-06hle: kernel: Rename Process to KProcess.bunnei1-13/+13
2021-05-06hle: kernel: Do not shutdown twice on emulator close.bunnei1-3/+1
2021-05-06hle: kernel: Cleanup shutdown of persistent kernel objects.bunnei1-14/+12
2021-05-06hle: kernel: Migrate KClientPort to KAutoObject.bunnei1-3/+7
2021-05-06hle: kernel: Migrate KResourceLimit to KAutoObject.bunnei1-5/+19
2021-05-06hle: kernel: Move slab heaps to their own container.bunnei1-0/+1
2021-05-06hle: kernel: Refactor several threads/events/sharedmemory to use slab heaps.bunnei1-25/+25
2021-05-06hle: kernel: Ensure all kernel objects with KAutoObject are properly created.bunnei1-0/+7
2021-05-06hle: kernel: Use unique_ptr for suspend and dummy threads.bunnei1-8/+8
2021-05-06hle: kernel: Migrate KSharedMemory to KAutoObject.bunnei1-20/+25
2021-05-06hle: kernel: Migrate KProcess to KAutoObject.bunnei1-4/+4
2021-05-06hle: kernel: Migrate more of KThread to KAutoObject.bunnei1-24/+48
2021-05-06hle: kernel: Refactor out various KThread std::shared_ptr usage.bunnei1-2/+2
2021-04-14k_resource_limit: Minor cleanup of member variables/headersameerj1-3/+4
2021-04-12kernel/process: Replace process resource limit instance with the kernel's resource limitameerj1-16/+25
2021-04-07kernel: Increase event and session countsameerj1-2/+2
2021-03-27hle: kernel: Initialize preemption task after schedulers.bunnei1-1/+1
2021-03-24hle: kernel: Breakup InitializeMemoryLayout.bunnei1-3/+7
2021-03-24common: common_sizes: Move sizes to the Common namespace.bunnei1-7/+7
2021-03-21hle: kernel: Remove unused variable.bunnei1-1/+0
2021-03-21hle: kernel: k_memory_layout: Derive memory regions based on board layout.bunnei1-26/+293
2021-03-21hle: kernel: Move KMemoryRegion to its own module and update.bunnei1-10/+10
2021-03-06hle: kernel: KThread: Rework dummy threads & fix memory leak.bunnei1-6/+5
2021-02-21kernel: Fix resource release exception on exitameerj1-2/+7
2021-02-19hle: kernel: Migrate MemoryManager to KMemoryManager.bunnei1-8/+8
2021-02-19hle: kernel: Migrate to KMemoryBlock, KMemoryBlockManager, and others.bunnei1-16/+16
2021-02-19hle: kernel: Migrate SlabHeap to KSlabHeap.bunnei1-5/+5
2021-02-19hle: kernel: Migrate MemoryLayout to KMemoryLayout.bunnei1-2/+2
2021-02-19hle: kernel: Rename SharedMemory to KSharedMemory.bunnei1-17/+17
2021-02-13kernel: More accurately reserve and release resourcesameerj1-3/+12
2021-02-13kernel: Unify result codes (#5890)Chloe1-1/+1
2021-02-03Simplify limitableresource namesChloe Marcec1-10/+6
2021-01-30kernel: Rewrite resource limit to be more accurateChloe Marcec1-13/+17
2021-01-29hle: kernel: threading: Fix bug with host thread naming.bunnei1-3/+2
2021-01-29hle: kernel: Allocate a dummy KThread for each host thread, and use it for scheduling.bunnei1-7/+20
2021-01-29kernel: Fix build errors.bunnei1-2/+2
2021-01-29hle: kernel: Recode implementation of KThread to be more accurate.bunnei1-5/+5
2021-01-29kernel: k_light_lock: Simplify EmuThreadHandle implementation.bunnei1-14/+7
2021-01-29hle: kernel: KThread: Fix ThreadType definition.bunnei1-1/+1
2021-01-29hle: kernel: Move single core "phantom mode" out of KThread.bunnei1-1/+20
2021-01-29hle: kernel: KThread: Remove thread types that do not exist.bunnei1-5/+3
2021-01-29core: hle: kernel: Rename Thread to KThread.bunnei1-7/+7
2021-01-11hle: kernel: thread: Preserve thread wait reason for debugging only.bunnei1-0/+2
2021-01-11hle: kernel: Rename thread "status" to "state".bunnei1-2/+2
2021-01-11hle: kernel: thread: Replace ThreadStatus/ThreadSchedStatus with a single ThreadState.bunnei1-1/+1
2021-01-11core: hle: kernel: Update KSynchronizationObject.bunnei1-13/+2
2020-12-30hle: kernel: Manage service threads on another thread.bunnei1-9/+20
2020-12-30hle: kernel: Manage host thread IDs using TLS.bunnei1-46/+31
2020-12-29hle: kernel: Move ServiceThread ownership to KernelCore.bunnei1-1/+20
2020-12-29core: hle: kernel: Clear process list on boot.bunnei1-2/+2
2020-12-29core: kernel: Clear process list earlier.bunnei1-2/+2
2020-12-29core: hle: server_session: Use separate threads for each service connection.bunnei1-1/+1
2020-12-06hle: kernel: Migrate to KScopedSchedulerLock.bunnei1-2/+2
2020-12-06hle: kernel: Rewrite scheduler implementation based on Mesopshere.bunnei1-35/+24
2020-11-29core: arm: Implement InvalidateCacheRange for CPU cache invalidation.bunnei1-5/+10
2020-11-29common: fiber: Use boost::context instead of native fibers on Windows.bunnei1-1/+1
2020-11-29hle: kernel: multicore: Replace n-JITs impl. with 4 JITs.bunnei1-6/+17
2020-10-27hle/kernel: Remove unused registered_core_threads to fix data racesReinUsesLisp1-5/+0
2020-10-21Revert "core: Fix clang build"bunnei1-1/+1
2020-10-21kernel: Fix build with recent compiler flag changesLioncash1-4/+8
2020-10-18core: Fix clang buildLioncash1-1/+1
2020-10-13kernel: Implement host thread register methods without lockingReinUsesLisp1-28/+38
2020-08-26hle/kernel: Fix data race in GetCurrentHostThreadIDReinUsesLisp1-1/+2
2020-07-28core_timing: Make use of uintptr_t to represent user_dataLioncash1-1/+1
2020-07-16cpu_manager: Mark function getters as staticLioncash1-5/+6
2020-07-16core_timing: Make TimedCallback take std::chrono::nanosecondsLioncash1-1/+1
2020-07-16core_timing: Make use of std::chrono with ScheduleEventLioncash1-2/+4
2020-07-15kernel/handle_table: Remove usages of the global system instanceLioncash1-2/+3
2020-06-28Core/Common: Address Feedback.Fernando Sahmkow1-9/+5
2020-06-27General: Cleanup legacy code.Fernando Sahmkow1-79/+2
2020-06-27Kernel/svcBreak: Implement CacheInvalidation for Singlecore and correct svcBreak.Fernando Sahmkow1-1/+11
2020-06-27Scheduler: Correct Reload/UnloadFernando Sahmkow1-0/+1
2020-06-27General: Move ARM_Interface into Threads.Fernando Sahmkow1-38/+21
2020-06-27Core: Refactor ARM Interface.Fernando Sahmkow1-1/+27
2020-06-27SingleCore: Move Host Timing from a sepparate thread to main cpu thread.Fernando Sahmkow1-1/+1
2020-06-27General: Fix microprofile on dynarmic/svc, fix wait tree showing which threads were running.Fernando Sahmkow1-0/+15
2020-06-27General: Fix Stop functionFernando Sahmkow1-0/+15
2020-06-27Kernel: Preempt Single core on redudant yields.Fernando Sahmkow1-0/+4
2020-06-27General: Initial Setup for Single Core.Fernando Sahmkow1-0/+19
2020-06-27Kernel: Fixes, corrections and asserts to scheduler and different svcs.Fernando Sahmkow1-0/+1
2020-06-27General: Recover Prometheus project from harddrive failure Fernando Sahmkow1-7/+77
2020-04-17kernel: resource_limit: Reserve physical memory.bunnei1-1/+6
2020-04-17kernel: Initialize memory layout for new VMM.bunnei1-0/+115
2020-04-15CMakeLists: Make -Wreorder a compile-time errorLioncash1-1/+1
2020-03-03core: Implement separate A32/A64 ARM interfaces.bunnei1-0/+4
2020-02-22Kernel: Address Feedback.Fernando Sahmkow1-11/+16
2020-02-22Kernel: Implement Time Manager.Fernando Sahmkow1-1/+11
2020-02-22Kernel: Rename ThreadCallbackHandleTable and Setup Thread Ids on Kernel.Fernando Sahmkow1-12/+76
2020-02-22Kernel: Make global scheduler depend on KernelCoreFernando Sahmkow1-3/+11
2020-02-11Kernel: Refactor synchronization to better match REFernando Sahmkow1-1/+12
2020-02-11Kernel: Change WaitObject to Synchronization object. In order to better reflect RE.Fernando Sahmkow1-2/+2
2020-01-31kernel/physical_core: Remove unused kernel reference member variableLioncash1-4/+4
2020-01-27System: Address FeedbackFernando Sahmkow1-2/+3
2020-01-26ArmInterface: Delegate Exclusive monitor factory to exclusive monitor interfasce.Fernando Sahmkow1-15/+2
2020-01-25Core: Refactor CPU Management.Fernando Sahmkow1-1/+63
2019-12-11Kernel: Correct behavior of Address Arbiter threads. (#3165)Fernando Sahmkow1-3/+3
2019-12-08kernel: Remove unnecessary includesLioncash1-1/+0
2019-11-27core/memory; Migrate over SetCurrentPageTable() to the Memory classLioncash1-7/+11
2019-11-27core_timing: Use better reference tracking for EventType. (#3159)bunnei1-6/+7
2019-11-25kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for kernel objects. (#3154)bunnei1-9/+10
2019-11-21Kernel: Optimize condition variable threads management.Fernando Sahmkow1-1/+1
2019-11-21Kernel: Correct behavior of Condition Variables to be more similar to real hardware.Fernando Sahmkow1-0/+3
2019-10-15Kernel: Reverse global accessor removal.Fernando Sahmkow1-8/+0
2019-10-15Kernel Scheduler: Make sure the global scheduler shutdowns correctly.Fernando Sahmkow1-0/+2
2019-10-15Kernel: Correct Results in Condition Variables and MutexesFernando Sahmkow1-6/+7
2019-10-15Kernel: Remove global system accessor from WaitObjectFernando Sahmkow1-0/+8
2019-10-15Kernel: Initial implementation of thread preemption.Fernando Sahmkow1-0/+16
2019-10-15Kernel: Style and CorrectionsFernando Sahmkow1-1/+1
2019-10-15Add interfacing to the Global SchedulerFernando Sahmkow1-0/+10
2019-06-10kernel: Differentiate kernel and user processes when picking IDZach Hilman1-4/+10
2019-04-17kernel/thread: Unify wait synchronization typesLioncash1-2/+1
2019-04-12core/cpu_core_manager: Create threads separately from initialization.Lioncash1-1/+6
2019-04-07kernel: Handle page table switching within MakeCurrentProcess()Lioncash1-0/+2
2019-04-02kernel/svc: Implement svcGetProcessListLioncash1-0/+4
2019-04-01kernel/resource_limit: Remove the name member from resource limitsLioncash1-1/+1
2019-04-01general: Use deducation guides for std::lock_guard and std::unique_lockLioncash1-1/+1
2019-03-24core/core_timing: Make callback parameters consistentLioncash1-1/+1
2019-03-20Fix small bug that kept a thread as a condvar thread after being signalled.Fernando Sahmkow1-1/+2
2019-03-20Add CondVar Thread State.Fernando Sahmkow1-1/+1
2019-03-08kernel: Make the address arbiter instance per-processLioncash1-11/+1
2019-03-05kernel/address_arbiter: Pass in system instance to constructorLioncash1-7/+12
2019-03-05kernel/address_arbiter: Convert the address arbiter into a classLioncash1-0/+11
2019-02-16core_timing: Convert core timing into a classLioncash1-6/+6
2019-02-12core_timing: Rename CoreTiming namespace to Core::TimingLioncash1-3/+3
2019-02-01kernel: Remove the Timer classLioncash1-42/+0
2019-01-01core/kernel: Remove unnecessary inclusionsLioncash1-1/+0
2018-12-19kernel/kernel: Use correct initial PID for userland Process instancesLioncash1-4/+2
2018-12-19kernel/thread: Make thread_id a 64-bit valueLioncash1-2/+2
2018-12-19kernel/process: Make process_id a 64-bit valueLioncash1-2/+2
2018-11-29hle_ipc: Refactor SleepClientThread to avoid ReadableEventZach Hilman1-2/+0
2018-11-29kernel/event: Reference ReadableEvent from WritableEventZach Hilman1-17/+0
2018-11-29kernel: Add named event tableZach Hilman1-0/+19
2018-11-20kernel/resource_limit: Clean up interfaceLioncash1-63/+16
2018-10-28core: Make System references const where applicableLioncash1-2/+2
2018-10-20kernel/process: Make the handle table per-processLioncash1-10/+0
2018-10-10kernel/thread: Use a regular pointer for the owner/current processLioncash1-6/+6
2018-10-04kernel/thread: Make all instance variables privateLioncash1-18/+18
2018-09-07core: Migrate current_process pointer to the kernelLioncash1-0/+14
2018-09-02service: Migrate global named port map to the KernelCore classLioncash1-0/+24
2018-08-29kernel: Eliminate kernel global stateLioncash1-15/+268
2018-08-13kernel/object: Tighten object against data racesLioncash1-1/+1
2018-08-03core/memory: Get rid of 3DS leftoversLioncash1-5/+1
2018-07-31kernel: Remove unused object_address_table.cpp/.hLioncash1-2/+0
2018-07-23hle: Remove config_mem.h/.cppLioncash1-3/+0
2018-07-23hle: Remove shared_page.h/.cppLioncash1-2/+0
2018-03-14core: Move process creation out of global state.bunnei1-1/+0
2018-01-01kernel: Add ObjectAddressTable class.bunnei1-2/+5
2017-05-30Kernel: Move HandleTable to a separate fileYuri Kunde Schlesner1-84/+1
2017-05-30Kernel: Move WaitObject to a separate fileYuri Kunde Schlesner1-79/+0
2017-05-25Kernel: Centralize error definitions in errors.hYuri Kunde Schlesner1-0/+1
2017-01-05Kernel: Add some asserts to enforce the invariants in the scheduler.Subv1-0/+8
2017-01-05Kernel: Remove a thread from all of its waiting objects' waiting_threads list when it is awoken.Subv1-18/+4
2017-01-05Kernel: Remove Thread::wait_objects_index and use wait_objects to hold all the objects that a thread is waiting on.Subv1-1/+7
2017-01-04Kernel/Mutex: Update a mutex priority when a thread stops waiting on it.Subv1-8/+15
2017-01-04Kernel: Object ShouldWait and Acquire calls now take a thread as a parameter.Subv1-8/+6
2016-12-16Kernel: remove object's waiting thread if it is deadwwylele1-1/+2
2016-12-14Fixed the codestyle to match our clang-format rules.Subv1-4/+5
2016-12-10Properly remove a thread from its wait_objects' waitlist when it is awoken by a timeout.Subv1-1/+6
2016-12-09WaitSynch: Removed unused variables and reduced SharedPtr copies.Subv1-10/+4
2016-12-07Use boost remove_erase_if instead of the erase-remove idiomSubv1-2/+3
2016-12-07Improved the algorithm for GetHighestPriorityReadyThread.Subv1-14/+13
2016-12-04Threading: Added some utility functions and const correctness.Subv1-7/+6
2016-12-04Threading: Reworked the way our scheduler works.Subv1-5/+54
2016-11-20Kernel/Loader: Grab the system mode from the NCCH ExHeader.Subv1-4/+2
2016-09-22implement wait tree widgetwwylele1-0/+4
2016-09-21Use negative priorities to avoid special-casing the self-includeYuri Kunde Schlesner1-1/+1
2016-09-21Remove empty newlines in #include blocks.Emmanuel Gil Peyrot1-3/+1
2016-09-18Sources: Run clang-format on everything.Emmanuel Gil Peyrot1-1/+2
2015-08-16Kernel: Add more infrastructure to support different memory layoutsYuri Kunde Schlesner1-3/+16
2015-06-28Common: Cleanup key_map includes.Emmanuel Gil Peyrot1-2/+0
2015-06-17kernel: Fix svcWaitSynch to always acquire requested wait objects.bunnei1-18/+4
2015-05-15Core/ResourceLimits: Implemented the basic structure of ResourceLimits.Subv1-0/+3
2015-05-12fixup!Subv1-1/+3
2015-05-11Core/HLE: Implemented the SVCs GetProcessId and GetProcessIdOfThreadSubv1-2/+2
2015-05-09Kernel: Remove unused g_main_thread variableYuri Kunde Schlesner1-2/+0
2015-05-09Kernel: Remove g_program_idYuri Kunde Schlesner1-2/+0
2015-05-09Kernel: Introduce skeleton Process class to hold process dataYuri Kunde Schlesner1-12/+2
2015-05-07Common: Remove common.hYuri Kunde Schlesner1-1/+2
2015-05-02Kernel: Properly initialize and shutdown all modules.bunnei1-4/+7
2015-04-10Kernel: Fixed default thread priority.bunnei1-1/+1
2015-02-12Build: Fixed some warningsSubv1-2/+2
2015-02-11Asserts: break/crash program, fit to style guide; log.h->assert.harchshift1-2/+2
2015-02-10Scheduler refactor Pt. 1Kevin Hartman1-5/+1
2015-02-03core: Fix some warnings on OSXLioncash1-1/+0
2015-02-02Kernel: Make WaitObjects share ownership of Threads waiting on themYuri Kunde Schlesner1-4/+4
2015-02-02Kernel: Fix bug in HandleTable::CloseYuri Kunde Schlesner1-1/+1
2015-02-02Kernel: Remove Object::GetHandle (it's not used anymore :D)Yuri Kunde Schlesner1-4/+1
2015-02-02Kernel: Introduce unique Object ids for debuggingYuri Kunde Schlesner1-0/+2
2015-01-22Kernel: Renamed some functions for clarity.bunnei1-1/+1
2015-01-22Session: Change to a WaitObject.bunnei1-1/+1
2015-01-22Kernel: Reschedule on SignalEvent and SendSyncRequest, fix some bugs.bunnei1-1/+1
2015-01-22AddressArbiter: Changed to Kernel::Object, big cleanup, removed code that made no sense.bunnei1-1/+1
2015-01-22Kernel: Get rid of WaitTypes and simplify lots of code, removing hacks.bunnei1-2/+4
2015-01-22WaitSynchronizationN: Implement return valuesbunnei1-2/+2
2015-01-22WaitObject: Added RemoveWaitingThread, fixed a bug, and cleanup.bunnei1-3/+10
2015-01-22Kernel: Added WaitObject and changed "waitable" objects inherit from it.bunnei1-0/+26
2015-01-09Kernel: Start using boost::intrusive_ptr for lifetime managementYuri Kunde Schlesner1-13/+10
2015-01-09Kernel: Don't re-assign object's handle when duplicating oneYuri Kunde Schlesner1-1/+2
2015-01-09Thread: Reduce use of Handles and move some funcs to inside the class.Yuri Kunde Schlesner1-1/+1
2015-01-09Kernel: Move Thread's definition to the header fileYuri Kunde Schlesner1-2/+1
2015-01-09Move ThreadContext to core/core.h and deal with the falloutYuri Kunde Schlesner1-0/+1
2015-01-09SVC: Implemented the Timer service calls.Subv1-1/+3
2015-01-08Threads: Use a dummy idle thread when no other are ready.Subv1-0/+2
2014-12-28Kernel: New handle managerYuri Kunde Schlesner1-51/+67
2014-12-28Rename ObjectPool to HandleTableYuri Kunde Schlesner1-10/+10
2014-12-21License changepurpasmart961-2/+2
2014-12-18Filesystem/Archives: Implemented the SaveData archiveSubv1-0/+1
2014-12-16HLE: Rename namespaces to match move & fix initialization orderYuri Kunde Schlesner1-5/+0
2014-12-16HLE: Move kernel/archive.* to service/fs/Yuri Kunde Schlesner1-1/+1
2014-12-13Convert old logging calls to new logging macrosYuri Kunde Schlesner1-4/+4
2014-12-04kernel: Shorten GetCountLioncash1-6/+3
2014-12-04kernel: Make some functions constLioncash1-2/+2
2014-11-19Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generatedEmmanuel Gil Peyrot1-3/+3
2014-09-15Core: Get rid of unnecessary switch statement in KernelLioncash1-41/+2
2014-09-09core: Prune redundant includesarchshift1-2/+0
2014-08-19Core: Use std::array for managing kernel object spaceLioncash1-2/+1
2014-08-18Core: Alter the kernel string functions to use std::string instead of const char*.Lioncash1-2/+2
2014-07-05Archive: Added Init/Shutdown methods to reset kernel archive state.bunnei1-0/+3
2014-06-13Kernel: Removed unnecessary "#pragma once".bunnei1-2/+0
2014-06-13Kernel: Added freeing of kernel objects on emulator shutdown.bunnei1-0/+4
2014-06-13HLE: Updated all uses of NULL to nullptr (to be C++11 compliant)bunnei1-1/+1
2014-06-05kernel: changed current default thread priority back to 0x30 - I think this is more correctbunnei1-1/+1
2014-06-02kernel: changed main thread priority to default, updated Kernel::Reschedule to use PrepareReschedulebunnei1-1/+2
2014-05-23kernel: refactored function naming to remove "__" prefixbunnei1-5/+10
2014-05-21thread: moved threading calls to the Kernel namespacebunnei1-3/+3
2014-05-21- created a Kernel namespacebunnei1-25/+24
2014-05-16changed "UID" to "Handle" to be a little more consistent with CTR namingbunnei1-5/+5
2014-05-15changed primary thread priority to 0x30 - this is typical, not 0x31bunnei1-1/+2
2014-05-14- added __KernelLoadExec functionbunnei1-0/+11
2014-05-10added initial kernel/thread modulesbunnei1-0/+142