aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--NEWS6
-rw-r--r--sysdeps/unix/sysv/linux/Versions2
-rw-r--r--sysdeps/unix/sysv/linux/sys/epoll.h5
-rw-r--r--sysdeps/unix/sysv/linux/syscalls.list2
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/sys/epoll.h14
6 files changed, 28 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 633622292a..c1889e327a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2008-08-01 Ulrich Drepper <drepper@redhat.com>
+ * sysdeps/unix/sysv/linux/Versions: Fix changes due to old patch for
+ new epoll_create1 interface.
+ * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
+ * sysdeps/unix/sysv/linux/sys/epoll.h: Likewise.
+ * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
+
* include/arpa/nameser.h (NS_GET16): Use const pointer.
(NS_GET32): Likewise.
diff --git a/NEWS b/NEWS
index 9873ddea70..a8ad68bfd5 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-GNU C Library NEWS -- history of user-visible changes. 2008-7-27
+GNU C Library NEWS -- history of user-visible changes. 2008-8-1
Copyright (C) 1992-2007, 2008 Free Software Foundation, Inc.
See the end for copying conditions.
@@ -23,10 +23,10 @@ Version 2.9
* New implementation of memmem, strstr, and strcasestr which is O(n).
Implemented by Eric Blake.
-* New Linux interfaces: inotify_init1, paccept, dup3, epoll_create2, pipe2
+* New Linux interfaces: inotify_init1, paccept, dup3, epoll_create1, pipe2
* Implement "e" option for popen to open file descriptor with the
- close-on-exec flag set
+ close-on-exec flag set. Implemented by Ulrich Drepper.
* Many functions, exported and internal, now atomically set the close-on-exec
flag when run on a sufficiently new kernel. Implemented by Ulrich Drepper.
diff --git a/sysdeps/unix/sysv/linux/Versions b/sysdeps/unix/sysv/linux/Versions
index 5a76028c6c..76ecae0013 100644
--- a/sysdeps/unix/sysv/linux/Versions
+++ b/sysdeps/unix/sysv/linux/Versions
@@ -136,7 +136,7 @@ libc {
timerfd_create; timerfd_settime; timerfd_gettime;
}
GLIBC_2.9 {
- epoll_create2; inotify_init1;
+ epoll_create1; inotify_init1;
}
GLIBC_PRIVATE {
# functions used in other libraries
diff --git a/sysdeps/unix/sysv/linux/sys/epoll.h b/sysdeps/unix/sysv/linux/sys/epoll.h
index aa8784b1ee..12de0bcfe2 100644
--- a/sysdeps/unix/sysv/linux/sys/epoll.h
+++ b/sysdeps/unix/sysv/linux/sys/epoll.h
@@ -101,8 +101,9 @@ __BEGIN_DECLS
returned by epoll_create() should be closed with close(). */
extern int epoll_create (int __size) __THROW;
-/* Same as epoll_create but with an additional FLAGS parameter. */
-extern int epoll_create2 (int __size, int __flags) __THROW;
+/* Same as epoll_create but with an FLAGS parameter. The unused SIZE
+ parameter has been dropped. */
+extern int epoll_create1 (int __flags) __THROW;
/* Manipulate an epoll instance "epfd". Returns 0 in case of success,
diff --git a/sysdeps/unix/sysv/linux/syscalls.list b/sysdeps/unix/sysv/linux/syscalls.list
index f654d5ee00..a87906a4e3 100644
--- a/sysdeps/unix/sysv/linux/syscalls.list
+++ b/sysdeps/unix/sysv/linux/syscalls.list
@@ -8,7 +8,7 @@ creat - creat Ci:si __libc_creat creat
create_module EXTRA create_module 3 create_module
delete_module EXTRA delete_module 3 delete_module
epoll_create EXTRA epoll_create i:i epoll_create
-epoll_create2 EXTRA epoll_create2 i:ii epoll_create2
+epoll_create1 EXTRA epoll_create1 i:i epoll_create1
epoll_ctl EXTRA epoll_ctl i:iiip epoll_ctl
epoll_wait EXTRA epoll_wait Ci:ipii epoll_wait
fdatasync - fdatasync Ci:i fdatasync
diff --git a/sysdeps/unix/sysv/linux/x86_64/sys/epoll.h b/sysdeps/unix/sysv/linux/x86_64/sys/epoll.h
index dfb65fe5fa..234798e4b8 100644
--- a/sysdeps/unix/sysv/linux/x86_64/sys/epoll.h
+++ b/sysdeps/unix/sysv/linux/x86_64/sys/epoll.h
@@ -31,6 +31,16 @@ typedef __sigset_t sigset_t;
#endif
+/* Flags to be passed to epoll_create2. */
+enum
+ {
+ EPOLL_CLOEXEC = 02000000,
+#define EPOLL_CLOEXEC EPOLL_CLOEXEC
+ EPOLL_NONBLOCK = 04000
+#define EPOLL_NONBLOCK EPOLL_NONBLOCK
+ };
+
+
enum EPOLL_EVENTS
{
EPOLLIN = 0x001,
@@ -91,6 +101,10 @@ __BEGIN_DECLS
returned by epoll_create() should be closed with close(). */
extern int epoll_create (int __size) __THROW;
+/* Same as epoll_create but with an FLAGS parameter. The unused SIZE
+ parameter has been dropped. */
+extern int epoll_create1 (int __flags) __THROW;
+
/* Manipulate an epoll instance "epfd". Returns 0 in case of success,
-1 in case of error ( the "errno" variable will contain the