https://bugs.kde.org/show_bug.cgi?id=464000
Bug ID: 464000 Summary: Test timerfd-syscall stops/fails when compiled with _TIME_BITS=64 on 32bit Classification: Developer tools Product: valgrind Version: 3.19.0 Platform: RedHat Enterprise Linux OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: general Assignee: jsew...@acm.org Reporter: dk...@vega.pgw.jp Target Milestone: --- Created attachment 155104 --> https://bugs.kde.org/attachment.cgi?id=155104&action=edit patch for timerfd-syscall test failure with _TIME_BITS=64 SUMMARY Test timerfd-syscall stops/fails when compiled with _TIME_BITS=64 on 32bit STEPS TO REPRODUCE 1. On LInux, prepare a 32bit compile environment. Installing 32bit development env and "setarch i686" is often enough. 2. CPPFLAGS="-D_TIME_BITS=64 -D_FILE_OFFSET_BITS=64" ./configure 3. make 4. make check OBSERVED RESULT Test halts at: timerfd-syscall: valgrind ./timerfd-syscall EXPECTED RESULT All tests pass. SOFTWARE/OS VERSIONS Linux: 5.14.0-162.6.1.el9_1.0.1.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Nov 28 18:44:09 UTC 2022 i686 i686 i386 GNU/Linux glibc: glibc-2.34-28.el9_0.v1.i586 ADDITIONAL INFORMATION timerfd-syscall.c overrides system function timerfd_settime() and timerfd_gettime(), but when _TIME_BITS=64 is enabled on GLIBC system, these function calls become alias to __timerfd_settime64(), __timerfd_gettime64(). timerfd-syscall.c should call the correct underlining system call under _TIME_BITS=64. The attached patch seems to fix this. Note that #include <sys/timerfd.h> is not surrounded by #if defined(HAVE_SYS_TIMERFD_H), since configure does not yet detect this. -- You are receiving this mail because: You are watching all bug changes.