← Back to team overview

dolfin team mailing list archive

valgrind + dolfin: BaryCenterQuadrature / CGAL error

 

hello,

do you use valgrind on dolfin examples?

im on revision 4861 (dolfin0.8.8) and if i run valgrind on an example i get

priesen@vierzack01:/<8>cpp>valgrind ./demo
==8028== Memcheck, a memory error detector.
==8028== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
==8028== Using LibVEX rev 1854, a library for dynamic binary translation.
==8028== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==8028== Using valgrind-3.3.1-Debian, a dynamic binary instrumentation framework.
==8028== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
==8028== For more details, rerun with: -v
==8028==
terminate called after throwing an instance of 'CGAL::Assertion_exception'
  what():  CGAL ERROR: assertion violation!
Expr: -CGAL_IA_MUL(-1.1, 10.1) != CGAL_IA_MUL(1.1, 10.1)
File: /scratch/priesen-second/FEniCS/build/include/CGAL/Interval_nt.h
Line: 158
Explanation: Wrong rounding: did you forget the -frounding-math option if you use GCC?
==8028== Invalid free() / delete / delete[]
==8028==    at 0x4C2130F: free (vg_replace_malloc.c:323)
==8028==    by 0xB31C7AA: (within /lib/libc-2.7.so)
==8028==    by 0xB31C361: __libc_freeres (in /lib/libc-2.7.so)
==8028==    by 0x4A1D31C: _vgnU_freeres (vg_preloaded.c:60)
==8028==    by 0xB24A3F2: abort (in /lib/libc-2.7.so)
==8028== by 0xAB0B7EA: __gnu_cxx::__verbose_terminate_handler() (in /usr/pack/gcc-4.4.1-sd/amd64-debian-linux4.0/lib/libstdc++.so.6.0.12) ==8028== by 0xAB08A27: __cxxabiv1::__terminate(void (*)()) (in /usr/pack/gcc-4.4.1-sd/amd64-debian-linux4.0/lib/libstdc++.so.6.0.12) ==8028== by 0xAB08A4F: std::terminate() (in /usr/pack/gcc-4.4.1-sd/amd64-debian-linux4.0/lib/libstdc++.so.6.0.12) ==8028== by 0xAB08C67: __cxa_throw (in /usr/pack/gcc-4.4.1-sd/amd64-debian-linux4.0/lib/libstdc++.so.6.0.12) ==8028== by 0x7F4EB49: CGAL::assertion_fail(char const*, char const*, int, char const*) (in /scratch/priesen-second/FEniCS/build/lib/libCGAL.so.5.0.0) ==8028== by 0x511EA6C: _GLOBAL__I_BarycenterQuadrature.cpp (Interval_nt.h:157) ==8028== by 0x5146225: (within /scratch/priesen-second/FEniCS/build/lib/libdolfin.so.0.9.8)
==8028==  Address 0x41c84a8 is not stack'd, malloc'd or (recently) free'd
==8028==
==8028== ERROR SUMMARY: 4 errors from 1 contexts (suppressed: 8 from 1)
==8028== malloc/free: in use at exit: 6,914 bytes in 36 blocks.
==8028== malloc/free: 58 allocs, 26 frees, 9,182 bytes allocated.
==8028== For counts of detected errors, rerun with: -v
==8028== searching for pointers to 36 not-freed blocks.
==8028== checked 3,359,888 bytes.
==8028==
==8028== LEAK SUMMARY:
==8028==    definitely lost: 0 bytes in 0 blocks.
==8028==      possibly lost: 753 bytes in 8 blocks.
==8028==    still reachable: 6,161 bytes in 28 blocks.
==8028==         suppressed: 0 bytes in 0 blocks.
==8028== Rerun with --leak-check=full to see details of leaked memory.
Abort

i can get past this even if i try to generate a suppression file from valgrind using -gen-suppressions / -suppressions=file.

do you get this as well?

greetings,
patrick



Follow ups