aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@lukeshu.com>2017-11-15 14:36:25 -0200
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-11-15 14:40:17 -0200
commitcad7ca390879f2a8250e58bf5009a00b887a19b7 (patch)
treeb453f3eb4c0fe5fdc3cda4df3db2ecfb55e03549
parent58c9f659ee99ee370ebb443de4155b67645c807a (diff)
downloadglibc-cad7ca390879f2a8250e58bf5009a00b887a19b7.tar
glibc-cad7ca390879f2a8250e58bf5009a00b887a19b7.tar.gz
glibc-cad7ca390879f2a8250e58bf5009a00b887a19b7.tar.bz2
glibc-cad7ca390879f2a8250e58bf5009a00b887a19b7.zip
linux: Include <sysdep-cancel.h> for epoll_wait
The epoll_wait wrapper uses the raw syscall if __NR_epoll_wait is defined, and falls back to calling epoll_pwait(..., NULL) if it isn't defined. However, it didn't include the appropriate headers for __NR_epoll_wait to be defined, so it was *always* falling back to calling epoll_pwait! This mistake was introduced in b62c3815912bc679a966134affdedd3f35ae8621, when epoll_wait changed from being in syscalls.list to always having a C wrapper. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
-rw-r--r--ChangeLog4
-rw-r--r--sysdeps/unix/sysv/linux/epoll_wait.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 420217e7d5..c26eac8d32 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2017-11-15 Luke Shumaker <lukeshu@parabola.nu>
+
+ * sysdeps/unix/sysv/linux/epoll_wait.c: Include <sysdep-cancel.h>.
+
2017-11-15 Mike FABIAN <mfabian@redhat.com>
* localedata/locales/ka_GE (LC_MESSAGES): Add “X” back to yesexpr,
diff --git a/sysdeps/unix/sysv/linux/epoll_wait.c b/sysdeps/unix/sysv/linux/epoll_wait.c
index eb6e6d3ace..b324ff832a 100644
--- a/sysdeps/unix/sysv/linux/epoll_wait.c
+++ b/sysdeps/unix/sysv/linux/epoll_wait.c
@@ -21,6 +21,8 @@
#include <sys/types.h>
#include <sys/epoll.h>
+#include <sysdep-cancel.h>
+
int
epoll_wait (int epfd, struct epoll_event *events, int maxevents, int timeout)
{