Sync thread name on Schedule

Set the name of the HostThread on Schedule() if the thread name isn't already set and if we fetch a valid thread name from the guest thread.
This commit is contained in:
LotP 2025-10-11 07:47:45 -05:00 committed by KeatonTheBot
parent 1ef09717d2
commit c6230fc02e
2 changed files with 8 additions and 0 deletions

View file

@ -296,6 +296,12 @@ namespace Ryujinx.HLE.HOS.Kernel.Threading
KThread currentThread = KernelStatic.GetCurrentThread();
KThread selectedThread = _state.SelectedThread;
if (!currentThread.IsThreadNamed && currentThread.GetThreadName() != "")
{
currentThread.HostThread.Name = $"<{currentThread.GetThreadName()}>";
currentThread.IsThreadNamed = true;
}
// If the thread is already scheduled and running on the core, we have nothing to do.
if (currentThread == selectedThread)
{

View file

@ -33,6 +33,8 @@ namespace Ryujinx.HLE.HOS.Kernel.Threading
public ulong AffinityMask { get; set; }
public ulong ThreadUid { get; private set; }
public bool IsThreadNamed { get; set; }
private long _totalTimeRunning;