summaryrefslogtreecommitdiffstats
path: root/src/core/hle/svc.cpp (follow)
Commit message (Expand)AuthorAgeFilesLines
* Kernel/Thread: Allow specifying which process a thread belongs to when creating it.Subv2017-09-271-2/+3
* Use recursive_mutex instead of mutex to fix #2902danzel2017-08-291-1/+1
* Kernel/HLE: Use a mutex to synchronize access to the HLE kernel state between the cpu thread and any other possible threads that might touch the kernel (network thread, etc).Subv2017-08-221-2/+6
* Merge pull request #2793 from Subv/replyandreceiveSebastian Valle2017-06-301-2/+109
|\
| * Kernel/SVC: Pass the current thread as a parameter to ClientSession::SendSyncRequest.Subv2017-06-291-1/+1
| * Kernel/SVC: Partially implemented svcReplyAndReceive.Subv2017-06-261-1/+108
* | Kernel: Implement AcceptSession SVCYuri Kunde Schlesner2017-06-231-1/+12
* | Kernel: Implement CreateSessionToPort SVCYuri Kunde Schlesner2017-06-231-1/+12
* | Kernel: Implement CreateSession SVCYuri Kunde Schlesner2017-06-221-3/+16
|/
* Kernel: Move HandleTable to a separate fileYuri Kunde Schlesner2017-05-301-0/+2
* Kernel: Move WaitObject to a separate fileYuri Kunde Schlesner2017-05-301-0/+1
* Kernel: Removed HandleTable::GetWaitObjectYuri Kunde Schlesner2017-05-301-2/+2
* Kernel: Centralize error definitions in errors.hYuri Kunde Schlesner2017-05-251-65/+31
* Remove ability to load symbol mapsYuri Kunde Schlesner2017-05-081-8/+2
* Fix OutputDebugString syscallMichael Theall2017-04-011-2/+2
* Refined thread launch on syscore error messagesFernando Sahmkow2017-03-091-5/+15
* Timers: Return an error when calling SetTimer with negative timeouts.Subv2017-02-221-0/+5
* Threads: Check the process' resource limit for the max allowed priority when creating a thread and remove the priority clamping code.Subv2017-01-111-5/+7
* Thread: Added priority range checking to svcSetThreadPriority and removed priority clamping code from Thread::SetPriority.Subv2017-01-111-0/+14
* Merge pull request #2410 from Subv/sleepthreadbunnei2017-01-071-0/+5
|\
| * Kernel: Don't attempt to yield execution in SleepThread(0) if there are no available threads to run.Subv2017-01-061-0/+5
* | Kernel: Fix SharedMemory objects always returning error when addr = 0 (#2404)Hyper2017-01-061-1/+5
|/
* Kernel: Remove Thread::wait_objects_index and use wait_objects to hold all the objects that a thread is waiting on.Subv2017-01-051-11/+3
* Kernel: Use different thread statuses when a thread calls WaitSynchronization1 and WaitSynchronizationN with wait_all = true.Subv2017-01-041-3/+3
* Kernel/Mutex: Propagate thread priority changes to other threads inheriting the priority via mutexesSubv2017-01-041-0/+6
* Kernel/Mutex: Update a mutex priority when a thread stops waiting on it.Subv2017-01-041-2/+3
* Kernel/Mutex: Implemented priority inheritance.Subv2017-01-041-9/+0
* Kernel: Object ShouldWait and Acquire calls now take a thread as a parameter.Subv2017-01-041-6/+6
* Kernel/Synch: Do not attempt a reschedule on every syscall.Subv2017-01-041-2/+17
* core: Replace "AppCore" nomenclature with just "CPU".bunnei2016-12-221-7/+6
* Address clang-format issues.bunnei2016-12-221-9/+10
* core: Remove HLE module, consolidate code & various cleanups.bunnei2016-12-221-35/+35
* core: Consolidate core and system state, remove system module & cleanups.bunnei2016-12-221-6/+6
* Thread: remove the thread from the thread list when exitingwwylele2016-12-171-1/+1
* Merge pull request #2260 from Subv/schedulingbunnei2016-12-161-80/+107
|\
| * Fixed the codestyle to match our clang-format rules.Subv2016-12-141-19/+28
| * Properly remove a thread from its wait_objects' waitlist when it is awoken by a timeout.Subv2016-12-101-1/+1
| * WaitSynch: Removed unused variables and reduced SharedPtr copies.Subv2016-12-091-60/+45
| * Threading: Added some utility functions and const correctness.Subv2016-12-041-5/+13
| * Threading: Reworked the way our scheduler works.Subv2016-12-041-78/+103
* | Fixed the codestyle to match our clang-format rules.Subv2016-12-141-2/+4
* | Use std::move where appropriate.Subv2016-12-081-5/+1
* | Return an error code when connecting to a saturated port.Subv2016-12-051-1/+2
* | KServerPorts now have an HLE handler "template", which is inherited by all ServerSessions created from it.Subv2016-12-051-13/+5
* | Threads do not wait for the server endpoint to call AcceptSession before returning from a ConnectToPort or GetServiceHandle call.Subv2016-12-011-2/+3
* | A bit of a redesign.Subv2016-12-011-2/+9
* | Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.Subv2016-12-011-3/+15
|/
* name objectswwylele2016-09-221-0/+4
* Remove empty newlines in #include blocks.Emmanuel Gil Peyrot2016-09-211-5/+1
* Sources: Run clang-format on everything.Emmanuel Gil Peyrot2016-09-181-234/+278
* Kernel/SVC: Implemented svcCreatePort.Subv2016-06-111-1/+20
* SVC::WaitSynchronizationN: Reschedule at the endwwylele2016-05-211-2/+3
* Set fpscr for new threadsJannik Vogel2016-05-171-0/+3
* Kernel: Implemented shared memory permissions.Subv2016-05-131-0/+2
* Kernel/SharedMemory: Properly implemented shared memory support.Subv2016-05-131-12/+35
* Merge pull request #1766 from Subv/log_cpubunnei2016-05-081-0/+5
|\
| * Kernel/Threading: Warn when a thread can be scheduled in the Syscore (Core 1).Subv2016-05-071-0/+5
* | Merge pull request #1647 from mailwl/acu-closeasyncbunnei2016-04-301-0/+4
|\ \
| * | ac:u: stub CloseAsync; check memory size aling in svc:GetProcessInfo(type=2)mailwl2016-04-211-0/+4
| |/
* / Common: Remove section measurement from profiler (#1731)Yuri Kunde Schlesner2016-04-291-4/+0
|/
* svc: Move ResetType enum to the kernel event headerLioncash2016-03-131-2/+2
* ThreadProcessorId_All on SVC::CreateThreadKloen2016-03-011-0/+1
* HLE/SVC: Implement UnmapMemoryBlock.Subv2016-01-141-5/+27
* svc: Remove superfluous printf argumentLioncash2015-12-251-1/+1
* svc: Fix compilation with LOG_TRACE enabledLioncash2015-12-131-1/+1
* Kernel: Implement svcGetSystemInfoYuri Kunde Schlesner2015-12-011-1/+46
* SVC: Advance time when calling GetSystemTick to escape busy-wait loopsYuri Kunde Schlesner2015-08-301-1/+4
* Integrate the MicroProfile profiling libraryYuri Kunde Schlesner2015-08-251-0/+4
* Kernel: Implement svcGetProcessInfo in a basic wayYuri Kunde Schlesner2015-08-161-1/+47
* Kernel: Add more infrastructure to support different memory layoutsYuri Kunde Schlesner2015-08-161-1/+1
* Move core/mem_map.{cpp,h} => core/hle/kernel/memory.{cpp,h}Yuri Kunde Schlesner2015-08-161-1/+1
* Kernel: Properly implement ControlMemory FREE and COMMITYuri Kunde Schlesner2015-08-161-13/+95
* Merge pull request #888 from zawata/Warning-Fixes-2Yuri Kunde Schlesner2015-07-251-2/+2
|\
| * Core\HLE : Fix Warningzawata2015-07-171-2/+2
* | dyncom: Pass SVC immediates directly.Lioncash2015-07-211-4/+3
* | Kernel/SVC: Implemented svcQueryProcessMemorySubv2015-07-171-6/+16
* | Kernel/SVC: Implemented svcQueryMemory.Subv2015-07-171-2/+14
|/
* kernel: Fix svcWaitSynch to always acquire requested wait objects.bunnei2015-06-171-9/+17
* Remove every trailing whitespace from the project (but externals).Emmanuel Gil Peyrot2015-05-291-2/+2
* Core/SVC: Map the shared memory created in CreateMemoryBlock to the specified address.Subv2015-05-251-0/+2
* Kernel: Move reschedules from SVCs to actual mechanisms that reschedule.bunnei2015-05-211-20/+2
* Implement svcBreakarchshift2015-05-171-1/+13
* Core/ResourceLimits: Implemented the basic structure of ResourceLimits.Subv2015-05-151-11/+38
* Memmap: Re-organize memory function in two filesYuri Kunde Schlesner2015-05-151-1/+1
* fixup!Subv2015-05-121-9/+9
* Core/HLE: Implemented the SVCs GetProcessId and GetProcessIdOfThreadSubv2015-05-111-2/+31
* Kernel: Capture SharedMemory attributes at creation, not when mappingYuri Kunde Schlesner2015-05-111-1/+3
* Fix printf format warningYuri Kunde Schlesner2015-05-071-1/+1
* Common: Remove common.hYuri Kunde Schlesner2015-05-071-0/+1
* HLE: Clean up SVC dispatch mechanismYuri Kunde Schlesner2015-05-061-3/+34
* SVC: Assert on unsupported CreateThread processor ID.bunnei2015-04-101-3/+9
* SVC: Update various SVCs to cause a reschedule.bunnei2015-04-101-2/+22
* Thread: Implement priority boost for starved threads.bunnei2015-04-101-6/+16
* SVC: Reschedule on svcCreateThread.bunnei2015-04-101-0/+2
* arm_interface: Get rid of GetTicks.Lioncash2015-03-161-2/+3
* Asserts: break/crash program, fit to style guide; log.h->assert.harchshift2015-02-111-1/+1
* Scheduler refactor Pt. 1Kevin Hartman2015-02-101-5/+9
* WaitSynch: Always reschedule (verified behavior on hw).bunnei2015-02-101-4/+4
* Kernel: Stop creating useless Handles during object creationYuri Kunde Schlesner2015-02-021-7/+11
* SVC: Enable CloseHandle, clean up DuplicateHandleYuri Kunde Schlesner2015-02-021-9/+5
* Thread: Modernize two functions that slipped through previous rebasesYuri Kunde Schlesner2015-02-021-3/+3
* Make Port/Service registration and querying more HW-accurateYuri Kunde Schlesner2015-02-021-4/+16
* SVC: Use CASCADE_RESULT in SVC handlersYuri Kunde Schlesner2015-01-301-73/+32
* Remove result.h InvalidHandleYuri Kunde Schlesner2015-01-301-15/+16
* SVC: Change return type of handlers to ResultCodeYuri Kunde Schlesner2015-01-301-90/+90
* Kernel: Convert Event to not use HandlesYuri Kunde Schlesner2015-01-301-11/+29
* Kernel: Convert Timer to (mostly) not use HandlesYuri Kunde Schlesner2015-01-301-7/+40
* Kernel: Convert Mutex to not use HandlesYuri Kunde Schlesner2015-01-301-5/+19
* Kernel: Convert AddressArbiter to not use HandlesYuri Kunde Schlesner2015-01-301-6/+24
* Kernel: Convert Semaphore to not use HandlesYuri Kunde Schlesner2015-01-301-6/+27
* Kernel: Convert SharedMemory to not use HandlesYuri Kunde Schlesner2015-01-301-15/+29
* Merge pull request #412 from purpasmart96/svc_table_cleanupbunnei2015-01-281-7/+7
|\
| * SVC: Update the SVC function tablepurpasmart962015-01-271-7/+7
* | WaitSynchronization: Added a result code for invalid result, fixed bug.bunnei2015-01-221-3/+9
* | Thread: Fix WaitSynchronization1 to not set register 1 on thread wakeup.bunnei2015-01-221-3/+3
* | Kernel: Changed "ShouldWait" to return bool and "Acquire" to return void.bunnei2015-01-221-7/+3
* | WaitObject: Renamed "Wait" to "ShouldWait", made "ShouldWait" and "Acquire" pure virtual.bunnei2015-01-221-2/+2
* | Kernel: Reschedule on SignalEvent and SendSyncRequest, fix some bugs.bunnei2015-01-221-0/+1
* | Kernel: Moved Wait and Acquire to WaitObject, added way to retrieve a WaitObject safely.bunnei2015-01-221-2/+2
* | SVC: Removed a Sleep that made no sensebunnei2015-01-221-6/+1
* | AddressArbiter: Changed to Kernel::Object, big cleanup, removed code that made no sense.bunnei2015-01-221-3/+3
* | Kernel: Get rid of WaitTypes and simplify lots of code, removing hacks.bunnei2015-01-221-10/+20
* | WaitSynchronizationN: Improved commentsbunnei2015-01-221-7/+12
* | WaitSynchronizationN: Refactor to fix several bugsbunnei2015-01-221-25/+27
* | Kernel: Separate WaitSynchronization into Wait and Acquire methods.bunnei2015-01-221-4/+5
* | WaitSynchronizationN: Handle case where handles=nullptr.bunnei2015-01-221-0/+4
* | WaitSynchronizationN: Handle case where handle_count is invalid.bunnei2015-01-221-3/+7
* | WaitSynchronizationN: Handle case where handle_count=0.bunnei2015-01-221-19/+29
* | WaitSynchronizationN: Implement return valuesbunnei2015-01-221-27/+50
* | AddrArbiter: Implement arbitration types 3 and 4.Subv2015-01-131-1/+1
|/
* SVC: Wake up the thread after the delay in WaitSync1Subv2015-01-111-3/+2
* Logging: Log all called service functions (under trace). Compile out all trace logs under release for performance.archshift2015-01-101-1/+0
* Kernel: Start using boost::intrusive_ptr for lifetime managementYuri Kunde Schlesner2015-01-091-13/+18
* Merge pull request #444 from yuriks/handle-reform2bunnei2015-01-091-20/+32
|\
| * Thread: Reduce use of Handles and move some funcs to inside the class.Yuri Kunde Schlesner2015-01-091-20/+31
| * Move ThreadContext to core/core.h and deal with the falloutYuri Kunde Schlesner2015-01-091-0/+1
* | Merge pull request #436 from kevinhartman/system-corebunnei2015-01-091-0/+5
|\ \ | |/ |/|
| * Warn if a new thread is intended to be run on the system CPU core until we implement correct scheduling for such a thread.Kevin Hartman2015-01-071-0/+5
* | Merge pull request #255 from Subv/cbranch_3bunnei2015-01-091-4/+32
|\ \
| * | SVC: Implemented the Timer service calls.Subv2015-01-091-4/+32
| |/
* / SVC: Fixed SleepThread.Subv2015-01-091-0/+4
|/
* SOC_U: Preliminary implementation of sockets.Subv2014-12-311-1/+13
* Kernel: New handle managerYuri Kunde Schlesner2014-12-281-19/+9
* Rename ObjectPool to HandleTableYuri Kunde Schlesner2014-12-281-5/+5
* Merge pull request #291 from purpasmart96/licensebunnei2014-12-211-1/+1
|\
| * License changepurpasmart962014-12-211-1/+1
* | Thread: Wait current thread on svc_SleepThreadbunnei2014-12-211-1/+2
|/
* Merge pull request #185 from purpasmart96/mem_permbunnei2014-12-181-0/+4
|\
| * Kernel:Add missing permissions in shared memory & svcpurpasmart962014-11-191-0/+4
* | Remove SyncRequest from K::Object and create a new K::Session typeYuri Kunde Schlesner2014-12-151-7/+4
* | Kernel/Semaphores: Fixed buildSubv2014-12-131-2/+2
* | SVC: Implemented ReleaseSemaphore.Subv2014-12-131-3/+10
* | SVC: Implemented svcCreateSemaphoreSubv2014-12-131-1/+10
* | Convert old logging calls to new logging macrosYuri Kunde Schlesner2014-12-131-27/+27
* | MemMap: Renamed "GSP" heap to "linear", as this is not specific to GSP.bunnei2014-12-121-1/+1
* | SVC: Implemented GetThreadId.Subv2014-12-041-4/+5
* | SVC: Add debug log to ArbitrateAddress.bunnei2014-11-261-0/+2
* | SVC: SleepThread should yield to the next ready thread.bunnei2014-11-261-0/+3
* | HLE: Revamp error handling throrough the HLE codeYuri Kunde Schlesner2014-11-241-31/+37
* | Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generatedEmmanuel Gil Peyrot2014-11-191-14/+14
* | core: Mark some hle functions as staticLioncash2014-11-181-26/+26
|/
* Fix some warningsSean2014-10-301-3/+3
* Merge pull request #99 from archshift/ext-checkbunnei2014-09-111-1/+1
|\
| * Added string_util to common, small changes in loader.cpparchshift2014-09-091-1/+1
* | core: Prune redundant includesarchshift2014-09-091-3/+0
|/
* Merge pull request #55 from lioncash/stringbunnei2014-08-191-5/+5
|\
| * Core: Alter the kernel string functions to use std::string instead of const char*.Lioncash2014-08-181-5/+5
* | SVC: Added support for svc_GetSystemTick.bunnei2014-08-191-1/+6
|/
* Core: Fix a formatting error in svc.cppLioncash2014-08-171-3/+2
* SVC: Fixed typo with MapMemoryBlock DEBUG_LOG call.bunnei2014-08-081-1/+1
* SVC: Removed ArbitrateAddress log message that spams to much.bunnei2014-08-061-2/+0
* Kernel: Added preliminary support for address arbiters.bunnei2014-07-091-8/+10
* SharedMemory: Updated MapSharedMemory to use an enum for permissions.bunnei2014-07-051-10/+9
* GSP: Fixed to use real shared memory object, various cleanups.bunnei2014-07-051-5/+6
* SVC: Renamed all function wrapper templates to Wrap, moved to HLE namespace.bunnei2014-06-131-126/+126
* SVC: Cleaned up function wrappers to pass in correct argument types.bunnei2014-06-131-148/+138
* SVC: Moved declaration of "wait" variable in SendSyncRequest for improved readability.bunnei2014-06-131-1/+1
* HLE: Updated all uses of NULL to nullptr (to be C++11 compliant)bunnei2014-06-131-107/+107
* HLE: Updated various handle debug assertions to be more clear.bunnei2014-06-131-6/+6
* Kernel: Added real support for thread and event blockingbunnei2014-06-131-28/+31
* svc: updated WaitSynchronizationN to properly use first pointer argumentbunnei2014-06-021-3/+3
* svc: changed DuplicateHandle log message from "error" to "debug"bunnei2014-06-021-1/+1
* svc: added GetThreadPriority and SetThreadPriority, added (incomplete) DuplicateHandle supportbunnei2014-06-021-3/+26
* kernel: changed main thread priority to default, updated Kernel::Reschedule to use PrepareReschedulebunnei2014-06-021-2/+7
* svc: cleaned up function_wrappers, updated various SVCs to make use of pointer argumentsbunnei2014-06-021-16/+18
* svc: updated waitSychronization to not overwrite handle on return, added stub for SleepThread (does nothing)bunnei2014-06-011-2/+21
* hle: cleaned up log messagesbunnei2014-05-301-27/+28
* svc: updated OutputDebugString to use OS_LOGbunnei2014-05-301-1/+1
* svc: changed unimplemented SVC log messages from "debug" messages to "error" messagesbunnei2014-05-301-8/+8
* svc: added svcClearEvent, stubbed function for svcArbitrateAddress, and various fixesbunnei2014-05-301-22/+32
* svc: implemented WaitSynchronization1, WaitSynchronizationN, and CreateEventbunnei2014-05-281-14/+54
* kernel: updated SyncRequest to take boolean thread wait result as a parameterbunnei2014-05-271-2/+9
* svc: added some assertionsbunnei2014-05-271-6/+4
* svc: changed SendSyncRequest to use Kernel::Object SyncRequest (instead of just service Interface class)bunnei2014-05-271-2/+2
* svc: added stub for DuplicateHandle SVC callbunnei2014-05-271-1/+8
* svc: added a check to ensure that a service was implemented before attempting to connect to its portbunnei2014-05-231-1/+5
* thread: renamed "WaitCurThread" to "WaitCurrentThread", removed unused "reason" argumentbunnei2014-05-231-2/+2
* thread: removed unused SwitchContext/Reschedule reason field, added missing arg parameter to SVC CreateThreadbunnei2014-05-231-8/+5
* svc: added Kernel::Reschedule to svc WaitSynchronization1, updated log messages to include newly created handlesbunnei2014-05-221-4/+7
* svc: enabled use of newly created kernel thread handlebunnei2014-05-211-5/+5
* mutex: refactored the interface to code to return a Mutex* handlebunnei2014-05-211-1/+1
* mutex: initial commit of HLE modulebunnei2014-05-211-4/+5
* svc: added some commentsbunnei2014-05-211-0/+7
* thread: moved threading calls to the Kernel namespacebunnei2014-05-211-2/+2
* renamed "syscall" module to "svc" (more accurate naming)bunnei2014-05-211-0/+350