Index: desc.c
===================================================================
RCS file: /cvsroot/strace/strace/desc.c,v
retrieving revision 1.28
diff -u -r1.28 desc.c
--- desc.c	24 Jul 2007 01:57:11 -0000	1.28
+++ desc.c	24 Jul 2007 03:07:41 -0000
@@ -669,8 +669,8 @@
 	return 0;
 }
 
-int
-sys_epoll_wait(tcp)
+static void
+epoll_wait_common(tcp)
 struct tcb *tcp;
 {
 	if (entering(tcp))
@@ -708,6 +708,23 @@
 		}
 		tprintf(", %ld, %ld", tcp->u_arg[2], tcp->u_arg[3]);
 	}
+}
+
+int
+sys_epoll_wait(tcp)
+struct tcb *tcp;
+{
+	epoll_wait_common(tcp);
+	return 0;
+}
+
+int
+sys_epoll_pwait(tcp)
+struct tcb *tcp;
+{
+	epoll_wait_common(tcp);
+	if (exiting(tcp))
+		print_sigset(tcp, tcp->u_arg[4], 0);
 	return 0;
 }
 
Index: linux/syscall.h
===================================================================
RCS file: /cvsroot/strace/strace/linux/syscall.h,v
retrieving revision 1.50
diff -u -r1.50 syscall.h
--- linux/syscall.h	24 Jul 2007 01:57:11 -0000	1.50
+++ linux/syscall.h	24 Jul 2007 03:07:41 -0000
@@ -102,7 +102,7 @@
 int sys_mbind(), sys_get_mempolicy(), sys_set_mempolicy(), sys_move_pages();
 int sys_arch_prctl();
 int sys_io_setup(), sys_io_submit(), sys_io_cancel(), sys_io_getevents(), sys_io_destroy();
-int sys_utimensat();
+int sys_utimensat(), sys_epoll_pwait();
 
 /* sys_socketcall subcalls */
 
Index: linux/syscallent.h
===================================================================
RCS file: /cvsroot/strace/strace/linux/syscallent.h,v
retrieving revision 1.44
diff -u -r1.44 syscallent.h
--- linux/syscallent.h	24 Jul 2007 01:57:11 -0000	1.44
+++ linux/syscallent.h	24 Jul 2007 03:07:41 -0000
@@ -349,7 +349,7 @@
 	{ 4,	TD,	printargs,		"vmsplice"	}, /* 316 */
 	{ 6,	0,	sys_move_pages,		"move_pages"	}, /* 317 */
 	{ 5,	0,	printargs,		"SYS_318"	}, /* 318 */
-	{ 5,	0,	printargs,		"SYS_319"	}, /* 319 */
+	{ 5,	TD,	sys_epoll_pwait,	"epoll_pwait"	}, /* 319 */
 	{ 4,	TD|TF,	sys_utimensat,		"utimensat"	}, /* 320 */
 	{ 5,	0,	printargs,		"SYS_321"	}, /* 321 */
 	{ 5,	0,	printargs,		"SYS_322"	}, /* 322 */
Index: linux/x86_64/syscallent.h
===================================================================
RCS file: /cvsroot/strace/strace/linux/x86_64/syscallent.h,v
retrieving revision 1.23
diff -u -r1.23 syscallent.h
--- linux/x86_64/syscallent.h	24 Jul 2007 01:57:11 -0000	1.23
+++ linux/x86_64/syscallent.h	24 Jul 2007 03:07:41 -0000
@@ -279,3 +279,4 @@
 	{ 4,	TD,	printargs,		"vmsplice"	}, /* 278 */
 	{ 6,	0,	sys_move_pages,		"move_pages"	}, /* 279 */
 	{ 4,	TD|TF,	sys_utimensat,		"utimensat"	}, /* 280 */
+	{ 5,	TD,	sys_epoll_pwait,	"epoll_pwait"	}, /* 281 */
