From: Julian Seward Date: Mon, 10 Nov 2008 00:55:21 +0000 (+0000) Subject: Add a new expected output that applies to glibc-2.7 and later. X-Git-Tag: svn/VALGRIND_3_4_0~139 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fb05007dbcb34105d16422f7845ec0772243598d;p=thirdparty%2Fvalgrind.git Add a new expected output that applies to glibc-2.7 and later. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8755 --- diff --git a/helgrind/tests/Makefile.am b/helgrind/tests/Makefile.am index 6c0f2fce72..6ef954ddf9 100644 --- a/helgrind/tests/Makefile.am +++ b/helgrind/tests/Makefile.am @@ -74,6 +74,7 @@ EXTRA_DIST = $(noinst_SCRIPTS) \ tc20_verifywrap.stderr.exp-glibc23-amd64 \ tc20_verifywrap.stderr.exp-glibc25-amd64 \ tc20_verifywrap.stderr.exp-glibc25-x86 \ + tc20_verifywrap.stderr.exp-glibc28-amd64 \ tc21_pthonce.vgtest tc21_pthonce.stdout.exp \ tc21_pthonce.stderr.exp-glibc23-amd64 \ tc21_pthonce.stderr.exp-glibc25-amd64 \ diff --git a/helgrind/tests/tc20_verifywrap.stderr.exp-glibc28-amd64 b/helgrind/tests/tc20_verifywrap.stderr.exp-glibc28-amd64 new file mode 100644 index 0000000000..ef696ce576 --- /dev/null +++ b/helgrind/tests/tc20_verifywrap.stderr.exp-glibc28-amd64 @@ -0,0 +1,165 @@ + + + +------ This is output for >= glibc 2.4 ------ + +---------------- pthread_create/join ---------------- + +Thread #1 is the program's root thread + +Thread #2 was created + at 0x........: clone (in /...libc...) + by 0x........: ... + by 0x........: pthread_create@GLIBC_ (in /lib/libpthread...) + by 0x........: pthread_create@* (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:76) + +Possible data race during write of size 2 at 0x........ by thread #1 + at 0x........: main (tc20_verifywrap.c:78) + This conflicts with a previous access by thread #2 + at 0x........: racy_child (tc20_verifywrap.c:34) + by 0x........: mythread_wrapper (hg_intercepts.c:...) + by 0x........: ... + by 0x........: ... + Location 0x........ is 0 bytes inside global var "unprotected" + declared at tc20_verifywrap.c:27 + +Thread #1's call to pthread_join failed + with error code 35 (EDEADLK: Resource deadlock would occur) + at 0x........: pthread_join (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:83) + +---------------- pthread_mutex_lock et al ---------------- + + +Thread #1's call to pthread_mutex_init failed + with error code 95 (EOPNOTSUPP: Operation not supported on transport endpoint) + at 0x........: pthread_mutex_init (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:92) + +Thread #1: pthread_mutex_destroy of a locked mutex + at 0x........: pthread_mutex_destroy (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:102) + +Thread #1's call to pthread_mutex_destroy failed + with error code 16 (EBUSY: Device or resource busy) + at 0x........: pthread_mutex_destroy (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:102) + +Thread #1's call to pthread_mutex_lock failed + with error code 22 (EINVAL: Invalid argument) + at 0x........: pthread_mutex_lock (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:108) + +Thread #1's call to pthread_mutex_trylock failed + with error code 22 (EINVAL: Invalid argument) + at 0x........: pthread_mutex_trylock (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:116) + +Thread #1's call to pthread_mutex_timedlock failed + with error code 22 (EINVAL: Invalid argument) + at 0x........: pthread_mutex_timedlock (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:121) + +Thread #1 unlocked an invalid lock at 0x........ + at 0x........: pthread_mutex_unlock (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:125) + +Thread #1's call to pthread_mutex_unlock failed + with error code 22 (EINVAL: Invalid argument) + at 0x........: pthread_mutex_unlock (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:125) + +---------------- pthread_cond_wait et al ---------------- + + +Thread #1: pthread_cond_{timed}wait called with un-held mutex + at 0x........: pthread_cond_wait@* (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:147) + +Thread #1's call to pthread_cond_wait failed + with error code 1 (EPERM: Operation not permitted) + at 0x........: pthread_cond_wait@* (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:147) + +FIXME: can't figure out how to verify wrap of pthread_cond_signal + + +FIXME: can't figure out how to verify wrap of pthread_broadcast_signal + + +Thread #1: pthread_cond_{timed}wait called with un-held mutex + at 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:165) + +Thread #1's call to pthread_cond_timedwait failed + with error code 22 (EINVAL: Invalid argument) + at 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:165) + +---------------- pthread_rwlock_* ---------------- + + +Thread #1 unlocked a not-locked lock at 0x........ + at 0x........: pthread_rwlock_unlock (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:179) + Lock at 0x........ was first observed + at 0x........: pthread_rwlock_init (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:178) +(1) no error on next line +(2) no error on next line +(3) ERROR on next line + +Thread #1 unlocked a not-locked lock at 0x........ + at 0x........: pthread_rwlock_unlock (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:196) + Lock at 0x........ was first observed + at 0x........: pthread_rwlock_init (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:186) +(4) no error on next line +(5) no error on next line +(6) no error on next line +(7) no error on next line +(8) ERROR on next line + +Thread #1 unlocked a not-locked lock at 0x........ + at 0x........: pthread_rwlock_unlock (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:212) + Lock at 0x........ was first observed + at 0x........: pthread_rwlock_init (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:186) + +---------------- sem_* ---------------- + + +Thread #1's call to sem_init failed + with error code 22 (EINVAL: Invalid argument) + at 0x........: sem_init@* (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:228) + +FIXME: can't figure out how to verify wrap of sem_destroy + + +Thread #1: Bug in libpthread: sem_wait succeeded on semaphore without prior sem_post + at 0x........: sem_wait_WRK (hg_intercepts.c:...) + by 0x........: sem_wait (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:242) + +Thread #1's call to sem_post failed + with error code 22 (EINVAL: Invalid argument) + at 0x........: sem_post_WRK (hg_intercepts.c:...) + by 0x........: sem_post (hg_intercepts.c:...) + by 0x........: main (tc20_verifywrap.c:245) + +FIXME: can't figure out how to verify wrap of sem_post + + +------------ dealloc of mem holding locks ------------ + + +Thread #1: Exiting thread still holds 1 lock + at 0x........: _Exit (in /...libc...) + by 0x........: ... + by 0x........: (below main) (in /...libc...) + +ERROR SUMMARY: 21 errors from 21 contexts (suppressed: 0 from 0)