Changes

142 bytes added ,  05:52, 26 February 2023
Line 185: Line 185:  
* KCapability now has a new member "physical_core_mask", which tracks what physical cores are allowable.
 
* KCapability now has a new member "physical_core_mask", which tracks what physical cores are allowable.
 
** KThread::FinishTermination now calls a new function (cpu::ForceSynchronizeAllCores) after waiting for the thread to not be current on any scheduler.
 
** KThread::FinishTermination now calls a new function (cpu::ForceSynchronizeAllCores) after waiting for the thread to not be current on any scheduler.
*** This function sends an IPI (KInterruptName_CoreBarrier) to all cores, and waits for all cores to acknowledge the interrupt.
+
*** This function sends an IPI (KInterruptName_CoreBarrier) to all cores in a specified mask (other than the current one), and waits for them to acknowledge the interrupt.
 
* Changes to KMemoryManager allocation:
 
* Changes to KMemoryManager allocation:
 
** KPageHeap now has an additional KPageHeapBitmapRng @ 0x328 to facilitate additional allocation randomization.
 
** KPageHeap now has an additional KPageHeapBitmapRng @ 0x328 to facilitate additional allocation randomization.
Line 207: Line 207:  
** Nintendo returns InvalidCombination when checking SVCs other than SynchronizePreemptionState.
 
** Nintendo returns InvalidCombination when checking SVCs other than SynchronizePreemptionState.
 
*** Official userland code now aborts if the process does not have permission to use SynchronizePreemptionState before incrementing ThreadLocalRegion->disable_count for the first time.
 
*** Official userland code now aborts if the process does not have permission to use SynchronizePreemptionState before incrementing ThreadLocalRegion->disable_count for the first time.
      
=== IPC Interface Changes ===
 
=== IPC Interface Changes ===
Line 356: Line 355:  
** nn::uart::IPortSession
 
** nn::uart::IPortSession
 
*** Added command 8 - inbytes: 40, inhandles: [1, 1], outbytes: 0
 
*** Added command 8 - inbytes: 40, inhandles: [1, 1], outbytes: 0
 +
 +
===[[JIT_services|jit]]===
 +
Some minor [[JIT_services|issues]] were [[Switch_System_Flaws|fixed]].
    
==See Also==
 
==See Also==