# StarPU --- Runtime system for heterogeneous multicore architectures.
#
# Copyright (C) 2014-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
#
# StarPU is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or (at
# your option) any later version.
#
# StarPU is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
#
# See the GNU Lesser General Public License in COPYING.LGPL for more details.
#

{
   Ignore libc aio-internal races
   Helgrind:Race
   ...
   fun:aio_read
   ...
}

{
   Ignore libc aio-internal races
   Helgrind:Race
   ...
   fun:aio_write
   ...
}

{
   Ignore libc aio-internal races
   Helgrind:Race
   ...
   fun:__aio_notify
   ...
}

{
   Ignore libc aio-internal races
   Helgrind:Race
   ...
   fun:aio_suspend
   ...
}

{
   Ignore libc aio errors
   Memcheck:Leak
   match-leak-kinds: reachable
   ...
   fun:__aio_enqueue_request
   ...
}

{
   Ignore libc printf races
   Helgrind:Race
   ...
   fun:vfprintf
   ...
}

{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   ...
   fun:dlopen@@GLIBC_2.2.5
   ...
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: definite
   fun:malloc
   fun:lt__malloc
   fun:lt__zalloc
   obj:/usr/lib/x86_64-linux-gnu/libltdl.so.7.3.1
   ...
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: reachable
   fun:malloc
   obj:/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.22
   fun:call_init.part.0
   fun:_dl_init
   obj:/lib/x86_64-linux-gnu/ld-2.21.so
}

{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: reachable
   fun:calloc
   fun:_dl_new_object
   fun:_dl_map_object_from_fd
   fun:_dl_map_object
   fun:openaux
   fun:_dl_catch_error
   fun:_dl_map_object_deps
   fun:dl_open_worker
   fun:_dl_catch_error
   fun:_dl_open
   fun:dlopen_doit
   fun:_dl_catch_error
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: reachable
   fun:malloc
   fun:_dl_new_object
   fun:_dl_map_object_from_fd
   fun:_dl_map_object
   fun:openaux
   fun:_dl_catch_error
   fun:_dl_map_object_deps
   fun:dl_open_worker
   fun:_dl_catch_error
   fun:_dl_open
   fun:dlopen_doit
   fun:_dl_catch_error
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: reachable
   fun:malloc
   fun:strdup
   fun:_dl_load_cache_lookup
   fun:_dl_map_object
   fun:openaux
   fun:_dl_catch_error
   fun:_dl_map_object_deps
   fun:dl_open_worker
   fun:_dl_catch_error
   fun:_dl_open
   fun:dlopen_doit
   fun:_dl_catch_error
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: reachable
   fun:malloc
   obj:/usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0
   obj:/usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0
   obj:/usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0
   fun:call_init.part.0
   fun:call_init
   fun:_dl_init
   obj:/lib/x86_64-linux-gnu/ld-2.26.so
}
{
   <insert_a_suppression_name_here>
   Memcheck:Value8
   obj:/lib/x86_64-linux-gnu/libc-2.28.so
   ...
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   obj:/lib/x86_64-linux-gnu/libc-2.28.so
   ...
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   obj:/lib/x86_64-linux-gnu/libc-2.28.so
   ...
}
{
   <insert_a_suppression_name_here>
   Memcheck:Value8
   obj:/lib/x86_64-linux-gnu/ld-2.28.so
   obj:*
   obj:*
   obj:*
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   obj:/lib/x86_64-linux-gnu/ld-2.28.so
   obj:*
}
{
   <insert_a_suppression_name_here>
   Memcheck:Value8
   obj:/lib/x86_64-linux-gnu/ld-2.28.so
   obj:*
}
{
   <insert_a_suppression_name_here>
   Memcheck:Param
   openat(filename)
   obj:/lib/x86_64-linux-gnu/libc-2.28.so
   obj:*
}
{
   <insert_a_suppression_name_here>
   Memcheck:Value8
   obj:/lib/x86_64-linux-gnu/ld-2.28.so
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   obj:/lib/x86_64-linux-gnu/ld-2.28.so
}
{
   <insert_a_suppression_name_here>
   Memcheck:Param
   openat(filename)
   obj:/lib/x86_64-linux-gnu/ld-2.28.so
   ...
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   obj:/lib/x86_64-linux-gnu/libdl-2.28.so
}
{
   <insert_a_suppression_name_here>
   Memcheck:Param
   read(count)
   obj:/lib/x86_64-linux-gnu/libc-2.28.so
}
{
   <insert_a_suppression_name_here>
   Memcheck:Param
   read(buf)
   obj:/lib/x86_64-linux-gnu/libc-2.28.so
}
{
   <insert_a_suppression_name_here>
   Memcheck:Param
   lseek(offset)
   obj:/lib/x86_64-linux-gnu/libc-2.28.so
   obj:/lib/x86_64-linux-gnu/libc-2.28.so
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   obj:/usr/lib/x86_64-linux-gnu/libltdl.so.7.3.1
   obj:*
}
{
   <insert_a_suppression_name_here>
   Memcheck:Value8
   obj:/usr/lib/x86_64-linux-gnu/libltdl.so.7.3.1
   obj:*
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   obj:/usr/lib/x86_64-linux-gnu/libltdl.so.7.3.1
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   match-leak-kinds: reachable
   fun:malloc
   fun:_dl_close_worker
   fun:_dl_close_worker
   fun:_dl_close
   fun:_dl_catch_exception
   fun:_dl_catch_error
   fun:dlerror_run
   fun:free_mem
   fun:__libc_freeres
   fun:_vgnU_freeres
   fun:__run_exit_handlers
   fun:exit
   fun:(below main)
}
