{
	glibc-freeres-dbg
	Memcheck:Free
	fun:free
	fun:free_mem
	fun:__libc_freeres
}
{
	glibc-freeres
	Memcheck:Free
	fun:free
	obj:/lib*/libc-*.so
	fun:__libc_freeres
}
{
	glibc-etch1
	Memcheck:Free
	fun:*
	fun:_dl_allocate_tls
}
{
	glibc-etch2
	Memcheck:Free
	obj:/lib*/ld-*.so
	obj:/lib*/ld-*.so
}
{
       glibc-etch1
       Memcheck:Free
       fun:*
       fun:_dl_allocate_tls
}
{
       glibc-etch2
       Memcheck:Addr8
       obj:/lib*/ld-*.so
       obj:/lib*/ld-*.so
}
{
       glibc-etch2
       Memcheck:Addr4
       obj:/lib*/ld-*.so
       obj:/lib*/ld-*.so
}
{
	helgrind-glibc27-dbg01
	Helgrind:Race
	fun:mythread_wrapper
	fun:start_thread
}
{
	helgrind-glibc27-dbg02
	Helgrind:Race
	fun:pthread_mutex_*
}
{
	helgrind-glibc27-dbg03
	Helgrind:Race
	fun:pthread_create*
}
{
	helgrind-glibc27-dbg04
	Helgrind:Race
	fun:pthread_create*
}
{
	helgrind-glibc27-dbg05
	Helgrind:Race
	fun:__deallocate_stack
	fun:start_thread
}
{
	helgrind-glibc27-dbg05
	Helgrind:Race
	fun:free_stacks
	fun:__deallocate_stack
	fun:start_thread
}
{
	helgrind-glibc27-dbg06
	Helgrind:Race
	fun:*
	obj:/usr/lib/debug/libpthread-*.so
}
{
	helgrind-glibc27-dbg06
	Helgrind:Race
	fun:*
	obj:/lib/libpthread-*.so
}
{
	helgrind-glibc27-dbg08
	Helgrind:Race
	obj:/lib/ld-*.so
}
{
	helgrind-glibc27-dbg09
	Helgrind:Race
	fun:*
	fun:exit
}
{
	helgrind-glibc27-dbg10
	Helgrind:Race
	fun:*
	fun:*
	fun:exit
}
{
	helgrind-glibc27-dbg11
	Helgrind:Race
	fun:*
	fun:*
	fun:*
	fun:exit
}
{
	helgrind-glibc27-dbg12
	Helgrind:Race
	fun:*
	fun:*
	fun:*
	fun:*
	fun:exit
}
{
	helgrind-glibc27-dbg13
	Helgrind:Race
	fun:*
	fun:*
	fun:ctime_r
}
{
	helgrind-glibc27-dbg14
	Helgrind:Race
	fun:_IO_link_in
	fun:_IO_file_init*
}
# libc has a gconv_lock, but valgrind doesn't know that because it uses lll_lock
# instead of pthread_mutex_lock
{
	helgrind-glibc27-dbg15
	Helgrind:Race
	fun:__gconv_release_shlib
}
{
	helgrind-glibc27-dbg16
	Helgrind:Race
	fun:__gconv_find_shlib
}
{
	helgrind-glibc27-dbg17
	Helgrind:Race
	fun:exit
}

{
# suppress false positives, see bb 1189
   chm-etch-gcc41-fp
   Memcheck:Cond
   fun:cli_chm_open
   fun:cli_scanmschm
}
{
   glibc-etch
   Memcheck:Leak
   fun:*
   fun:_dl_allocate_tls
}
# glibc uses IO_lock_lock, which uses lll_lock,
# and valgrind doesn't know about it, so it thinks it is unlocked
{
   glibc-IOlock-fp
   Helgrind:Race
   fun:*
   fun:*
   fun:fputs
}
{
   glibc-IOlock-fp
   Helgrind:Race
   fun:fputs
}
#{
#	helgrind-glibc27-dbg18
#	Helgrind:Race
#	fun:__reclaim_stacks
#	fun:fork
#}