[petsc-dev] Valgrind problems

Patrick Sanan patrick.sanan at gmail.com
Sat Dec 7 15:04:46 CST 2019


I was actually wondering about this, as in some cases valgrind errors appear and sometimes they don't, but I didn't dig into it too deeply.

Here's my workaround, FWIW, which shows some output for that test on master.

I don't see any output when I just run the tests like this:

    VALGRIND=1 make -f gmakefile.test test globsearch="dm_impls_plex_tests-ex1_fluent_2"

But I do see something if I do this to find any non-empty .err files:

    find $PETSC_ARCH/tests -name *.err ! -size 0

And then I see these valgrind warnings after copy-pasting the path:


$ cat arch-master-extra-opt/tests/dm/impls/plex/examples/tests/runex1_fluent_2/runex1_fluent_2.err
==4990== Conditional jump or move depends on uninitialised value(s)
==4990==    at 0x4C3705A: rawmemchr (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==4990==    by 0x7687351: _IO_str_init_static_internal (strops.c:41)
==4990==    by 0x767878C: vsscanf (iovsscanf.c:40)
==4990==    by 0x76721A3: sscanf (sscanf.c:32)
==4990==    by 0x588147D: DMPlexCreateFluent_ReadSection (plexfluent.c:105)
==4990==    by 0x5882E3A: DMPlexCreateFluent (plexfluent.c:246)
==4990==    by 0x588492F: DMPlexCreateFluentFromFile (plexfluent.c:30)
==4990==    by 0x577E2B7: DMPlexCreateFromFile (plexcreate.c:3254)
==4990==    by 0x10BEDF: CreateMesh (ex1.c:170)
==4990==    by 0x10A20B: main (ex1.c:430)
==4990==  Uninitialised value was created by a stack allocation
==4990==    at 0x5881313: DMPlexCreateFluent_ReadSection (plexfluent.c:96)
==4990==
==4990== Use of uninitialised value of size 8
==4990==    at 0x766276F: _IO_vfscanf (vfscanf.c:633)
==4990==    by 0x767879C: vsscanf (iovsscanf.c:41)
==4990==    by 0x76721A3: sscanf (sscanf.c:32)
==4990==    by 0x588147D: DMPlexCreateFluent_ReadSection (plexfluent.c:105)
==4990==    by 0x5882E3A: DMPlexCreateFluent (plexfluent.c:246)
==4990==    by 0x588492F: DMPlexCreateFluentFromFile (plexfluent.c:30)
==4990==    by 0x577E2B7: DMPlexCreateFromFile (plexcreate.c:3254)
==4990==    by 0x10BEDF: CreateMesh (ex1.c:170)
==4990==    by 0x10A20B: main (ex1.c:430)
==4990==  Uninitialised value was created by a stack allocation
==4990==    at 0x5881313: DMPlexCreateFluent_ReadSection (plexfluent.c:96)
==4990==
==4990== Conditional jump or move depends on uninitialised value(s)
==4990==    at 0x766277B: _IO_vfscanf (vfscanf.c:630)
==4990==    by 0x767879C: vsscanf (iovsscanf.c:41)
==4990==    by 0x76721A3: sscanf (sscanf.c:32)
==4990==    by 0x588147D: DMPlexCreateFluent_ReadSection (plexfluent.c:105)
==4990==    by 0x5882E3A: DMPlexCreateFluent (plexfluent.c:246)
==4990==    by 0x588492F: DMPlexCreateFluentFromFile (plexfluent.c:30)
==4990==    by 0x577E2B7: DMPlexCreateFromFile (plexcreate.c:3254)
==4990==    by 0x10BEDF: CreateMesh (ex1.c:170)
==4990==    by 0x10A20B: main (ex1.c:430)
==4990==  Uninitialised value was created by a stack allocation
==4990==    at 0x5881313: DMPlexCreateFluent_ReadSection (plexfluent.c:96)
==4990==
> Am 07.12.2019 um 21:45 schrieb Matthew Knepley <knepley at gmail.com>:
> 
> I am trying to clean up valgrind errors. However this one
> 
>   dm_impls_plex_tests-ex1_fluent_2
> 
> is valgrind clean on my machine. Does anyone get it to output something?
> 
>   Thanks,
> 
>      Matt
> 
> -- 
> What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.
> -- Norbert Wiener
> 
> https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20191207/cd67ecf9/attachment.html>


More information about the petsc-dev mailing list