aboutsummaryrefslogtreecommitdiff
path: root/helgrind/tests
diff options
context:
space:
mode:
authorsewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9>2008-11-10 00:16:34 +0000
committersewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9>2008-11-10 00:16:34 +0000
commitab19515866d52069446642353fd297bb398ecd5a (patch)
treeef1fce9f671b8dfd67c538d7e47a055d2c9331b6 /helgrind/tests
parent7e18ab197de5412ede3197c7f9386dc5bf7d3cc3 (diff)
downloadvalgrind-ab19515866d52069446642353fd297bb398ecd5a.tar.gz
More updates to expected outputs. This currently gives Helgrind zero
failures on opensuse 10.2 on amd64 (glibc 2.5, gcc-4.1.3). git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8753 a5019735-40e9-0310-863c-91ae7b9d1cf9
Diffstat (limited to 'helgrind/tests')
-rw-r--r--helgrind/tests/tc09_bad_unlock.c2
-rw-r--r--helgrind/tests/tc09_bad_unlock.stderr.exp-glibc25-amd6434
-rw-r--r--helgrind/tests/tc17_sembar.stderr.exp-glibc25-amd6445
-rw-r--r--helgrind/tests/tc20_verifywrap.stderr.exp-glibc25-amd6423
4 files changed, 31 insertions, 73 deletions
diff --git a/helgrind/tests/tc09_bad_unlock.c b/helgrind/tests/tc09_bad_unlock.c
index bb44eb356..238ce9bf6 100644
--- a/helgrind/tests/tc09_bad_unlock.c
+++ b/helgrind/tests/tc09_bad_unlock.c
@@ -46,7 +46,7 @@ void nearly_main ( void )
int main ( void )
{
- nearly_main();
+ nearly_main(); fprintf(stderr, "---------------------\n" );
nearly_main();
return 0;
}
diff --git a/helgrind/tests/tc09_bad_unlock.stderr.exp-glibc25-amd64 b/helgrind/tests/tc09_bad_unlock.stderr.exp-glibc25-amd64
index e851dc293..1e56cf842 100644
--- a/helgrind/tests/tc09_bad_unlock.stderr.exp-glibc25-amd64
+++ b/helgrind/tests/tc09_bad_unlock.stderr.exp-glibc25-amd64
@@ -39,14 +39,7 @@ Thread #1's call to pthread_mutex_unlock failed
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:49)
-
-Thread #1 deallocated location 0x........ containing a locked lock
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:49)
- Lock at 0x........ was first observed
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:49)
+---------------------
Thread #1 unlocked a not-locked lock at 0x........
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
@@ -55,6 +48,16 @@ Thread #1 unlocked a not-locked lock at 0x........
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:23)
+ by 0x........: main (tc09_bad_unlock.c:49)
+
+Thread #1: Attempt to re-lock a non-recursive lock I already hold
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
+ by 0x........: main (tc09_bad_unlock.c:50)
+
+Thread #1: Bug in libpthread: recursive write lock granted on mutex/wrlock which does not support recursion
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
by 0x........: main (tc09_bad_unlock.c:50)
Thread #3 was created
@@ -74,7 +77,7 @@ Thread #3 unlocked lock at 0x........ currently held by thread #1
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
+ by 0x........: main (tc09_bad_unlock.c:49)
Thread #1 unlocked an invalid lock at 0x........
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
@@ -87,12 +90,9 @@ Thread #1's call to pthread_mutex_unlock failed
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:50)
-Thread #1 deallocated location 0x........ containing a locked lock
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:50)
- Lock at 0x........ was first observed
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
+Thread #1: Exiting thread still holds 1 lock
+ at 0x........: _Exit (in /...libc...)
+ by 0x........: ...
+ by 0x........: (below main) (in /...libc...)
-ERROR SUMMARY: 10 errors from 10 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0)
diff --git a/helgrind/tests/tc17_sembar.stderr.exp-glibc25-amd64 b/helgrind/tests/tc17_sembar.stderr.exp-glibc25-amd64
index 48b0c29bf..b3f318ea9 100644
--- a/helgrind/tests/tc17_sembar.stderr.exp-glibc25-amd64
+++ b/helgrind/tests/tc17_sembar.stderr.exp-glibc25-amd64
@@ -1,48 +1,5 @@
starting
-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 (tc17_sembar.c:195)
-
-Thread #3 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 (tc17_sembar.c:195)
-
-Thread #4 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 (tc17_sembar.c:195)
-
-Thread #5 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 (tc17_sembar.c:195)
-
-Possible data race during read of size 4 at 0x........
- at 0x........: gomp_barrier_wait (tc17_sembar.c:122)
- by 0x........: child (tc17_sembar.c:161)
- by 0x........: mythread_wrapper (hg_intercepts.c:...)
- by 0x........: ...
- by 0x........: ...
- Old state: shared-modified by threads #2, #3, #4, #5
- New state: shared-modified by threads #2, #3, #4, #5
- Reason: this thread, #2, holds no consistent locks
- Last consistently used lock for 0x........ was first observed
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: gomp_barrier_init (tc17_sembar.c:46)
- by 0x........: main (tc17_sembar.c:192)
- Location 0x........ is 0 bytes inside bar.arrived,
- declared at tc17_sembar.c:136, in frame #0 of thread 2
done, result is 88, should be 88
-ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
diff --git a/helgrind/tests/tc20_verifywrap.stderr.exp-glibc25-amd64 b/helgrind/tests/tc20_verifywrap.stderr.exp-glibc25-amd64
index e5f3070a3..3651269c2 100644
--- a/helgrind/tests/tc20_verifywrap.stderr.exp-glibc25-amd64
+++ b/helgrind/tests/tc20_verifywrap.stderr.exp-glibc25-amd64
@@ -14,13 +14,15 @@ Thread #2 was created
by 0x........: pthread_create@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:76)
-Possible data race during write of size 2 at 0x........
+Possible data race during write of size 2 at 0x........ by thread #1
at 0x........: main (tc20_verifywrap.c:78)
- Old state: owned exclusively by thread #2
- New state: shared-modified by threads #1, #2
- Reason: this thread, #1, holds no locks at all
- Location 0x........ is 0 bytes inside global var "unprotected"
- declared at tc20_verifywrap.c:27
+ 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)
@@ -149,10 +151,9 @@ FIXME: can't figure out how to verify wrap of sem_post
------------ dealloc of mem holding locks ------------
-Thread #1 deallocated location 0x........ containing a locked lock
- at 0x........: main (tc20_verifywrap.c:262)
- Lock at 0x........ was first observed
- at 0x........: pthread_rwlock_init (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:216)
+Thread #1: Exiting thread still holds 1 lock
+ at 0x........: _Exit (in /...libc...)
+ by 0x........: ...
+ by 0x........: (below main) (in /...libc...)
ERROR SUMMARY: 20 errors from 20 contexts (suppressed: 0 from 0)