Update helgrind default suppression so that it matches with
both --read-inline-info=yes or =no

Some piece of code in glibc produces an error to be suppressed
with default helgrind supp file.
The stacktrace with inline info is:
==14392== Possible data race during write of size 1 at 0x5BB36A7 by thread #1
==14392== Locks held: none
==14392==    at 0x4C2B3B5: mempcpy (vg_replace_strmem.c:1354)
==14392==    by 0x40107FD: _dl_allocate_tls_init (dl-tls.c:437)
==14392==    by 0x4E3BF0F: get_cached_stack (allocatestack.c:250)
==14392==    by 0x4E3BF0F: allocate_stack (allocatestack.c:486)
==14392==    by 0x4E3BF0F: pthread_create@@GLIBC_2.2.5 (pthread_create.c:460)
==14392==    by 0x4C3039C: pthread_create_WRK (hg_intercepts.c:270)
==14392==    by 0x4C304AB: pthread_create@* (hg_intercepts.c:301)
==14392==    by 0x400926: main (tc22_exit_w_lock.c:42)

stack trace without inline info:
==5432==    at 0x4C2B3B5: mempcpy (vg_replace_strmem.c:1354)
==5432==    by 0x40107FD: _dl_allocate_tls_init (dl-tls.c:437)
==5432==    by 0x4E3BF0F: pthread_create@@GLIBC_2.2.5 (allocatestack.c:250)
==5432==    by 0x4C3039C: pthread_create_WRK (hg_intercepts.c:270)
==5432==    by 0x4C304AB: pthread_create@* (hg_intercepts.c:301)
==5432==    by 0x400926: main (tc22_exit_w_lock.c:42)

The suppression supposed to match the above is:
{
   helgrind---_dl_allocate_tls 
   Helgrind:Race
   fun:mempcpy
   fun:_dl_allocate_tls_init
   fun:pthread_create@@GLIBC_2.2*
   fun:pthread_create_WRK
   fun:pthread_create@*
}

This only matches the 2nd stack trace, does not match the one
with inline info.

2 solutions:
* only match the last top 2 fun, i.e. a suppression such as:
{
   helgrind---_dl_allocate_tls 
   Helgrind:Race
   fun:mempcpy
   fun:_dl_allocate_tls_init
}

Or alternatively use ...
{
   helgrind---_dl_allocate_tls 
   Helgrind:Race
   fun:mempcpy
   fun:_dl_allocate_tls_init
   ...
   fun:pthread_create@@GLIBC_2.2*
   fun:pthread_create_WRK
   fun:pthread_create@*
}

As helgrind suppressions are usually precise and/or use ...,
this last approach chosen



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14436 a5019735-40e9-0310-863c-91ae7b9d1cf9
1 file changed