diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2012-04-27 11:47:25 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2012-04-27 11:47:25 +0000 |
commit | 3161576d06aa52a0dfbfdc13a539fa6d14100855 (patch) | |
tree | 87254a0a2d68f0aa1b9ec1bfea4dd07b41f7ee4c /main/libc0.9.32/eventfd.patch | |
parent | b1a46b89ef69924ffcc45e22618ff6727c8c2da1 (diff) | |
download | aports-3161576d06aa52a0dfbfdc13a539fa6d14100855.tar.bz2 aports-3161576d06aa52a0dfbfdc13a539fa6d14100855.tar.xz |
main/libc0.9.32: fix eventfd syscall
<tteras> old kernels have only eventfd()
<tteras> they noticed uh oh, we need add a new parameter
<tteras> so there's eventfd2() syscall
<tteras> when it was added to glibc
<tteras> eventfd2 was already there
<tteras> so the glibc call got name eventfd() even though it had signature of syscall eventfd2()
<ncopa> so they picked eventfd()
<tteras> yeah
<ncopa> doh
Requires 2.6.27+ kernel. The old eventfd() syscall, is not really usable
and emulation is not feasible.
Diffstat (limited to 'main/libc0.9.32/eventfd.patch')
-rw-r--r-- | main/libc0.9.32/eventfd.patch | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/main/libc0.9.32/eventfd.patch b/main/libc0.9.32/eventfd.patch new file mode 100644 index 0000000000..930521eaa1 --- /dev/null +++ b/main/libc0.9.32/eventfd.patch @@ -0,0 +1,14 @@ +diff --git a/libc/sysdeps/linux/common/eventfd.c b/libc/sysdeps/linux/common/eventfd.c +index cc3f3f0..06a26ee 100644 +--- a/libc/sysdeps/linux/common/eventfd.c ++++ b/libc/sysdeps/linux/common/eventfd.c +@@ -14,5 +14,9 @@ + * eventfd() + */ + #ifdef __NR_eventfd ++#ifdef __NR_eventfd2 ++#undef __NR_eventfd ++#define __NR_eventfd __NR_eventfd2 ++#endif + _syscall2(int, eventfd, int, count, int, flags) + #endif |