mirror of
				https://git.zaroz.cloud/nintendo-back-up/yuzu/yuzu-mainline.git
				synced 2025-03-21 01:53:15 +00:00 
			
		
		
		
	KernelSVC: Assert that condition variable address is aligned to 4 bytes.
This commit is contained in:
		
							parent
							
								
									96b1b144af
								
							
						
					
					
						commit
						0b72b34d89
					
				@ -1608,6 +1608,8 @@ static ResultCode WaitProcessWideKeyAtomic(Core::System& system, VAddr mutex_add
 | 
			
		||||
        return ERR_INVALID_ADDRESS;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    ASSERT(condition_variable_addr == Common::AlignDown(condition_variable_addr, 4));
 | 
			
		||||
 | 
			
		||||
    auto* const current_process = system.Kernel().CurrentProcess();
 | 
			
		||||
    const auto& handle_table = current_process->GetHandleTable();
 | 
			
		||||
    SharedPtr<Thread> thread = handle_table.Get<Thread>(thread_handle);
 | 
			
		||||
@ -1639,6 +1641,8 @@ static ResultCode SignalProcessWideKey(Core::System& system, VAddr condition_var
 | 
			
		||||
    LOG_TRACE(Kernel_SVC, "called, condition_variable_addr=0x{:X}, target=0x{:08X}",
 | 
			
		||||
              condition_variable_addr, target);
 | 
			
		||||
 | 
			
		||||
    ASSERT(condition_variable_addr == Common::AlignDown(condition_variable_addr, 4));
 | 
			
		||||
 | 
			
		||||
    // Retrieve a list of all threads that are waiting for this condition variable.
 | 
			
		||||
    std::vector<SharedPtr<Thread>> waiting_threads;
 | 
			
		||||
    const auto& scheduler = system.GlobalScheduler();
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user