Skip to content
Snippets Groups Projects

do not define futex_waitv if already done in linux/futex.h

Merged Florian Fischer requested to merge aj46ezos/emper:fix-glibc-2.35-futex_waitv into master
Files
2
@@ -10,6 +10,7 @@
#include <cerrno>
#include "Worker.hpp"
#include "emper-config.h"
#ifndef SYS_futex_waitv
#define SYS_futex_waitv 449
@@ -19,18 +20,21 @@
#define FUTEX_32 2
#endif
#ifdef EMPER_DEFINE_FUTEX_WAITV
struct futex_waitv {
uint64_t val;
uint64_t uaddr;
uint32_t flags;
uint32_t _reserved;
// NOLINTNEXTLINE(bugprone-reserved-identifier)
uint32_t __reserved;
};
#endif
static void init_futex_waitv(struct futex_waitv* waiter, uint64_t val, void* uaddr) {
waiter->val = val;
waiter->uaddr = reinterpret_cast<uintptr_t>(uaddr);
waiter->flags = FUTEX_PRIVATE_FLAG | FUTEX_32;
waiter->_reserved = 0;
waiter->__reserved = 0;
}
namespace emper::lib::sync {
Loading