+ obj:/usr/lib/*/libstdc++.so.*
+ fun:call_init.part.0
+ ...
+ fun:_dl_init
+}
+
+{
+ Leaks in test-help-version and test-help-logs (early call to exit())
+ Memcheck:Leak
+ match-leak-kinds: reachable
+ fun:_Znwm
+ fun:_ZN7simgrid3s4u6EngineC1EPiPPc
+ fun:main
+ ...
+ obj:*/basic-parsing-test
+}
+
+#Ignore leaks in SMPI sample codes
+{
+ Leaks in SMPI sample codes
+ Memcheck:Leak
+ match-leak-kinds: all
+ fun:malloc
+ fun:smpi_simulated_main_
+}
+
+#This test has an intentional leak
+{
+ Intentional leak in SMPI sample codes
+ Memcheck:Leak
+ match-leak-kinds: all
+ fun:MPI_Comm_dup
+ obj:coll-allreduce-with-leaks*
+}
+
+#Memory leaks appearing to be in libcgraph. They can be seen with the
+# following simple program:
+# ,----
+# | #include <stdio.h>
+# | #include <graphviz/cgraph.h>
+# | int main(int argc, char *argv[])
+# | {
+# | if (argc == 1) {
+# | printf("Usage: %s <dotfile>\n", argv[0]);
+# | return 1;
+# | }
+# | Agraph_t *g;
+# | FILE *inf = fopen(argv[1], "r");
+# | g = agread(inf, 0);
+# | fclose(inf);
+# | agclose(g);
+# | return 0;
+# | }
+# `----
+{
+ Memory leak in libcgraph (1/3)
+ Memcheck:Leak
+ fun:malloc
+ ...
+ fun:aaglex
+ fun:aagparse
+ fun:agconcat
+}
+{
+ Memory leak in libcgraph (2/3)
+ Memcheck:Leak
+ fun:calloc
+ ...
+ obj:*/libcgraph.so*
+ fun:aagparse
+ fun:agconcat
+}
+{
+ Memory leak in libcgraph (3/3)
+ Memcheck:Leak
+ fun:malloc
+ ...
+ fun:agnode
+ obj:*/libcgraph.so*
+ fun:aagparse
+ fun:agconcat
+}
+
+# libunwind seems to be using msync poorly, thus triggering these
+# https://github.com/JuliaLang/julia/issues/4533
+{
+ msync unwind
+ Memcheck:Param
+ msync(start)
+ ...
+ obj:*/libpthread*.so
+ ...
+}
+
+{
+ ignore unwind cruft
+ Memcheck:Param
+ rt_sigprocmask(set)
+ ...
+ obj:/usr/lib/x86_64-linux-gnu/libunwind.so.*
+ ...
+}
+{
+ ignore unwind cruft
+ Memcheck:Param
+ msync(start)
+ ...
+ obj:/usr/lib/x86_64-linux-gnu/libunwind.so.*
+ ...
+}
+{
+ ignore unwind cruft
+ Memcheck:Param
+ write(buf)
+ ...
+ fun:_ULx86_64_step
+ obj:/usr/lib/x86_64-linux-gnu/libunwind.so.*
+}
+
+{
+ ignore unwind invalid reads
+ Memcheck:Addr8
+ fun:_Ux86_64_setcontext
+}
+
+# Java cruft
+{
+ JavaCruft 1
+ Memcheck:Addr4
+ ...
+ fun:_ZN9JavaCalls11call_helperEP9JavaValueP12methodHandleP17JavaCallArgumentsP6Thread
+ fun:JVM_DoPrivileged
+ ...
+}
+{
+ JavaCruft 2
+ Memcheck:Cond
+ ...
+ fun:_ZN13CompileBroker25invoke_compiler_on_methodEP11CompileTask
+ ...
+}
+
+{
+ Somewhere within the Java conditions and monitors
+ Memcheck:Cond
+ fun:MarsagliaXORV
+ ...
+}
+
+#ignore python cruft
+{
+ ignore python cruft 1
+ Memcheck:Cond
+ ...
+ obj:/usr/bin/python*
+}
+
+{
+ ignore python cruft 2
+ Memcheck:Addr4
+ ...
+ obj:/usr/bin/python*
+}
+
+{
+ ignore python cruft 3
+ Memcheck:Value8
+ ...
+ obj:/usr/bin/python*