Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							3957b0c34e 
							
						 
					 
					
						
						
							
							Kernel/SVC: Support special core values -2 and -3 in svcSetThreadCoreMask.  
						
						... 
						
						
						
						Also added some proper error handling. 
						
						
					 
					
						2018-05-30 21:36:29 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							d1f9c750a6 
							
						 
					 
					
						
						
							
							Kernel/Thread: Corrected a typo in an assert about the processor id.  
						
						
						
						
					 
					
						2018-05-30 11:32:46 -05:00 
						 
				 
			
				
					
						
							
							
								greggameplayer 
							
						 
					 
					
						
						
						
						
							
						
						
							b16e5c6a81 
							
						 
					 
					
						
						
							
							Add & correct miscellaneous things ( #470 )  
						
						... 
						
						
						
						* add some InfoType
* correct OpenApplicationProxy cmd number
* add IDisplayController functions
* fix clang-format
* add more system languages 
						
						
					 
					
						2018-05-25 22:31:54 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							3825b703fa 
							
						 
					 
					
						
						
							
							Merge pull request  #454  from Subv/signal_processwide  
						
						... 
						
						
						
						Kernel/SVC: Signal the highest priority threads first in svcSignalProcessWideKey 
						
						
					 
					
						2018-05-23 10:28:23 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							693f78e6c2 
							
						 
					 
					
						
						
							
							Merge pull request  #457  from Subv/mutex_waiters  
						
						... 
						
						
						
						Mutex: Do not assert when the mutex waiting threads list isn't empty on mutex release. 
						
						
					 
					
						2018-05-20 23:44:44 -04:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							fd500d3da6 
							
						 
					 
					
						
						
							
							Mutex: Do not assert when the mutex waiting threads list isn't empty on mutex release.  
						
						... 
						
						
						
						A thread may own multiple mutexes at the same time, and only release one of them while other threads are waiting for the other mutexes. 
						
						
					 
					
						2018-05-20 14:41:58 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							2a35a36251 
							
						 
					 
					
						
						
							
							Kernel/SVC: Signal the highest priority threads first in svcSignalProcessWideKey.  
						
						
						
						
					 
					
						2018-05-19 16:58:30 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							c74f2555b6 
							
						 
					 
					
						
						
							
							Kernel/Threads: Reschedule the proper core when operating on that core's threads.  
						
						
						
						
					 
					
						2018-05-19 16:57:44 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							fab3dd98fe 
							
						 
					 
					
						
						
							
							SVC: Removed unused WaitSynchronization1 function  
						
						
						
						
					 
					
						2018-05-19 16:56:33 -05:00 
						 
				 
			
				
					
						
							
							
								David Marcec 
							
						 
					 
					
						
						
						
						
							
						
						
							fd86cdb2e2 
							
						 
					 
					
						
						
							
							Added RequestWithContext & ControlWithContext  
						
						
						
						
					 
					
						2018-05-17 14:03:52 -07:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							46ec9a9bc9 
							
						 
					 
					
						
						
							
							thread: Rename mask to affinity_masks.  
						
						
						
						
					 
					
						2018-05-10 19:34:53 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							fbd7afefaa 
							
						 
					 
					
						
						
							
							thread: Support core change on ResumeFromWait and improve ChangeCore.  
						
						
						
						
					 
					
						2018-05-10 19:34:53 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							91af2f94e8 
							
						 
					 
					
						
						
							
							scheduler: Protect scheduling functions with a global mutex.  
						
						
						
						
					 
					
						2018-05-10 19:34:52 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							4822765fef 
							
						 
					 
					
						
						
							
							thread: Initialize ideal_core and mask members.  
						
						
						
						
					 
					
						2018-05-10 19:34:52 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							8aa5d25f82 
							
						 
					 
					
						
						
							
							threading: Reschedule only on cores that are necessary.  
						
						
						
						
					 
					
						2018-05-10 19:34:52 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							d6e3cd9a17 
							
						 
					 
					
						
						
							
							svc: Implement GetThreadCoreMask and SetThreadCoreMask.  
						
						
						
						
					 
					
						2018-05-10 19:34:51 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							6ea8b3ef60 
							
						 
					 
					
						
						
							
							thread: Implement ChangeCore function.  
						
						
						
						
					 
					
						2018-05-10 19:34:50 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							1c36f2a798 
							
						 
					 
					
						
						
							
							svc: SignalProcessWideKey should apply to all cores.  
						
						
						
						
					 
					
						2018-05-10 19:34:49 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							6a890023e9 
							
						 
					 
					
						
						
							
							svc: Implement GetCurrentProcessorNumber.  
						
						
						
						
					 
					
						2018-05-10 19:34:49 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							a434fdcb10 
							
						 
					 
					
						
						
							
							core: Implement multicore support.  
						
						
						
						
					 
					
						2018-05-10 19:34:46 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							1147db9dd1 
							
						 
					 
					
						
						
							
							Merge pull request  #431  from lioncash/fmt  
						
						... 
						
						
						
						general: Make formatting of logged hex values more straightforward 
						
						
					 
					
						2018-05-02 15:24:41 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							7c9644646f 
							
						 
					 
					
						
						
							
							general: Make formatting of logged hex values more straightforward  
						
						... 
						
						
						
						This makes the formatting expectations more obvious (e.g. any zero padding specified
is padding that's entirely dedicated to the value being printed, not any pretty-printing
that also gets tacked on). 
						
						
					 
					
						2018-05-02 09:49:36 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							fadab1d5f3 
							
						 
					 
					
						
						
							
							ipc: Add support for PopIpcInterface() method.  
						
						... 
						
						
						
						- This can be used for domain objects as inputs to service functions. 
						
						
					 
					
						2018-05-01 21:57:44 -04:00 
						 
				 
			
				
					
						
							
							
								David 
							
						 
					 
					
						
						
						
						
							
						
						
							ff2f0d980a 
							
						 
					 
					
						
						
							
							GetSharedFontInOrderOfPriority ( #381 )  
						
						... 
						
						
						
						* GetSharedFontInOrderOfPriority
* Update pl_u.cpp
* Ability to use ReadBuffer and WriteBuffer with different buffer indexes, fixed up GetSharedFontInOrderOfPriority
* switched to NGLOG
* Update pl_u.cpp
* Update pl_u.cpp
* language_code is actually language code and not index
* u32->u64
* final cleanups 
						
						
					 
					
						2018-05-01 16:28:36 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							0197e28cc9 
							
						 
					 
					
						
						
							
							core_timing: Namespace all functions and constants in core_timing's header  
						
						... 
						
						
						
						All of these variables and functions are related to timings and should be within the namespace. 
						
						
					 
					
						2018-04-30 03:32:59 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							3abba08080 
							
						 
					 
					
						
						
							
							string_util: Remove StringFromFormat() and related functions  
						
						... 
						
						
						
						Given we utilize fmt, we don't need to provide our own functions for formatting anymore 
						
						
					 
					
						2018-04-29 18:52:33 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							843dd62c81 
							
						 
					 
					
						
						
							
							core: Replace usages of LOG_GENERIC with new fmt-capable equivalents  
						
						
						
						
					 
					
						2018-04-27 11:57:52 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							8475496630 
							
						 
					 
					
						
						
							
							general: Convert assertion macros over to be fmt-compatible  
						
						
						
						
					 
					
						2018-04-27 10:04:02 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							1913cf4783 
							
						 
					 
					
						
						
							
							kernel/shared_memory: Remove unnecessary semicolon at end of ConvertPermissions()  
						
						... 
						
						
						
						Functions don't need to be terminated by semicolons. 
						
						
					 
					
						2018-04-25 20:32:16 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							40dee76c57 
							
						 
					 
					
						
						
							
							kernel: Migrate logging macros to fmt-compatible ones  
						
						
						
						
					 
					
						2018-04-25 20:32:09 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							0214351f4f 
							
						 
					 
					
						
						
							
							Merge pull request  #370  from Subv/sync_primitives  
						
						... 
						
						
						
						Kernel: Reworked the new kernel synchronization primitives. 
						
						
					 
					
						2018-04-23 16:33:00 -04:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							46572d027d 
							
						 
					 
					
						
						
							
							Kernel: Implemented mutex priority inheritance.  
						
						... 
						
						
						
						Verified with a hwtest and implemented based on reverse engineering.
Thread A's priority will get bumped to the highest priority among all the threads that are waiting for a mutex that A holds.
Once A releases the mutex and ownership is transferred to B, A's priority will return to normal and B's priority will be bumped. 
						
						
					 
					
						2018-04-23 11:23:44 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							a70ed9c8ae 
							
						 
					 
					
						
						
							
							Kernel: Use 0x2C as default main thread priority for homebrew and lone NRO/NSOs  
						
						
						
						
					 
					
						2018-04-20 21:04:35 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							013778aa21 
							
						 
					 
					
						
						
							
							Qt: Update the WaitTree widget to show info about the current mutex of each thread.  
						
						
						
						
					 
					
						2018-04-20 21:04:34 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							be155f4d9d 
							
						 
					 
					
						
						
							
							Kernel: Remove unused ConditionVariable class.  
						
						
						
						
					 
					
						2018-04-20 21:04:33 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							5fdfbfe25a 
							
						 
					 
					
						
						
							
							Kernel: Remove old and unused Mutex code.  
						
						
						
						
					 
					
						2018-04-20 21:04:32 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							b18ccf9399 
							
						 
					 
					
						
						
							
							Kernel: Properly implemented svcWaitProcessWideKey and svcSignalProcessWideKey  
						
						... 
						
						
						
						They work in tandem with guest code to provide synchronization primitives along with svcArbitrateLock/Unlock 
						
						
					 
					
						2018-04-20 21:04:27 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							e81a2080eb 
							
						 
					 
					
						
						
							
							Kernel: Corrected the implementation of svcArbitrateLock and svcArbitrateUnlock.  
						
						... 
						
						
						
						Switch mutexes are no longer kernel objects, they are managed in userland and only use the kernel to handle the contention case.
Mutex addresses store a special flag value (0x40000000) to notify the guest code that there are still some threads waiting for the mutex to be released. This flag is updated when a thread calls ArbitrateUnlock.
TODO:
* Fix svcWaitProcessWideKey
* Fix svcSignalProcessWideKey
* Remove the Mutex class. 
						
						
					 
					
						2018-04-20 21:04:25 -05:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							bec05db746 
							
						 
					 
					
						
						
							
							resource_limit: Make ResourceTypes an enum class  
						
						... 
						
						
						
						Prevents enum identifiers from leaking into the surrounding scope. 
						
						
					 
					
						2018-04-20 19:41:45 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							d9e316e353 
							
						 
					 
					
						
						
							
							common_funcs: Remove ARRAY_SIZE macro  
						
						... 
						
						
						
						C++17 has non-member size() which we can just call where necessary. 
						
						
					 
					
						2018-04-19 22:36:52 -04:00 
						 
				 
			
				
					
						
							
							
								Hexagon12 
							
						 
					 
					
						
						
						
						
							
						
						
							e52a87b98a 
							
						 
					 
					
						
						
							
							Various service name fixes - part 2 (rebased) ( #322 )  
						
						... 
						
						
						
						* Updated ACC with more service names
* Updated SVC with more service names
* Updated set with more service names
* Updated sockets with more service names
* Updated SPL with more service names
* Updated time with more service names
* Updated vi with more service names 
						
						
					 
					
						2018-04-17 11:37:43 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							43f0f163e1 
							
						 
					 
					
						
						
							
							vm_manager: Increase GetTotalMemoryUsage value.  
						
						... 
						
						
						
						- Gets Binding of Isaac running. 
						
						
					 
					
						2018-04-14 22:04:10 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							40bccd74d3 
							
						 
					 
					
						
						
							
							svc: Stub out SetThreadActivity, GetThreadContext.  
						
						
						
						
					 
					
						2018-04-02 23:51:01 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							99ae9dbf49 
							
						 
					 
					
						
						
							
							shared_memory: Remove incorrect 3ds-specific check.  
						
						
						
						
					 
					
						2018-04-02 23:50:58 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							f4ba523992 
							
						 
					 
					
						
						
							
							hle_ipc, fsp_srv: Cleanup logging.  
						
						
						
						
					 
					
						2018-03-31 23:30:00 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							eef097bdc7 
							
						 
					 
					
						
						
							
							hle_ipc: Do not ensure write buffer size.  
						
						
						
						
					 
					
						2018-03-31 16:06:46 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							b27ab46bde 
							
						 
					 
					
						
						
							
							memory: Fix stack region.  
						
						
						
						
					 
					
						2018-03-31 16:06:45 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							f6893969b3 
							
						 
					 
					
						
						
							
							svc: Stub GetThreadCoreMask.  
						
						
						
						
					 
					
						2018-03-29 21:23:15 -04:00 
						 
				 
			
				
					
						
							
							
								N00byKing 
							
						 
					 
					
						
						
						
						
							
						
						
							1d8b6ad13b 
							
						 
					 
					
						
						
							
							Clang Fixes  
						
						
						
						
					 
					
						2018-03-19 17:53:35 +01:00 
						 
				 
			
				
					
						
							
							
								N00byKing 
							
						 
					 
					
						
						
						
						
							
						
						
							0e72d0d826 
							
						 
					 
					
						
						
							
							More Warning cleanups  
						
						
						
						
					 
					
						2018-03-19 17:27:04 +01:00