bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

helgrind reported data race for test-lock is it a false positive ?


From: Normand
Subject: helgrind reported data race for test-lock is it a false positive ?
Date: Thu, 16 Jul 2015 13:56:51 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:31.0) Gecko/20100101 Thunderbird/31.7.0

Hi there,
I am looking at the test-lock failure reported by (1) while findutils building 
in opensuse for ppc64le architecture.
Helgrind is reporting data race for the three *_checker_done volatiles as 
summarized in (2)

Is is a false positive or a real problem ?

(1) https://bugzilla.suse.com/show_bug.cgi?id=923486
(2) extract of helgrind output (full log in attachment)
===
$valgrind --tool=helgrind ./test-lock
...
==1408== ----------------------------------------------------------------
==1408==
==1408== Possible data race during write of size 4 at 0x102BED4C by thread #1
==1408== Locks held: none
==1408==    at 0x10001078: test_rwlock (test-lock.c:300)
==1408==    by 0x10001078: main (test-lock.c:577)
==1408==
==1408== This conflicts with a previous read of size 4 by thread #17
==1408== Locks held: none
==1408==    at 0x10002118: rwlock_checker_thread (test-lock.c:264)
==1408==    by 0x406C3A3: ??? (in 
/usr/lib64/valgrind/vgpreload_helgrind-ppc64le-linux.so)
==1408==    by 0x40B9453: start_thread (pthread_create.c:335)
==1408==    by 0x41FE0C3: clone (clone.S:96)
==1408==  Address 0x102bed4c is 0 bytes inside data symbol "rwlock_checker_done"
==1408==
==1408== ----------------------------------------------------------------
===
=== related source code:
===
findutils-4.5.14/tests/test-lock.c:215: lock_checker_done = 1;
findutils-4.5.14/tests/test-lock.c:180: while (!lock_checker_done)
===
findutils-4.5.14/tests/test-lock.c:264: while (!rwlock_checker_done)
findutils-4.5.14/tests/test-lock.c:300: rwlock_checker_done = 1;
===
findutils-4.5.14/tests/test-lock.c:366: while (!reclock_checker_done)
findutils-4.5.14/tests/test-lock.c:401: reclock_checker_done = 1;
===
--
Michel Normand

Attachment: findutils_vm64_helgrind.log
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]