--- /dev/null
+diff --git a/src/atomic.cpp b/src/atomic.cpp
+--- a/src/atomic.cpp
++++ b/src/atomic.cpp (date 1680772930656)
+@@ -19,6 +19,7 @@
+ #include <unistd.h>
+ #include <linux/futex.h>
+ #include <sys/syscall.h>
++#include <uk/syscall.h>
+
+ // libc++ uses SYS_futex as a universal syscall name. However, on 32 bit architectures
+ // with a 64 bit time_t, we need to specify SYS_futex_time64.
+@@ -45,13 +46,13 @@
+ __cxx_contention_t __val)
+ {
+ static constexpr timespec __timeout = { 2, 0 };
+- syscall(SYS_futex, __ptr, FUTEX_WAIT_PRIVATE, __val, &__timeout, 0, 0);
++ uk_syscall_static(SYS_futex, __ptr, FUTEX_WAIT_PRIVATE, __val, &__timeout, 0, 0);
+ }
+
+ static void __libcpp_platform_wake_by_address(__cxx_atomic_contention_t const volatile* __ptr,
+ bool __notify_one)
+ {
+- syscall(SYS_futex, __ptr, FUTEX_WAKE_PRIVATE, __notify_one ? 1 : INT_MAX, 0, 0, 0);
++ uk_syscall_static(SYS_futex, __ptr, FUTEX_WAKE_PRIVATE, __notify_one ? 1 : INT_MAX, 0, 0, 0);
+ }
+
+ #elif defined(__APPLE__) && defined(_LIBCPP_USE_ULOCK)