Package: libgmsh4 Version: 4.7.1+ds1-2 Severity: normal Control: affects -1 dolfinx-doc
dolfinx-doc provides some python demos for dolfinx which are tested by debci. One of the demos tests gmsh. You can see it (demo_gmsh.py) has been failing in debci, e.g. https://ci.debian.net/data/autopkgtest/testing/amd64/d/dolfinx/9989408/log.gz with the error message: double free or corruption (out) Loguru caught a signal: SIGABRT The SIGABRT is reproducible manually # apt-get install python3-dolfinx dolfinx-doc $ python3 /usr/share/dolfinx/demo-python/gmsh/demo_gmsh.py gdb gives a detailed backtrace which suggests the problem might come not from dolfinx but from libgmsh.so.4 in polynomialBasis, or possibly from eigen in Eigen::internal::compute_inverse $ gdb python3 (gdb) run /usr/share/dolfinx/demo-python/gmsh/demo_gmsh.py ... double free or corruption (out) Thread 1 "python3" received signal SIGABRT, Aborted. __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 50 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. (gdb) bt #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 #1 0x00007ffff7c2a537 in __GI_abort () at abort.c:79 #2 0x00007ffff7c83768 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7ffff7d91e31 "%s\n") at ../sysdeps/posix/libc_fatal.c:155 #3 0x00007ffff7c8aa5a in malloc_printerr (str=str@entry=0x7ffff7d94210 "double free or corruption (out)") at malloc.c:5347 #4 0x00007ffff7c8c088 in _int_free (av=0x7ffff7dc3b80 <main_arena>, p=0x3df9b90, have_lock=<optimized out>) at malloc.c:4314 #5 0x00007fff982dfad8 in Eigen::internal::compute_inverse<Eigen::Map<Eigen::Matrix<double, -1, -1, 0, -1, -1>, 0, Eigen::Stride<0, 0> >, Eigen::Map<Eigen::Matrix<double, -1, -1, 0, -1, -1>, 0, Eigen::Stride<0, 0> >, -1>::run(Eigen::Map<Eigen::Matrix<double, -1, -1, 0, -1, -1>, 0, Eigen::Stride<0, 0> > const&, Eigen::Map<Eigen::Matrix<double, -1, -1, 0, -1, -1>, 0, Eigen::Stride<0, 0> >&) () from /lib/x86_64-linux-gnu/libgmsh.so.4.7 #6 0x00007fff982e574f in polynomialBasis::polynomialBasis(int) () from /lib/x86_64-linux-gnu/libgmsh.so.4.7 #7 0x00007fff9824dbca in gmsh::model::mesh::getElementProperties(int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, int&, int&, int&, std::vector<double, std::allocator<double> >&, int&) () from /lib/x86_64-linux-gnu/libgmsh.so.4.7 #8 0x00007fff98e07640 in gmshModelMeshGetElementProperties () from /lib/x86_64-linux-gnu/libgmsh.so.4.7 #9 0x00007ffff7fa1d1d in ?? () from /lib/x86_64-linux-gnu/libffi.so.7 #10 0x00007ffff7fa1289 in ?? () from /lib/x86_64-linux-gnu/libffi.so.7 #11 0x00007fffb91ce360 in _call_function_pointer (argtypecount=<optimized out>, argcount=9, resmem=0x7fffffffd7a0, restype=<optimized out>, atypes=<optimized out>, avalues=<optimized out>, pProc=0x7fff98e075c0 <gmshModelMeshGetElementProperties>, flags=4353) at ./Modules/_ctypes/callproc.c:920 #12 _ctypes_callproc (pProc=0x7fff98e075c0 <gmshModelMeshGetElementProperties>, argtuple=<optimized out>, flags=4353, argtypes=<optimized out>, restype=<_ctypes.PyCSimpleType at remote 0xbfdaa0>, checker=0x0) at ./Modules/_ctypes/callproc.c:1263 #13 0x00007fffb91c48d8 in PyCFuncPtr_call (self=<optimized out>, inargs=<optimized out>, kwds=<optimized out>) at ./Modules/_ctypes/_ctypes.c:4201 #14 0x000000000051db9b in _PyObject_MakeTpCall (tstate=0x9632b0, callable=<_FuncPtr(__name__='gmshModelMeshGetElementProperties') at remote 0x7fffb83f41c0>, args=<optimized out>, nargs=<optimized out>, keywords=<optimized out>) at ../Objects/call.c:191 #15 0x00000000005178a1 in _PyObject_VectorcallTstate (kwnames=0x0, nargsf=<optimized out>, args=0x4562720, callable=<_FuncPtr(__name__='gmshModelMeshGetElementProperties') at remote 0x7fffb83f41c0>, tstate=0x9632b0) at ../Include/cpython/abstract.h:116 #16 _PyObject_VectorcallTstate (kwnames=0x0, nargsf=<optimized out>, args=0x4562720, callable=<_FuncPtr(__name__='gmshModelMeshGetElementProperties') at remote 0x7fffb83f41c0>, tstate=0x9632b0) at ../Include/cpython/abstract.h:103 #17 PyObject_Vectorcall (kwnames=0x0, nargsf=<optimized out>, args=0x4562720, callable=<_FuncPtr(__name__='gmshModelMeshGetElementProperties') at remote 0x7fffb83f41c0>) at ../Include/cpython/abstract.h:127 #18 call_function (kwnames=0x0, oparg=<optimized out>, pp_stack=<synthetic pointer>, tstate=0x9632b0) at ../Python/ceval.c:5072 #19 _PyEval_EvalFrameDefault (tstate=<optimized out>, f=<optimized out>, throwflag=<optimized out>) at ../Python/ceval.c:3487 #20 0x0000000000528ee3 in _PyEval_EvalFrame (throwflag=0, f=Frame 0x4562560, for file /usr/lib/python3/dist-packages/gmsh.py, line 2256, in getElementProperties (elementType=<numpy.int32 at remote 0x7fffac55bbb0>, api_elementName_=<c_char_p at remote 0x7fffb83fd640>, api_dim_=<c_int at remote 0x7fffb83fd5c0>, api_order_=<c_int at remote 0x7fffb83fd540>, api_numNodes_=<c_int at remote 0x7fffb83fd440>, api_localNodeCoord_=<LP_c_double at remote 0x7fffb83fd3c0>, api_localNodeCoord_n_=<c_ulong at remote 0x7fffeb472e40>, api_numPrimaryNodes_=<c_int at remote 0x7fffb40744c0>, ierr=<c_int at remote 0x7fffb4074540>), tstate=0x9632b0) at ../Include/internal/pycore_ceval.h:40 #21 function_code_fastcall (globals=<optimized out>, nargs=1, args=<optimized out>, co=<optimized out>, tstate=0x9632b0) at ../Objects/call.c:330 #22 _PyFunction_Vectorcall (func=<optimized out>, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at ../Objects/call.c:367 #23 0x000000000051721b in _PyObject_VectorcallTstate (kwnames=0x0, nargsf=<optimized out>, args=0x9be108, callable=<function at remote 0x7fffb4087ca0>, tstate=0x9632b0) at ../Include/cpython/abstract.h:118 #24 PyObject_Vectorcall (kwnames=0x0, nargsf=<optimized out>, args=0x9be108, callable=<function at remote 0x7fffb4087ca0>) at ../Include/cpython/abstract.h:127 #25 call_function (kwnames=0x0, oparg=<optimized out>, pp_stack=<synthetic pointer>, tstate=0x9632b0) at ../Python/ceval.c:5072 #26 _PyEval_EvalFrameDefault (tstate=<optimized out>, f=<optimized out>, throwflag=<optimized out>) at ../Python/ceval.c:3487 #27 0x0000000000510a2d in _PyEval_EvalFrame (throwflag=0, f=Frame 0x9bdf90, for file /usr/share/dolfinx/demo-python/gmsh/demo_gmsh.py, line 40, in <module> (), tstate=0x9632b0) at ../Include/internal/pycore_ceval.h:40 -- System Information: Debian Release: bullseye/sid APT prefers unstable APT policy: (500, 'unstable'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 5.10.0-2-amd64 (SMP w/8 CPU threads) Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8), LANGUAGE=en_AU:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages libgmsh4 depends on: ii libc6 2.31-9 ii libfltk-gl1.3 1.3.5-2 ii libfltk-images1.3 1.3.5-2 ii libfltk1.3 1.3.5-2 ii libgcc-s1 10.2.1-6 ii libgl1 1.3.2-1 ii libgl2ps1.4 1.4.2+dfsg1-1 ii libglu1-mesa [libglu1] 9.0.1-1 ii libgmp10 2:6.2.1+dfsg-1 ii libgomp1 10.2.1-6 ii libjpeg62-turbo 1:2.0.5-2 ii libmetis5 5.1.0.dfsg-7 ii libocct-data-exchange-7.5 7.5.0+dfsg1-4 ii libocct-foundation-7.5 7.5.0+dfsg1-4 ii libocct-modeling-algorithms-7.5 7.5.0+dfsg1-4 ii libocct-modeling-data-7.5 7.5.0+dfsg1-4 ii libocct-ocaf-7.5 7.5.0+dfsg1-4 ii libpng16-16 1.6.37-3 ii libstdc++6 10.2.1-6 ii libvoro++1 0.4.6+dfsg1-3 ii libx11-6 2:1.7.0-2 Versions of packages libgmsh4 recommends: ii gmsh 4.7.1+ds1-2 libgmsh4 suggests no packages. -- no debconf information