|
From: <sv...@va...> - 2008-11-10 00:16:42
|
Author: sewardj
Date: 2008-11-10 00:16:34 +0000 (Mon, 10 Nov 2008)
New Revision: 8753
Log:
More updates to expected outputs. This currently gives Helgrind zero
failures on opensuse 10.2 on amd64 (glibc 2.5, gcc-4.1.3).
Modified:
trunk/helgrind/tests/tc09_bad_unlock.c
trunk/helgrind/tests/tc09_bad_unlock.stderr.exp-glibc25-amd64
trunk/helgrind/tests/tc17_sembar.stderr.exp-glibc25-amd64
trunk/helgrind/tests/tc20_verifywrap.stderr.exp-glibc25-amd64
Modified: trunk/helgrind/tests/tc09_bad_unlock.c
===================================================================
--- trunk/helgrind/tests/tc09_bad_unlock.c 2008-11-09 23:33:32 UTC (rev 8752)
+++ trunk/helgrind/tests/tc09_bad_unlock.c 2008-11-10 00:16:34 UTC (rev 8753)
@@ -46,7 +46,7 @@
int main ( void )
{
+ nearly_main(); fprintf(stderr, "---------------------\n" );
nearly_main();
- nearly_main();
return 0;
}
Modified: trunk/helgrind/tests/tc09_bad_unlock.stderr.exp-glibc25-amd64
===================================================================
--- trunk/helgrind/tests/tc09_bad_unlock.stderr.exp-glibc25-amd64 2008-11-09 23:33:32 UTC (rev 8752)
+++ trunk/helgrind/tests/tc09_bad_unlock.stderr.exp-glibc25-amd64 2008-11-10 00:16:34 UTC (rev 8753)
@@ -39,15 +39,8 @@
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:...)
by 0x........: nearly_main (tc09_bad_unlock.c:27)
@@ -55,8 +48,18 @@
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
at 0x........: clone (in /...libc...)
by 0x........: ...
@@ -74,7 +77,7 @@
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 @@
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)
Modified: trunk/helgrind/tests/tc17_sembar.stderr.exp-glibc25-amd64
===================================================================
--- trunk/helgrind/tests/tc17_sembar.stderr.exp-glibc25-amd64 2008-11-09 23:33:32 UTC (rev 8752)
+++ trunk/helgrind/tests/tc17_sembar.stderr.exp-glibc25-amd64 2008-11-10 00:16:34 UTC (rev 8753)
@@ -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)
Modified: trunk/helgrind/tests/tc20_verifywrap.stderr.exp-glibc25-amd64
===================================================================
--- trunk/helgrind/tests/tc20_verifywrap.stderr.exp-glibc25-amd64 2008-11-09 23:33:32 UTC (rev 8752)
+++ trunk/helgrind/tests/tc20_verifywrap.stderr.exp-glibc25-amd64 2008-11-10 00:16:34 UTC (rev 8753)
@@ -14,13 +14,15 @@
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 @@
------------ 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)
|