--- /dev/null
+# some valgrind suppressions
+# to load these automagically,
+# cat > ~/.valgrindrc
+# --suppressions=valgrind.supp
+# <control-d>
+
+
+# this one makes valgrind shut up about what appears to be a bug in libc's writev.
+{
+ writev uninit bytes thing -sage
+ Memcheck:Param
+ writev(vector[...])
+ fun:writev
+ fun:_ZN11BlockDevice6_writeEijjRN6buffer4listE
+ fun:_ZN11BlockDevice5do_ioEiRSt4listIPNS_6biovecESaIS2_EE
+ fun:_ZN11BlockDevice15io_thread_entryEv
+ fun:_ZN11BlockDevice8IOThread5entryEv
+ fun:_ZN6Thread11_entry_funcEPv
+ fun:start_thread
+ fun:clone
+ obj:*
+ obj:*
+ obj:*
+ obj:*
+}
+
+# gethostbyname
+{
+ gethostbyname on issdm
+ Memcheck:Param
+ socketcall.sendto(msg)
+ fun:send
+ fun:get_mapping
+ fun:__nscd_get_map_ref
+ fun:nscd_gethst_r
+ fun:__nscd_gethostbyname_r
+ fun:gethostbyname_r@@GLIBC_2.2.5
+ fun:gethostbyname
+ fun:_ZN4Rank8Accepter5startEv
+ fun:_ZN4Rank10start_rankEv
+ fun:main
+}
+{
+ <insert a suppression name here>
+ Memcheck:Param
+ socketcall.sendto(msg)
+ fun:send
+ fun:get_mapping
+ fun:__nscd_get_map_ref
+ fun:nscd_gethst_r
+ fun:__nscd_gethostbyname_r
+ fun:gethostbyname_r@@GLIBC_2.2.5
+ fun:gethostbyname
+ fun:_ZN4Rank8Accepter5startEv
+ fun:_ZN4Rank10start_rankEv
+ fun:_Z17mpi_bootstrap_newRiRPPcP6MonMap
+ fun:main
+}
+
+# gethostbyname
+
+{
+ gethostbyname on foil
+ Memcheck:Addr8
+ obj:/lib/ld-2.6.1.so
+ obj:/lib/ld-2.6.1.so
+ obj:/lib/ld-2.6.1.so
+ obj:/lib/ld-2.6.1.so
+ obj:/lib/ld-2.6.1.so
+ obj:/lib/ld-2.6.1.so
+ obj:/lib/ld-2.6.1.so
+ obj:/lib/libc-2.6.1.so
+ obj:/lib/ld-2.6.1.so
+ fun:__libc_dlopen_mode
+ fun:__nss_lookup_function
+ obj:/lib/libc-2.6.1.so
+}
+
+# mpi on issdm
+{
+ <insert a suppression name here>
+ Memcheck:Overlap
+ fun:memcpy
+ fun:MPIR_Localcopy
+ fun:MPIR_Gather
+ fun:MPI_Gather
+ fun:_Z17mpi_bootstrap_newRiRPPcP6MonMap
+ fun:main
+}
+{
+ <insert a suppression name here>
+ Memcheck:Param
+ writev(vector[...])
+ fun:writev
+ fun:MPIDU_Sock_writev
+ fun:MPIDI_CH3_iStartMsgv
+ fun:MPIDI_CH3_EagerContigSend
+ fun:MPID_Send
+ fun:MPIC_Send
+ fun:MPIR_Bcast
+ fun:MPI_Bcast
+ fun:_Z17mpi_bootstrap_newRiRPPcP6MonMap
+ fun:main
+}
+{
+ <insert a suppression name here>
+ Memcheck:Param
+ write(buf)
+ obj:/lib64/tls/libpthread-2.3.4.so
+ fun:MPIDU_Sock_write
+ fun:MPIDI_CH3_iSend
+ fun:MPID_Isend
+ fun:MPIC_Sendrecv
+ fun:MPIR_Barrier
+ fun:MPI_Barrier
+ fun:_Z17mpi_bootstrap_newRiRPPcP6MonMap
+ fun:main
+}
+{
+ <insert a suppression name here>
+ Memcheck:Param
+ write(buf)
+ obj:/lib64/tls/libpthread-2.3.4.so
+ fun:MPIDU_Sock_write
+ fun:MPIDI_CH3_iStartMsg
+ fun:MPIDI_CH3U_VC_SendClose
+ fun:MPIDI_PG_Close_VCs
+ fun:MPID_Finalize
+ fun:MPI5: <insert a suppression name here>
+ fun:main
+}
+{
+ <insert a suppression name 5: obj:/lib64/tls/libpthread-2.3.4.so
+ Memcheck:Param
+ write(buf)
+ obj:/lib64/tls/libpthread-2.3.4.so
+ fun:MPIDU_Sock_write
+ fun:MPIDI_CH3_iStartMsg
+ fun:MPIDI_CH3_PktHandler_Close
+ fun:MPIDI_CH3I_Progress_handle_sock_event
+ fun:MPIDI_CH3_Progress_wait
+ fun:MPIDI_CH3U_VC_WaitForClose
+ fun:MPID_Finalize
+ fun:MPI_Finalize
+ fun:main
+}
+{
+ <insert a suppression name here>
+ Memcheck:Param
+ write(buf)
+ obj:/lib64/tls/libpthread-2.3.4.so
+ fun:MPIDU_Sock_write
+ fun:MPIDI_CH3_iSend
+ fun:MPID_Isend
+ fun:MPIC_Sendrecv
+ fun:MPIR_Barrier
+ fun:MPI_Barrier
+ fun:main
+}
+{
+ <insert a suppression name here>
+ Memcheck:Param
+ write(buf)
+ obj:/lib64/tls/libpthread-2.3.4.so
+ fun:MPIDU_Sock_write
+ fun:MPIDI_CH3_iStartMsg
+ fun:MPIDI_CH3U_VC_SendClose
+ fun:MPIDI_PG_Close_VCs
+ fun:MPID_Finalize
+ fun:MPI_Finalize
+ fun:main
+}
+ {
+ <insert a suppression name here>
+ Memcheck:Param
+ writev(vector[...])
+ fun:writev
+ fun:MPIDU_Socki_handle_write
+ fun:MPIDU_Sock_wait
+ fun:MPIDI_CH3_Progress_wait
+ fun:MPIC_Wait
+ fun:MPIC_Send
+ fun:MPIR_Gather
+ fun:MPI_Gather
+ fun:_Z17mpi_bootstrap_newRiRPPcP6MonMap
+ fun:main
+}
+
+# lttng-ust
+{
+ <insert_a_suppression_name_here>
+ Memcheck:Leak
+ fun:calloc
+ fun:_dl_allocate_tls
+ fun:pthread_create@@GLIBC_2.2.5
+ obj:/usr/*lib*/liblttng-ust.*
+ fun:call_init.part.0
+ fun:_dl_init
+ obj:*
+}
+
+# PK11_CreateContextBySymKey
+{
+ <insert_a_suppression_name_here>
+ Helgrind:Race
+ obj:/usr/*lib*/libfreebl*3.so
+ ...
+ obj:/usr/*lib*/libsoftokn3.so
+ ...
+ obj:/usr/*lib*/libnss3.so
+ ...
+ fun:PK11_CreateContextBySymKey
+ ...
+}
+
+# _dl_allocate_tls_init
+{
+ <insert_a_suppression_name_here>
+ Helgrind:Race
+ fun:mempcpy
+ fun:_dl_allocate_tls_init
+ ...
+ fun:pthread_create@*
+ ...
+}
+
+# rados cython constants
+{
+ <insert_a_suppression_name_here>
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ fun:PyObject_Malloc
+ fun:PyCode_New
+ fun:__Pyx_InitCachedConstants
+ fun:initrados
+ fun:_PyImport_LoadDynamicModule
+ ...
+ fun:PyImport_ImportModuleLevel
+ ...
+ fun:PyObject_Call
+ fun:PyEval_CallObjectWithKeywords
+ fun:PyEval_EvalFrameEx
+}
+
+# rbd cython constants
+{
+ <insert_a_suppression_name_here>
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ fun:PyObject_Malloc
+ fun:PyCode_New
+ fun:__Pyx_InitCachedConstants
+ fun:initrbd
+ fun:_PyImport_LoadDynamicModule
+ ...
+ fun:PyImport_ImportModuleLevel
+ ...
+ fun:PyObject_Call
+ fun:PyEval_CallObjectWithKeywords
+ fun:PyEval_EvalFrameEx
+}