[Dune-devel] [ALUGrid] Segfault in ALUGrid 3,3

Christoph GrĂ¼ninger christoph.grueninger at iws.uni-stuttgart.de
Mon Sep 22 07:36:47 CEST 2014


Hi Robert, Martin et al.,
while including dune-alugrid support to dune-grid-howto, I 
stumbled over a segfault in othergrids when
creating ALUGrid<3,3,Dune::cube,Dune::nonconforming>,1>. Find 
below the output of AddressSanitizer.

Bye
Christoph


> ./othergrids 

Created serial ALUGrid<2,2,cube,nonconforming>.

ASAN:SIGSEGV
=================================================================
==15883==ERROR: AddressSanitizer: SEGV on unknown address 
0x000000000000 (pc 0x000000bc54b4 bp 0x7ffff9a426f0 sp 
0x7ffff9a426a0 T0)
     #0 0xbc54b3 in std::ostream& 
ALUGrid::Gitter::GhostChildrenInfo::write<std::ostream>(std::ostream&) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/lib/../dune/alugrid/impl/serial/gitter_sti.h:1197:143
     #1 0xba4af0 in 
ALUGrid::operator<<(ALUGrid::Gitter::GhostChildrenInfo&, char 
const*) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/lib/../dune/alugrid/impl/serial/gitter_impl.h:400:5
     #2 0xba0e83 in ALUGrid::initialize() 
/home/kiko/Dokumente/dune/complete/dune-alugrid/lib/../dune/alugrid/impl/serial/gitter_mgb.cc:813:5
     #3 0xbc9a0c in 
ALUGrid::Gitter::Makrogitter::Makrogitter() 
/home/kiko/Dokumente/dune/complete/dune-alugrid/lib/../dune/alugrid/impl/serial/gitter_sti.cc:882:5
     #4 0xb9463e in 
ALUGrid::Gitter::Geometric::BuilderIF::BuilderIF() 
/home/kiko/Dokumente/dune/complete/dune-alugrid/lib/../dune/alugrid/impl/serial/gitter_sti.h:2315:9
     #5 0xb91243 in 
ALUGrid::GitterBasis::MacroGitterBasis::MacroGitterBasis(ALUGrid::Gitter*) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/lib/../dune/alugrid/impl/serial/gitter_impl.cc:452:3
     #6 0xb91199 in 
ALUGrid::GitterBasisImpl::GitterBasisImpl() 
/home/kiko/Dokumente/dune/complete/dune-alugrid/lib/../dune/alugrid/impl/serial/gitter_impl.cc:411:5
     #7 0x8028f9 in ALUGrid::GitterDuneImpl::GitterDuneImpl() 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/impl/duneinterface/gitter_dune_impl.h:114:5
     #8 0x80213e in 
Dune::ALU3dGridCommunications<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm>::createALUGrid(std::string const&, 
ALUGrid::VertexProjection<3, double>*, bool) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/3d/grid.hh:153:32
     #9 0x7fea59 in 
Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm>::createALUGrid(std::string const&) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/3d/grid.hh:1034:14
     #10 0x7fc88b in 
Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm>::ALU3dGrid(std::string const&, 
Dune::ALUGridNoComm, Dune::DuneBoundaryProjection<3> const*, 
std::vector<Dune::DuneBoundaryProjection<3> const*, 
std::allocator<Dune::DuneBoundaryProjection<3> const*> > 
const*, Dune::ALUGridRefinementType) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/3d/grid_inline.hh:49:15
     #11 0x7fadd1 in Dune::ALUGrid<3, 3, 
(Dune::ALUGridElementType)1, (Dune::ALUGridRefinementType)1, 
Dune::ALUGridNoComm>::ALUGrid(Dune::ALUGridNoComm, 
Dune::DuneBoundaryProjection<3> const*, 
std::vector<Dune::DuneBoundaryProjection<3> const*, 
std::allocator<Dune::DuneBoundaryProjection<3> const*> > 
const*, std::string, bool) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/3d/alugrid.hh:116:5
     #12 0x7d1795 in Dune::ALU3dGridFactory<Dune::ALUGrid<3, 
3, (Dune::ALUGridElementType)1, 
(Dune::ALUGridRefinementType)1, Dune::ALUGridNoComm> 
>::createGridObj(std::vector<Dune::DuneBoundaryProjection<3> 
const*, std::allocator<Dune::DuneBoundaryProjection<3> const*> 
>*, std::string const&) const 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/3d/gridfactory.hh:107:7
     #13 0x98b4e1 in Dune::ALU3dGridFactory<Dune::ALUGrid<3, 
3, (Dune::ALUGridElementType)1, 
(Dune::ALUGridRefinementType)1, Dune::ALUGridNoComm> 
>::createGrid(bool, bool, std::string) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/3d/gridfactory.cc:391:18
     #14 0x7cf701 in Dune::ALU3dGridFactory<Dune::ALUGrid<3, 
3, (Dune::ALUGridElementType)1, 
(Dune::ALUGridRefinementType)1, Dune::ALUGridNoComm> 
>::createGrid() 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/3d/gridfactory.cc:242:12
     #15 0x8918f7 in void 
Dune::ALULocalGeometryStorage<Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm> const, Dune::ALU3dGridGeometry<3, 3, 
Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm> const>, 
8>::createGeometries<Dune::ALUGrid<3, 3, 
(Dune::ALUGridElementType)1, (Dune::ALUGridRefinementType)1, 
Dune::ALUGridNoComm> >(Dune::GeometryType const&) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/common/geostorage.hh:197:25
     #16 0x8903e0 in void 
Dune::ALULocalGeometryStorage<Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm> const, Dune::ALU3dGridGeometry<3, 3, 
Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm> const>, 8>::CreateGeometries<0, 3, 3, 
7>::createGeometries<Dune::ALULocalGeometryStorage<Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm> const, Dune::ALU3dGridGeometry<3, 3, 
Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm> const>, 8> 
>(Dune::ALULocalGeometryStorage<Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm> const, Dune::ALU3dGridGeometry<3, 3, 
Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm> const>, 8>&, Dune::GeometryType const&, 
bool) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/common/geostorage.hh:107:11
     #17 0x890180 in 
Dune::ALULocalGeometryStorage<Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm> const, Dune::ALU3dGridGeometry<3, 3, 
Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm> const>, 
8>::initialize(Dune::GeometryType, bool) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/common/geostorage.hh:143:9
     #18 0x88f3cb in 
Dune::ALULocalGeometryStorage<Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm> const, Dune::ALU3dGridGeometry<3, 3, 
Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm> const>, 8>::storage(Dune::GeometryType, 
bool) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/common/geostorage.hh:283:9
     #19 0x845457 in 
Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm>::makeGeometries() 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/3d/grid_inline.hh:89:12
     #20 0x7fc719 in 
Dune::ALU3dGrid<(Dune::ALU3dGridElementType)7, 
Dune::ALUGridNoComm>::ALU3dGrid(std::string const&, 
Dune::ALUGridNoComm, Dune::DuneBoundaryProjection<3> const*, 
std::vector<Dune::DuneBoundaryProjection<3> const*, 
std::allocator<Dune::DuneBoundaryProjection<3> const*> > 
const*, Dune::ALUGridRefinementType) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/3d/grid_inline.hh:44:41
     #21 0x7fadd1 in Dune::ALUGrid<3, 3, 
(Dune::ALUGridElementType)1, (Dune::ALUGridRefinementType)1, 
Dune::ALUGridNoComm>::ALUGrid(Dune::ALUGridNoComm, 
Dune::DuneBoundaryProjection<3> const*, 
std::vector<Dune::DuneBoundaryProjection<3> const*, 
std::allocator<Dune::DuneBoundaryProjection<3> const*> > 
const*, std::string, bool) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/3d/alugrid.hh:116:5
     #22 0x7d1795 in Dune::ALU3dGridFactory<Dune::ALUGrid<3, 
3, (Dune::ALUGridElementType)1, 
(Dune::ALUGridRefinementType)1, Dune::ALUGridNoComm> 
>::createGridObj(std::vector<Dune::DuneBoundaryProjection<3> 
const*, std::allocator<Dune::DuneBoundaryProjection<3> const*> 
>*, std::string const&) const 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/3d/gridfactory.hh:107:7
     #23 0x98b4e1 in Dune::ALU3dGridFactory<Dune::ALUGrid<3, 
3, (Dune::ALUGridElementType)1, 
(Dune::ALUGridRefinementType)1, Dune::ALUGridNoComm> 
>::createGrid(bool, bool, std::string) 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/3d/gridfactory.cc:391:18
     #24 0x7cf701 in Dune::ALU3dGridFactory<Dune::ALUGrid<3, 
3, (Dune::ALUGridElementType)1, 
(Dune::ALUGridRefinementType)1, Dune::ALUGridNoComm> 
>::createGrid() 
/home/kiko/Dokumente/dune/complete/dune-alugrid/dune/alugrid/3d/gridfactory.cc:242:12
     #25 0x7c5f75 in 
Dune::StructuredGridFactory<Dune::ALUGrid<3, 3, 
(Dune::ALUGridElementType)1, (Dune::ALUGridRefinementType)1, 
Dune::ALUGridNoComm> 
>::createCubeGrid(Dune::FieldVector<double, 3> const&, 
Dune::FieldVector<double, 3> const&, std::array<unsigned int, 
3ul> const&) 
/home/kiko/Dokumente/dune/complete/dune-grid/dune/grid/utility/structuredgridfactory.hh:195:35
     #26 0x4b07e8 in UnitCube<Dune::ALUGrid<3, 3, 
(Dune::ALUGridElementType)1, (Dune::ALUGridRefinementType)1, 
Dune::ALUGridNoComm>, 1>::UnitCube() 
/home/kiko/Dokumente/dune/complete/dune-grid-howto/./unitcube_alugrid.hh:62:13
     #27 0x4a3247 in main 
/home/kiko/Dokumente/dune/complete/dune-grid-howto/othergrids.cc:41:67
     #28 0x7f3000bdeb04 in __libc_start_main 
(/lib64/libc.so.6+0x21b04)
     #29 0x4a2b29 in _start 
/home/abuild/rpmbuild/BUILD/glibc-2.19/csu/../sysdeps/x86_64/start.S:122

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV 
/home/kiko/Dokumente/dune/complete/dune-alugrid/lib/../dune/alugrid/impl/serial/gitter_sti.h:1197 
std::ostream& 
ALUGrid::Gitter::GhostChildrenInfo::write<std::ostream>(std::ostream&)
==15883==ABORTING




More information about the Dune-devel mailing list