|
From: Mark W. <mj...@re...> - 2016-09-18 20:18:27
|
On Sun, Sep 18, 2016 at 09:45:08PM +0200, Ivo Raisr wrote: > 2016-09-18 15:50 GMT+02:00 Rich Coe <rc...@wi...>: > > > I found the helgrind and drd tests bar_bad are hanging: > > > > #0 vgModuleLocal_do_syscall_for_client_WRK () at > > m_syswrap/syscall-amd64-linux.S:173 > > #1 0x00000000380c0638 in do_syscall_for_client (syscall_mask=0x802c53d80, > > tst=0x802018f90, syscallno=202) > > at m_syswrap/syswrap-main.c:339 > > #2 vgPlain_client_syscall (tid=tid@entry=1, trc=trc@entry=73) at > > m_syswrap/syswrap-main.c:2007 > > #3 0x00000000380bd02b in handle_syscall (tid=tid@entry=1, trc=73) at > > m_scheduler/scheduler.c:1118 > > #4 0x00000000380be697 in vgPlain_scheduler (tid=tid@entry=1) at > > m_scheduler/scheduler.c:1435 > > #5 0x00000000380cdc07 in thread_wrapper (tidW=1) at > > m_syswrap/syswrap-linux.c:103 > > #6 run_a_thread_NORETURN (tidW=1) at m_syswrap/syswrap-linux.c:156 > > #7 0x0000000000000000 in ?? () > > > > On my Linux/Ubuntu box these tests hang even when run natively during the > fourth testcase described as > "destroy a barrier that has waiting threads". According to POSIX [1]: > "...The results are undefined if *pthread_barrier_destroy*() is called when > any thread is blocked on the barrier... " > which bar_bad precisely does. > > Perhaps a timer which would time out this hang would be handy here. My apologies for not recognizing this earlier. We carry a patch in Fedora to work around this test hang. The workaround is attached to this bug report: https://bugsfiles.kde.org/attachment.cgi?id=96765 As you can read in that bug report the workaround isn't ideal because it might still FAIL the test. If someone could take a look at the bug and proposed patch to see if it can somehow be changed so that it makes the test reliably pass with older and newer glibc that would be very appreciated. Thanks, Mark |