|
From: <sv...@va...> - 2012-04-01 15:07:03
|
bart 2012-04-01 16:06:57 +0100 (Sun, 01 Apr 2012)
New Revision: 12475
Log:
drd: Reenable reporting races on stack variables that are shared over threads for --check-stack-var=yes.
Copied files:
trunk/drd/tests/hg05_race2.stderr.exp-powerpc
(from rev 12473, trunk/drd/tests/hg05_race2.stderr.exp-powerpc)
Modified files:
trunk/drd/drd_load_store.c
trunk/drd/tests/hg05_race2.stderr.exp
Copied: trunk/drd/tests/hg05_race2.stderr.exp-powerpc (+0 -0)
===================================================================
Modified: trunk/drd/drd_load_store.c (+2 -1)
===================================================================
--- trunk/drd/drd_load_store.c 2012-04-01 15:40:16 +01:00 (rev 12474)
+++ trunk/drd/drd_load_store.c 2012-04-01 16:06:57 +01:00 (rev 12475)
@@ -140,7 +140,8 @@
ThreadId vg_tid;
vg_tid = VG_(get_running_tid)();
- if (DRD_(thread_address_on_any_stack)(addr)) {
+ if (!DRD_(get_check_stack_accesses)()
+ && DRD_(thread_address_on_any_stack)(addr)) {
#if 0
GenericErrInfo GEI = {
.tid = DRD_(thread_get_running_tid)(),
Modified: trunk/drd/tests/hg05_race2.stderr.exp (+22 -1)
===================================================================
--- trunk/drd/tests/hg05_race2.stderr.exp 2012-04-01 15:40:16 +01:00 (rev 12474)
+++ trunk/drd/tests/hg05_race2.stderr.exp 2012-04-01 16:06:57 +01:00 (rev 12475)
@@ -1,3 +1,24 @@
+Thread 3:
+Conflicting load by thread 3 at 0x........ size 4
+ at 0x........: th (hg05_race2.c:17)
+ by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
+Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
+declared at hg05_race2.c:24, in frame #? of thread 1
+Other segment start (thread 2)
+ (thread finished, call stack no longer available)
+Other segment end (thread 2)
+ (thread finished, call stack no longer available)
-ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
+Conflicting store by thread 3 at 0x........ size 4
+ at 0x........: th (hg05_race2.c:17)
+ by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
+Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
+declared at hg05_race2.c:24, in frame #? of thread 1
+Other segment start (thread 2)
+ (thread finished, call stack no longer available)
+Other segment end (thread 2)
+ (thread finished, call stack no longer available)
+
+
+ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
|