aboutsummaryrefslogtreecommitdiffstats
path: root/community/virtualbox-guest-additions/musl-sched_yield.patch
diff options
context:
space:
mode:
Diffstat (limited to 'community/virtualbox-guest-additions/musl-sched_yield.patch')
-rw-r--r--community/virtualbox-guest-additions/musl-sched_yield.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/community/virtualbox-guest-additions/musl-sched_yield.patch b/community/virtualbox-guest-additions/musl-sched_yield.patch
new file mode 100644
index 0000000000..b3012e5c1a
--- /dev/null
+++ b/community/virtualbox-guest-additions/musl-sched_yield.patch
@@ -0,0 +1,32 @@
+--- ./src/VBox/Runtime/r3/posix/thread2-posix.cpp.orig
++++ ./src/VBox/Runtime/r3/posix/thread2-posix.cpp
+@@ -63,7 +63,7 @@
+ #elif defined(RT_OS_SOLARIS) || defined(RT_OS_HAIKU) || defined(RT_OS_FREEBSD) || defined(RT_OS_NETBSD)
+ sched_yield();
+ #else
+- if (!pthread_yield())
++ if (!sched_yield())
+ #endif
+ {
+ LogFlow(("RTThreadSleep: returning %Rrc (cMillies=%d)\n", VINF_SUCCESS, cMillies));
+@@ -100,7 +100,7 @@
+ #elif defined(RT_OS_SOLARIS) || defined(RT_OS_HAIKU) || defined(RT_OS_FREEBSD) || defined(RT_OS_NETBSD)
+ sched_yield();
+ #else
+- if (!pthread_yield())
++ if (!sched_yield())
+ #endif
+ return VINF_SUCCESS;
+ }
+@@ -126,10 +126,8 @@
+ #endif
+ #ifdef RT_OS_DARWIN
+ pthread_yield_np();
+-#elif defined(RT_OS_SOLARIS) || defined(RT_OS_HAIKU) || defined(RT_OS_FREEBSD) || defined(RT_OS_NETBSD)
+- sched_yield();
+ #else
+- pthread_yield();
++ sched_yield();
+ #endif
+ #if defined(RT_ARCH_AMD64) || defined(RT_ARCH_X86)
+ u64TS = ASMReadTSC() - u64TS;