From: Tom Hughes Date: Thu, 30 Jan 2014 21:47:30 +0000 (+0000) Subject: Both eventfd and eventfd2 have post handlers that we were failing X-Git-Tag: svn/VALGRIND_3_10_0~652 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f1c82feda5c3ad93f0bbf8a9ec5df228e4712c53;p=thirdparty%2Fvalgrind.git Both eventfd and eventfd2 have post handlers that we were failing to call on most platforms. Fixes BZ #330459. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13784 --- diff --git a/NEWS b/NEWS index a1e54a4006..cac1d70cf8 100644 --- a/NEWS +++ b/NEWS @@ -46,6 +46,7 @@ where XXXXXX is the bug number as listed below. 328455 s390x: SIGILL after emitting wrong register pair for ldxbr 328711 valgrind.1 manpage "memcheck options" section is badly generated 329612 Incorrect handling of AT_BASE for image execution +330459 --track-fds=yes doesn't track eventfds Release 3.9.0 (31 October 2013) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/coregrind/m_syswrap/syswrap-amd64-linux.c b/coregrind/m_syswrap/syswrap-amd64-linux.c index 837dfc2717..82cbb327c7 100644 --- a/coregrind/m_syswrap/syswrap-amd64-linux.c +++ b/coregrind/m_syswrap/syswrap-amd64-linux.c @@ -1048,7 +1048,7 @@ static SyscallTableEntry syscall_table[] = { LINXY(__NR_epoll_pwait, sys_epoll_pwait), // 281 LINXY(__NR_signalfd, sys_signalfd), // 282 LINXY(__NR_timerfd_create, sys_timerfd_create), // 283 - LINX_(__NR_eventfd, sys_eventfd), // 284 + LINXY(__NR_eventfd, sys_eventfd), // 284 LINX_(__NR_fallocate, sys_fallocate), // 285 LINXY(__NR_timerfd_settime, sys_timerfd_settime), // 286 @@ -1056,7 +1056,7 @@ static SyscallTableEntry syscall_table[] = { LINXY(__NR_accept4, sys_accept4), // 288 LINXY(__NR_signalfd4, sys_signalfd4), // 289 - LINX_(__NR_eventfd2, sys_eventfd2), // 290 + LINXY(__NR_eventfd2, sys_eventfd2), // 290 LINXY(__NR_epoll_create1, sys_epoll_create1), // 291 LINXY(__NR_dup3, sys_dup3), // 292 LINXY(__NR_pipe2, sys_pipe2), // 293 diff --git a/coregrind/m_syswrap/syswrap-arm-linux.c b/coregrind/m_syswrap/syswrap-arm-linux.c index 9da50bcf47..d6c5530c6c 100644 --- a/coregrind/m_syswrap/syswrap-arm-linux.c +++ b/coregrind/m_syswrap/syswrap-arm-linux.c @@ -1189,7 +1189,7 @@ static SyscallTableEntry syscall_main_table[] = { LINX_(__NR_utimensat, sys_utimensat), // 320 LINXY(__NR_signalfd, sys_signalfd), // 321 LINXY(__NR_timerfd_create, sys_timerfd_create), // 322 - LINX_(__NR_eventfd, sys_eventfd), // 323 + LINXY(__NR_eventfd, sys_eventfd), // 323 LINXY(__NR_timerfd_settime, sys_timerfd_settime), // 325 LINXY(__NR_timerfd_gettime, sys_timerfd_gettime), // 326 @@ -1211,7 +1211,7 @@ static SyscallTableEntry syscall_main_table[] = { LINX_(__NR_fallocate, sys_fallocate), // 352 LINXY(__NR_signalfd4, sys_signalfd4), // 355 - LINX_(__NR_eventfd2, sys_eventfd2), // 356 + LINXY(__NR_eventfd2, sys_eventfd2), // 356 LINXY(__NR_epoll_create1, sys_epoll_create1), // 357 LINXY(__NR_dup3, sys_dup3), // 358 LINXY(__NR_pipe2, sys_pipe2), // 359 diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c index ce948f707d..94aac68ceb 100644 --- a/coregrind/m_syswrap/syswrap-arm64-linux.c +++ b/coregrind/m_syswrap/syswrap-arm64-linux.c @@ -1262,7 +1262,7 @@ static SyscallTableEntry syscall_main_table[] = { //ZZ LINX_(__NR_utimensat, sys_utimensat), // 320 //ZZ LINXY(__NR_signalfd, sys_signalfd), // 321 //ZZ LINXY(__NR_timerfd_create, sys_timerfd_create), // 322 -//ZZ LINX_(__NR_eventfd, sys_eventfd), // 323 +//ZZ LINXY(__NR_eventfd, sys_eventfd), // 323 //ZZ //ZZ LINXY(__NR_timerfd_settime, sys_timerfd_settime), // 325 //ZZ LINXY(__NR_timerfd_gettime, sys_timerfd_gettime), // 326 @@ -1284,7 +1284,7 @@ static SyscallTableEntry syscall_main_table[] = { //ZZ LINX_(__NR_fallocate, sys_fallocate), // 352 //ZZ //ZZ LINXY(__NR_signalfd4, sys_signalfd4), // 355 -//ZZ LINX_(__NR_eventfd2, sys_eventfd2), // 356 +//ZZ LINXY(__NR_eventfd2, sys_eventfd2), // 356 //ZZ LINXY(__NR_epoll_create1, sys_epoll_create1), // 357 //ZZ LINXY(__NR_inotify_init1, sys_inotify_init1), // 360 //ZZ LINXY(__NR_preadv, sys_preadv), // 361 diff --git a/coregrind/m_syswrap/syswrap-mips32-linux.c b/coregrind/m_syswrap/syswrap-mips32-linux.c index 4ca60112e0..e5f4f30c8e 100644 --- a/coregrind/m_syswrap/syswrap-mips32-linux.c +++ b/coregrind/m_syswrap/syswrap-mips32-linux.c @@ -1121,7 +1121,7 @@ static SyscallTableEntry syscall_main_table[] = { LINXY (__NR_timerfd_gettime, sys_timerfd_gettime), // 322 LINXY (__NR_timerfd_settime, sys_timerfd_settime), // 323 LINXY (__NR_signalfd4, sys_signalfd4), // 324 - LINX_ (__NR_eventfd2, sys_eventfd2), // 325 + LINXY (__NR_eventfd2, sys_eventfd2), // 325 //.. LINXY (__NR_pipe2, sys_pipe2), // 328 LINXY (__NR_inotify_init1, sys_inotify_init1), // 329 diff --git a/coregrind/m_syswrap/syswrap-ppc32-linux.c b/coregrind/m_syswrap/syswrap-ppc32-linux.c index ac5211b634..e808c42549 100644 --- a/coregrind/m_syswrap/syswrap-ppc32-linux.c +++ b/coregrind/m_syswrap/syswrap-ppc32-linux.c @@ -1240,14 +1240,14 @@ static SyscallTableEntry syscall_table[] = { LINX_(__NR_utimensat, sys_utimensat), // 304 LINXY(__NR_signalfd, sys_signalfd), // 305 LINXY(__NR_timerfd_create, sys_timerfd_create), // 306 - LINX_(__NR_eventfd, sys_eventfd), // 307 + LINXY(__NR_eventfd, sys_eventfd), // 307 LINX_(__NR_sync_file_range2, sys_sync_file_range2), // 308 LINX_(__NR_fallocate, sys_fallocate), // 309 // LINXY(__NR_subpage_prot, sys_ni_syscall), // 310 LINXY(__NR_timerfd_settime, sys_timerfd_settime), // 311 LINXY(__NR_timerfd_gettime, sys_timerfd_gettime), // 312 LINXY(__NR_signalfd4, sys_signalfd4), // 313 - LINX_(__NR_eventfd2, sys_eventfd2), // 314 + LINXY(__NR_eventfd2, sys_eventfd2), // 314 LINXY(__NR_epoll_create1, sys_epoll_create1), // 315 LINXY(__NR_dup3, sys_dup3), // 316 LINXY(__NR_pipe2, sys_pipe2), // 317 diff --git a/coregrind/m_syswrap/syswrap-ppc64-linux.c b/coregrind/m_syswrap/syswrap-ppc64-linux.c index 5946ee17f8..234778cb08 100644 --- a/coregrind/m_syswrap/syswrap-ppc64-linux.c +++ b/coregrind/m_syswrap/syswrap-ppc64-linux.c @@ -1033,14 +1033,14 @@ static SyscallTableEntry syscall_table[] = { LINX_(__NR_utimensat, sys_utimensat), // 304 LINXY(__NR_signalfd, sys_signalfd), // 305 LINXY(__NR_timerfd_create, sys_timerfd_create), // 306 - LINX_(__NR_eventfd, sys_eventfd), // 307 + LINXY(__NR_eventfd, sys_eventfd), // 307 LINX_(__NR_sync_file_range2, sys_sync_file_range2), // 308 LINX_(__NR_fallocate, sys_fallocate), // 309 // LINXY(__NR_subpage_prot, sys_ni_syscall), // 310 LINXY(__NR_timerfd_settime, sys_timerfd_settime), // 311 LINXY(__NR_timerfd_gettime, sys_timerfd_gettime), // 312 LINXY(__NR_signalfd4, sys_signalfd4), // 313 - LINX_(__NR_eventfd2, sys_eventfd2), // 314 + LINXY(__NR_eventfd2, sys_eventfd2), // 314 LINXY(__NR_epoll_create1, sys_epoll_create1), // 315 LINXY(__NR_dup3, sys_dup3), // 316 LINXY(__NR_pipe2, sys_pipe2), // 317 diff --git a/coregrind/m_syswrap/syswrap-s390x-linux.c b/coregrind/m_syswrap/syswrap-s390x-linux.c index 8bbdf3dfe1..686f7f2d3c 100644 --- a/coregrind/m_syswrap/syswrap-s390x-linux.c +++ b/coregrind/m_syswrap/syswrap-s390x-linux.c @@ -1034,13 +1034,13 @@ static SyscallTableEntry syscall_table[] = { LINX_(__NR_utimensat, sys_utimensat), // 315 LINXY(__NR_signalfd, sys_signalfd), // 316 GENX_(317, sys_ni_syscall), /* unimplemented (by the kernel) */ // 317 - LINX_(__NR_eventfd, sys_eventfd), // 318 + LINXY(__NR_eventfd, sys_eventfd), // 318 LINXY(__NR_timerfd_create, sys_timerfd_create), // 319 LINXY(__NR_timerfd_settime, sys_timerfd_settime), // 320 LINXY(__NR_timerfd_gettime, sys_timerfd_gettime), // 321 LINXY(__NR_signalfd4, sys_signalfd4), // 322 - LINX_(__NR_eventfd2, sys_eventfd2), // 323 + LINXY(__NR_eventfd2, sys_eventfd2), // 323 LINXY(__NR_inotify_init1, sys_inotify_init1), // 324 LINXY(__NR_pipe2, sys_pipe2), // 325 diff --git a/coregrind/m_syswrap/syswrap-x86-linux.c b/coregrind/m_syswrap/syswrap-x86-linux.c index 84dc2f2222..5e45f0c8e4 100644 --- a/coregrind/m_syswrap/syswrap-x86-linux.c +++ b/coregrind/m_syswrap/syswrap-x86-linux.c @@ -1803,13 +1803,13 @@ static SyscallTableEntry syscall_table[] = { LINX_(__NR_utimensat, sys_utimensat), // 320 LINXY(__NR_signalfd, sys_signalfd), // 321 LINXY(__NR_timerfd_create, sys_timerfd_create), // 322 - LINX_(__NR_eventfd, sys_eventfd), // 323 + LINXY(__NR_eventfd, sys_eventfd), // 323 LINX_(__NR_fallocate, sys_fallocate), // 324 LINXY(__NR_timerfd_settime, sys_timerfd_settime), // 325 LINXY(__NR_timerfd_gettime, sys_timerfd_gettime), // 326 LINXY(__NR_signalfd4, sys_signalfd4), // 327 - LINX_(__NR_eventfd2, sys_eventfd2), // 328 + LINXY(__NR_eventfd2, sys_eventfd2), // 328 LINXY(__NR_epoll_create1, sys_epoll_create1), // 329 LINXY(__NR_dup3, sys_dup3), // 330