diff --git a/Ryujinx.Core/OsHle/Kernel/SvcThread.cs b/Ryujinx.Core/OsHle/Kernel/SvcThread.cs
index 597e42a6d7..f0f3d95b82 100644
--- a/Ryujinx.Core/OsHle/Kernel/SvcThread.cs
+++ b/Ryujinx.Core/OsHle/Kernel/SvcThread.cs
@@ -155,7 +155,7 @@ namespace Ryujinx.Core.OsHle.Kernel
 
             if (IdealCore == -2)
             {
-                //TODO: Get this valcdue from the NPDM file.
+                //TODO: Get this value from the NPDM file.
                 IdealCore = 0;
 
                 CoreMask = 1 << IdealCore;
diff --git a/Ryujinx.Core/OsHle/Kernel/SvcThreadSync.cs b/Ryujinx.Core/OsHle/Kernel/SvcThreadSync.cs
index 280065ec4c..f9e035ad0c 100644
--- a/Ryujinx.Core/OsHle/Kernel/SvcThreadSync.cs
+++ b/Ryujinx.Core/OsHle/Kernel/SvcThreadSync.cs
@@ -330,6 +330,28 @@ namespace Ryujinx.Core.OsHle.Kernel
             }
         }
 
+        private void UpdateMutexOwner(KThread CurrThread, KThread NewOwner, long MutexAddress)
+        {
+            //Go through all threads waiting for the mutex,
+            //and update the MutexOwner field to point to the new owner.
+            lock (Process.ThreadSyncLock)
+            {
+                for (int Index = 0; Index < CurrThread.MutexWaiters.Count; Index++)
+                {
+                    KThread Thread = CurrThread.MutexWaiters[Index];
+
+                    if (Thread.MutexAddress == MutexAddress)
+                    {
+                        CurrThread.MutexWaiters.RemoveAt(Index--);
+
+                        Thread.MutexOwner = NewOwner;
+
+                        InsertWaitingMutexThread(NewOwner, Thread);
+                    }
+                }
+            }
+        }
+
         private void InsertWaitingMutexThread(int OwnerThreadHandle, KThread WaitThread)
         {
             KThread OwnerThread = Process.HandleTable.GetData<KThread>(OwnerThreadHandle);
@@ -359,28 +381,6 @@ namespace Ryujinx.Core.OsHle.Kernel
             }
         }
 
-        private void UpdateMutexOwner(KThread CurrThread, KThread NewOwner, long MutexAddress)
-        {
-            //Go through all threads waiting for the mutex,
-            //and update the MutexOwner field to point to the new owner.
-            lock (Process.ThreadSyncLock)
-            {
-                for (int Index = 0; Index < CurrThread.MutexWaiters.Count; Index++)
-                {
-                    KThread Thread = CurrThread.MutexWaiters[Index];
-
-                    if (Thread.MutexAddress == MutexAddress)
-                    {
-                        CurrThread.MutexWaiters.RemoveAt(Index--);
-
-                        Thread.MutexOwner = NewOwner;
-
-                        NewOwner.MutexWaiters.Add(Thread);
-                    }
-                }
-            }
-        }
-
         private KThread GetHighestPriority(List<KThread> Threads, long MutexAddress)
         {
             return GetHighestPriority(Threads, x => x.MutexAddress == MutexAddress);