about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/x86_64/sys
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-05-21 18:23:50 +0000
committerUlrich Drepper <drepper@redhat.com>2007-05-21 18:23:50 +0000
commitaf269dd9541f881695ac27ad951c094b8dbd4738 (patch)
treebdf376bd4c205c886ba088ba94b80f80ac391ada /sysdeps/unix/sysv/linux/x86_64/sys
parent1f4843fbffccebc60f85b1e1a48711d4fb9ab210 (diff)
downloadglibc-af269dd9541f881695ac27ad951c094b8dbd4738.tar.gz
glibc-af269dd9541f881695ac27ad951c094b8dbd4738.tar.xz
glibc-af269dd9541f881695ac27ad951c094b8dbd4738.zip
[BZ #4514]
	* stdio-common/vfprintf.c (vfprintf): Don't shadow workstart variable,
	reinitialize workend at the start of each do_positional format spec
	loop, free workstart before do_positional loops.
	(printf_unknown): Fix size of work_buffer.
	* stdio-common/tst-sprintf.c (main): Add 3 new testcases.
Diffstat (limited to 'sysdeps/unix/sysv/linux/x86_64/sys')
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/sys/epoll.h20
1 files changed, 19 insertions, 1 deletions
diff --git a/sysdeps/unix/sysv/linux/x86_64/sys/epoll.h b/sysdeps/unix/sysv/linux/x86_64/sys/epoll.h
index 02672d3c75..26f23da403 100644
--- a/sysdeps/unix/sysv/linux/x86_64/sys/epoll.h
+++ b/sysdeps/unix/sysv/linux/x86_64/sys/epoll.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002,2003,2004,2005,2006 Free Software Foundation, Inc.
+/* Copyright (C) 2002,2003,2004,2005,2006,2007 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -22,6 +22,14 @@
 #include <stdint.h>
 #include <sys/types.h>
 
+/* Get __sigset_t.  */
+#include <bits/sigset.h>
+
+#ifndef __sigset_t_defined
+# define __sigset_t_defined
+typedef __sigset_t sigset_t;
+#endif
+
 
 enum EPOLL_EVENTS
   {
@@ -105,6 +113,16 @@ extern int epoll_ctl (int __epfd, int __op, int __fd,
 extern int epoll_wait (int __epfd, struct epoll_event *__events,
 		       int __maxevents, int __timeout);
 
+
+/* Same as epoll_wait, but the thread's signal mask is temporarily
+   and atomically replaced with the one provided as parameter.
+
+   This function is a cancellation point and therefore not marked with
+   __THROW.  */
+extern int epoll_pwait (int __epfd, struct epoll_event *__events,
+			int __maxevents, int __timeout,
+			__const __sigset_t *__ss);
+
 __END_DECLS
 
 #endif /* sys/epoll.h */