diff options
author | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2010-03-04 12:59:10 +0100 |
---|---|---|
committer | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2010-03-04 12:59:10 +0100 |
commit | c034b2e1655dd2856f8b6f3247e6e406e46c24a4 (patch) | |
tree | 7662b9ba6f3749d13c4dd9797098529e0b7c904d /libc/sysdeps/linux | |
parent | 63859f89f327e48037a4cdba982cd6afa3007da7 (diff) | |
download | uClibc-alpine-c034b2e1655dd2856f8b6f3247e6e406e46c24a4.tar.bz2 uClibc-alpine-c034b2e1655dd2856f8b6f3247e6e406e46c24a4.tar.xz |
poll: unavailable on linux < 2.2.0
fixes bug #253
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Diffstat (limited to 'libc/sysdeps/linux')
-rw-r--r-- | libc/sysdeps/linux/common/bits/kernel-features.h | 5 | ||||
-rw-r--r-- | libc/sysdeps/linux/common/poll.c | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/libc/sysdeps/linux/common/bits/kernel-features.h b/libc/sysdeps/linux/common/bits/kernel-features.h index 88297349a..b04ad6d3e 100644 --- a/libc/sysdeps/linux/common/bits/kernel-features.h +++ b/libc/sysdeps/linux/common/bits/kernel-features.h @@ -28,6 +28,11 @@ #include <linux/version.h> #define __LINUX_KERNEL_VERSION LINUX_VERSION_CODE +/* When was `poll' introduced? */ +#if __LINUX_KERNEL_VERSION >= 131584 +# define __ASSUME_POLL_SYSCALL 1 +#endif + /* Real-time signal became usable in 2.1.70. */ #if __LINUX_KERNEL_VERSION >= 131398 # define __ASSUME_REALTIME_SIGNALS 1 diff --git a/libc/sysdeps/linux/common/poll.c b/libc/sysdeps/linux/common/poll.c index 4a6f06e19..52f6c76b4 100644 --- a/libc/sysdeps/linux/common/poll.c +++ b/libc/sysdeps/linux/common/poll.c @@ -19,8 +19,9 @@ #include <sys/syscall.h> #include <sys/poll.h> +#include <bits/kernel-features.h> -#ifdef __NR_poll +#if defined __ASSUME_POLL_SYSCALL && defined __NR_poll _syscall3(int, poll, struct pollfd *, fds, unsigned long int, nfds, int, timeout) |