From 3379f3a8f96784eb484d1026e88a2efd25e9e08a Mon Sep 17 00:00:00 2001 From: Ryan Houdek Date: Fri, 2 Apr 2021 20:35:01 -0700 Subject: [PATCH] Fixes eventfd and eventfd2 glibc function signature doesn't match kernel --- Source/Tests/LinuxSyscalls/Syscalls/FD.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Source/Tests/LinuxSyscalls/Syscalls/FD.cpp b/Source/Tests/LinuxSyscalls/Syscalls/FD.cpp index d894b84ec..5bf354eb0 100644 --- a/Source/Tests/LinuxSyscalls/Syscalls/FD.cpp +++ b/Source/Tests/LinuxSyscalls/Syscalls/FD.cpp @@ -275,8 +275,8 @@ namespace FEX::HLE { SYSCALL_ERRNO(); }); - REGISTER_SYSCALL_IMPL(eventfd, [](FEXCore::Core::CpuStateFrame *Frame, uint32_t initval, uint32_t flags) -> uint64_t { - uint64_t Result = ::eventfd(initval, flags); + REGISTER_SYSCALL_IMPL(eventfd, [](FEXCore::Core::CpuStateFrame *Frame, uint32_t count) -> uint64_t { + uint64_t Result = ::syscall(SYS_eventfd2, count, 0); SYSCALL_ERRNO(); }); @@ -319,8 +319,8 @@ namespace FEX::HLE { SYSCALL_ERRNO(); }); - REGISTER_SYSCALL_IMPL(eventfd2, [](FEXCore::Core::CpuStateFrame *Frame, unsigned int initval, int flags) -> uint64_t { - uint64_t Result = ::eventfd(initval, flags); + REGISTER_SYSCALL_IMPL(eventfd2, [](FEXCore::Core::CpuStateFrame *Frame, unsigned int count, int flags) -> uint64_t { + uint64_t Result = ::syscall(SYS_eventfd2, count, flags); SYSCALL_ERRNO(); });