[Dune] checkCommunication.cc : Segmentation Faults

Aleksejs Fomins aleksejs.fomins at lspr.ch
Thu Mar 19 09:53:44 CET 2015


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Dear Dune,

I have been attempting to debug this particular problem for over a week now, but to no avail. I have a suspicion that the bug is inside the checkCommunication.cc class.

I run the following test on a single (!) core

- -----------------------------------------------------------------------------------------------

static Dune::MPIHelper & mpihelper = Dune::MPIHelper::instance(argc, argv);
typedef Dune::CurvilinearGrid<3, 3, double, isGeometryCached> GridType;
GridType * grid = CurvFactory<double, 3, 1>::buildGrid(mpihelper);

std::cout << "-- Running Base GridCheck" << std::endl;
gridcheck(grid);

std::cout << "-- Checking LeafGridView" << std::endl;
checkIterators ( grid.leafGridView() );

std::cout << "-- Checking LevelGridView" << std::endl;
checkIterators ( grid.levelGridView(0) );

std::cout << "-- Checking Communication" << std::endl;
//checkCommunication(grid, -1, Dune::dvverb);
//for(int l=0; l<=grid.maxLevel(); ++l)  { checkCommunication(grid,l,Dune::dvverb); }

std::cout << "-- Checking Geometry Lifetime" << std::endl;
checkGeometryLifetime( grid.leafGridView() );

std::cout << "-- Checking Geometry in Father" << std::endl;
checkGeometryInFather(grid);

std::cout << "-- Checking Intersection Iterator" << std::endl;
checkIntersectionIterator(grid);

std::cout << "-- Checking Adaptive Refinement" << std::endl;
checkAdaptRefinement(grid);

std::cout << "-- Checking Partition Type of LeafGridView" << std::endl;
checkPartitionType( grid.leafGridView() );

- ------------------------------------------------------------------------------------------------

This test runs without crashes. Now, if I uncomment the checkCommunication and comment all other tests, I get a segmentation fault.

Please find the Valgrind output for the crash below. Any advice on this bug would be appreciated

Regards,
Aleksejs


- ------------------------------------------------------------------------------------------------


- -- Creating Curvilinear Grid

- -- Checking Communication
==99947== Conditional jump or move depends on uninitialised value(s)
==99947==    at 0x518041: CheckCommunication<Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> >, 3, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >::checkCommunication() (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x50F5A3: CheckCommunication<Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> >, 3, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >::CheckCommunication(Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> > const&, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal>&, int) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x50A512: void checkCommunication<Dune::CurvilinearGrid<3, 3, double, true>, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >(Dune::CurvilinearGrid<3, 3, double, true> const&, int, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal>&) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x509B2E: void check_grid<double, 3, true>(Dune::CurvilinearGrid<3, 3, double, true>&) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x5070A3: main (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==  Uninitialised value was created by a stack allocation
==99947==    at 0x507CCC: Dune::CollectiveCommunication<ompi_communicator_t*>::rank() const (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947== 
TEST Leaf communication for codim 3
==99947== Invalid write of size 8
==99947==    at 0x52594E: CheckCommunication<Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> >, 3, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >::project(int, std::vector<double, std::allocator<double> >&, std::vector<double, std::allocator<double> >&, int) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x518184: CheckCommunication<Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> >, 3, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >::checkCommunication() (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x50F5A3: CheckCommunication<Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> >, 3, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >::CheckCommunication(Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> > const&, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal>&, int) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x50A512: void checkCommunication<Dune::CurvilinearGrid<3, 3, double, true>, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >(Dune::CurvilinearGrid<3, 3, double, true> const&, int, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal>&) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x509B2E: void check_grid<double, 3, true>(Dune::CurvilinearGrid<3, 3, double, true>&) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x5070A3: main (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==  Address 0x103f0220 is not stack'd, malloc'd or (recently) free'd
==99947== 
==99947== Invalid write of size 8
==99947==    at 0x525976: CheckCommunication<Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> >, 3, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >::project(int, std::vector<double, std::allocator<double> >&, std::vector<double, std::allocator<double> >&, int) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x518184: CheckCommunication<Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> >, 3, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >::checkCommunication() (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x50F5A3: CheckCommunication<Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> >, 3, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >::CheckCommunication(Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> > const&, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal>&, int) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x50A512: void checkCommunication<Dune::CurvilinearGrid<3, 3, double, true>, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >(Dune::CurvilinearGrid<3, 3, double, true> const&, int, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal>&) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x509B2E: void check_grid<double, 3, true>(Dune::CurvilinearGrid<3, 3, double, true>&) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x5070A3: main (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==  Address 0x103f12a0 is not stack'd, malloc'd or (recently) free'd
==99947== 

valgrind: m_mallocfree.c:288 (get_bszB_as_is): Assertion 'bszB_lo == bszB_hi' failed.
valgrind: Heap block lo/hi size mismatch: lo = 80, hi = 4606463542527295847.
This is probably caused by your program erroneously writing past the
end of a heap block and corrupting heap metadata.  If you fix any
invalid writes reported by Memcheck, this assertion failure will
probably go away.  Please try that before reporting this as a bug.

==99947==    at 0x3804C60F: report_and_quit (m_libcassert.c:210)
==99947==    by 0x3804C752: vgPlain_assert_fail (m_libcassert.c:284)
==99947==    by 0x380586FD: vgPlain_arena_free (m_mallocfree.c:286)
==99947==    by 0x38020C05: create_MC_Chunk (mc_malloc_wrappers.c:154)
==99947==    by 0x380211F0: vgMemCheck_new_block (mc_malloc_wrappers.c:267)
==99947==    by 0x3802143D: vgMemCheck___builtin_new (mc_malloc_wrappers.c:295)
==99947==    by 0x3808F3E6: vgPlain_scheduler (scheduler.c:1461)
==99947==    by 0x3809E449: run_a_thread_NORETURN (syswrap-linux.c:98)

sched status:
  running_tid=1

Thread 1: status = VgTs_Runnable
==99947==    at 0x4C286E7: operator new(unsigned long) (vg_replace_malloc.c:287)
==99947==    by 0x528ABF: __gnu_cxx::new_allocator<int>::allocate(unsigned long, void const*) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x519361: std::allocator_traits<std::allocator<int> >::allocate(std::allocator<int>&, unsigned long) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x50FBE1: std::_Vector_base<int, std::allocator<int> >::_M_allocate(unsigned long) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x50AC88: std::_Vector_base<int, std::allocator<int> >::_M_create_storage(unsigned long) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x509E96: std::_Vector_base<int, std::allocator<int> >::_Vector_base(unsigned long, std::allocator<int> const&) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x50AD9A: std::vector<int, std::allocator<int> >::vector(std::vector<int, std::allocator<int> > const&) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x59F0B6: Dune::PolynomialTraits<double>::Monomial::Monomial(Dune::PolynomialTraits<double>::Monomial const&) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x5BF501: void std::__unguarded_linear_insert<__gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, __gnu_cxx::__ops::_Val_comp_iter<bool (*)(Dune::PolynomialTraits<double>::Monomial, Dune::PolynomialTraits<double>::Monomial)> >(__gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, __gnu_cxx::__ops::_Val_comp_iter<bool (*)(Dune::PolynomialTraits<double>::Monomial, Dune::PolynomialTraits<double>::Monomial)>) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x5BBB17: void std::__unguarded_insertion_sort<__gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, __gnu_cxx::__ops::_Iter_comp_iter<bool (*)(Dune::PolynomialTraits<double>::Monomial, Dune::PolynomialTraits<double>::Monomial)> >(__gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, __gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, __gnu_cxx::__ops::_Iter_comp_iter<bool (*)(Dune::PolynomialTraits<double>::Monomial, Dune::PolynomialTraits<double>::Monomial)>) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/tes!
 t/test-cu
 r
vgrid)
==99947==    by 0x5B7B7D: void std::__final_insertion_sort<__gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, __gnu_cxx::__ops::_Iter_comp_iter<bool (*)(Dune::PolynomialTraits<double>::Monomial, Dune::PolynomialTraits<double>::Monomial)> >(__gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, __gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, __gnu_cxx::__ops::_Iter_comp_iter<bool (*)(Dune::PolynomialTraits<double>::Monomial, Dune::PolynomialTraits<double>::Monomial)>) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/te!
 st-curvgr
 i
d)
==99947==    by 0x5B3CBC: void std::__sort<__gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, __gnu_cxx::__ops::_Iter_comp_iter<bool (*)(Dune::PolynomialTraits<double>::Monomial, Dune::PolynomialTraits<double>::Monomial)> >(__gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, __gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, __gnu_cxx::__ops::_Iter_comp_iter<bool (*)(Dune::PolynomialTraits<double>::Monomial, Dune::PolynomialTraits<double>::Monomial)>) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x5AE8ED: void std::sort<__gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, bool (*)(Dune::PolynomialTraits<double>::Monomial, Dune::PolynomialTraits<double>::Monomial)>(__gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, __gnu_cxx::__normal_iterator<Dune::PolynomialTraits<double>::Monomial*, std::vector<Dune::PolynomialTraits<double>::Monomial, std::allocator<Dune::PolynomialTraits<double>::Monomial> > >, bool (*)(Dune::PolynomialTraits<double>::Monomial, Dune::PolynomialTraits<double>::Monomial)) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x5A7308: Dune::Polynomial<double, 3>::compactify() (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x59F71D: Dune::Polynomial<double, 3>::operator+=(Dune::Polynomial<double, 3> const&) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x597728: Dune::CurvilinearGeometry<double, 3, 3, Dune::CurvilinearGeometryTraits<double> >::JacobianDeterminantAnalytical(std::vector<Dune::Polynomial<double, 3>, std::allocator<Dune::Polynomial<double, 3> > > const&) const (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x58E078: Dune::CachedCurvilinearGeometry<double, 3, 3, Dune::CurvilinearGeometryTraits<double> >::init() (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x5863E4: Dune::CachedCurvilinearGeometry<double, 3, 3, Dune::CurvilinearGeometryTraits<double> >::CachedCurvilinearGeometry<std::vector<Dune::FieldVector<double, 3>, std::allocator<Dune::FieldVector<double, 3> > > >(Dune::GeometryType, std::vector<Dune::FieldVector<double, 3>, std::allocator<Dune::FieldVector<double, 3> > > const&, int) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x56CD4A: Dune::CurvilinearGridBase<double, 3, true>::Codim<0>::EntityGeometry Dune::CurvilinearGridBase<double, 3, true>::entityGeometryConstructor<0>(Dune::CurvilinearGridStorage<double, 3, true>::EntityStorage) const (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x55E9CC: Dune::CurvilinearGridBase<double, 3, true>::Codim<0>::EntityGeometry Dune::CurvilinearGridBase<double, 3, true>::entityGeometry<0>(int) const (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x5869CC: Dune::CurvGrid::CurvIntersection<Dune::CurvilinearGrid<3, 3, double, true> const>::geometry() const (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x56D5B9: Dune::CurvGrid::CurvIntersection<Dune::CurvilinearGrid<3, 3, double, true> const>::type() const (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x55F5DB: Dune::CurvGrid::CurvIntersection<Dune::CurvilinearGrid<3, 3, double, true> const>::generateLocalGeometries() const (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x54F9C7: Dune::CurvGrid::CurvIntersection<Dune::CurvilinearGrid<3, 3, double, true> const>::geometryInInside() const (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x541BCE: Dune::Intersection<Dune::CurvilinearGrid<3, 3, double, true> const, Dune::CurvGrid::CurvIntersection<Dune::CurvilinearGrid<3, 3, double, true> const> >::geometryInInside() const (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x5255D6: CheckCommunication<Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> >, 3, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >::project(int, std::vector<double, std::allocator<double> >&, std::vector<double, std::allocator<double> >&, int) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x518184: CheckCommunication<Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> >, 3, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >::checkCommunication() (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x50F5A3: CheckCommunication<Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> >, 3, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >::CheckCommunication(Dune::GridView<Dune::DefaultLeafGridViewTraits<Dune::CurvilinearGrid<3, 3, double, true> const, (Dune::PartitionIteratorType)4> > const&, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal>&, int) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x50A512: void checkCommunication<Dune::CurvilinearGrid<3, 3, double, true>, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal> >(Dune::CurvilinearGrid<3, 3, double, true> const&, int, Dune::DebugStream<1u, 4u, 1u, Dune::greater_or_equal>&) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x509B2E: void check_grid<double, 3, true>(Dune::CurvilinearGrid<3, 3, double, true>&) (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)
==99947==    by 0x5070A3: main (in /data/fomins/gitwork/hades-github-lspr-ag/dune-curvilineargrid/build-cmake/dune/curvilineargrid/test/test-curvgrid)

Thread 2: status = VgTs_WaitSys
==99947==    at 0x6B8FD13: poll (poll.c:87)
==99947==    by 0x713B3A7: poll_dispatch (in /opt/extlib/openmpi/1.8.1/gcc/4.9.0/lib/libopen-pal.so.6.1.1)
==99947==    by 0x71328A6: opal_libevent2021_event_base_loop (in /opt/extlib/openmpi/1.8.1/gcc/4.9.0/lib/libopen-pal.so.6.1.1)
==99947==    by 0x6E82DDD: orte_progress_thread_engine (in /opt/extlib/openmpi/1.8.1/gcc/4.9.0/lib/libopen-rte.so.7.0.3)
==99947==    by 0x68A9B4F: start_thread (pthread_create.c:304)
==99947==    by 0x6B9A95C: clone (clone.S:112)


Note: see also the FAQ in the source distribution.
It contains workarounds to several common problems.
In particular, if Valgrind aborted or crashed after
identifying problems in your program, there's a good chance
that fixing those problems will prevent Valgrind aborting or
crashing, especially if it happened in m_mallocfree.c.

If that doesn't help, please report this bug to: www.valgrind.org

In the bug report, send all the above text, the valgrind
version, and what OS and version you are using.  Thanks.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQIcBAEBAgAGBQJVCo6XAAoJEDkNM7UOEwMZg1AP/13pIHfa5CQG1X1ihRlYtaAw
+LK/3+iWKLuiD/aX8BtOgoOrD3lu22AL8f0+3P9UsV73HQCwuAo7FG0fNEBZSIUh
5tV4hw+bdOCF0rkU/d9FKJrQV7/FVsQ4jDDu/+D5/e8qjDTMB6ds28lU/YHL0DeN
YjLhUN0eGO3IHdqvMbQj8VB+GltNuTavkG63afgmECEhpW1yIiigNdMz/I4aj/0B
xqKbGzkEcaXCXScgC5DsGcs1WwsEHfM8biQUU/86m0rZM5Z4u5x07Im8X8D9oT4P
jr9N1vkno6ceYdMgUEQabrS+3wTzBzlRAcsYqyns+1F1BT4ZKtFjvxNUpjQ/MNGa
PFcsJNqM+39goffBVQJOk4Cf+ByLPYOC1xjEPv7N5pG1oN+K7FrS53oYPzm3qjYF
ubEcRRyXH85+8e9ZhFX0shJ6XxUobgAr7Hrhy6nfGdJKlIU53dKWWqXsxiHpRFth
tlbNHB0lMAmi1IhR+YcTq+NEdfIX/Gmi+1yyJO4AyQ5aWHweglZ9g8aZDsSJ98rS
7fzpNjUB7YKLb1TvMSQBCNlYVGNlmi7ZoHRY5AR521TrgrEWysneCf6rZhD5/wwV
47rQquLWRQsvIx3T0RJQSsedd4oBykoKMfXhc6WDJdQCCGi9OvFCQbZAmWlxSole
Sieb/Ye0SMljk6TULuO7
=6Q1J
-----END PGP SIGNATURE-----




More information about the Dune mailing list