Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

test failure with clang on linux with static build. #6

Open
balay opened this issue Apr 28, 2016 · 0 comments
Open

test failure with clang on linux with static build. #6

balay opened this issue Apr 28, 2016 · 0 comments

Comments

@balay
Copy link

balay commented Apr 28, 2016

I see a test failure with static build when using clang on fedora 23

$ uname -a
Linux asterix 4.4.8-300.fc23.x86_64 #1 SMP Wed Apr 20 16:59:27 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

$ clang --version
clang version 3.7.0 (tags/RELEASE_370/final)
Target: x86_64-redhat-linux-gnu
Thread model: posix
Configure Options: --configModules=PETSc.Configure --optionsModule=config.compilerOptions CC=clang CXX=clang++ --with-debugging=1 --download-hypre=1 --download-metis=1 --download-parmetis=1 --download-superlu_dist=1 --download-trilinos=1 --download-mpich=1 --with-clanguage=C++ --with-cxx-dialect=C++11 --download-sowing=1 --download-hdf5=1 --download-netcdf=1 --download-xsdktrilinos=1 --with-shared-libraries=0 PETSC_ARCH=arch-linux-xsdk-dbg

Error running ctest on xSDKTrilinos: Could not execute "cd /home/balay/petsc/arch-linux-xsdk-dbg/externalpackages/git.xsdktrilinos/build &&
/usr/bin/ctest":
Test project /home/balay/petsc/arch-linux-xsdk-dbg/externalpackages/git.xsdktrilinos/build
      Start  1: xSDKTrilinos_PETScAIJMatrix
 1/10 Test  #1: xSDKTrilinos_PETScAIJMatrix ..........   Passed    0.08 sec
      Start  2: xSDKTrilinos_PETSc_Amesos2_example
 2/10 Test  #2: xSDKTrilinos_PETSc_Amesos2_example ...   Passed    0.10 sec
      Start  3: xSDKTrilinos_PETSc_Anasazi_example
 3/10 Test  #3: xSDKTrilinos_PETSc_Anasazi_example ...   Passed    1.97 sec
      Start  4: xSDKTrilinos_PETSc_Ifpack2_example
 4/10 Test  #4: xSDKTrilinos_PETSc_Ifpack2_example ...   Passed    0.03 sec
      Start  5: xSDKTrilinos_PETSc_MueLu_example
 5/10 Test  #5: xSDKTrilinos_PETSc_MueLu_example .....***Exception: SegFault  0.29 sec
      Start  6: xSDKTrilinos_example_TpetraKSP
 6/10 Test  #6: xSDKTrilinos_example_TpetraKSP .......***Exception: SegFault  0.10 sec
      Start  7: xSDKTrilinos_example_EpetraKSP
 7/10 Test  #7: xSDKTrilinos_example_EpetraKSP .......***Exception: SegFault  0.06 sec
      Start  8: xSDKTrilinos_HypreTest
 8/10 Test  #8: xSDKTrilinos_HypreTest ...............   Passed    0.03 sec
      Start  9: xSDKTrilinos_Hypre_Belos_example
 9/10 Test  #9: xSDKTrilinos_Hypre_Belos_example .....***Exception: SegFault  0.07 sec
      Start 10: xSDKTrilinos_Hypre_Solve_example
10/10 Test #10: xSDKTrilinos_Hypre_Solve_example .....   Passed    0.02 sec
60% tests passed, 4 tests failed out of 10
Label Time Summary:
xSDKTrilinos    =   2.77 sec (10 tests)
Total Test time (real) =   2.78 sec
The following tests FAILED:
      5 - xSDKTrilinos_PETSc_MueLu_example (SEGFAULT)
        6 - xSDKTrilinos_example_TpetraKSP (SEGFAULT)
          7 - xSDKTrilinos_example_EpetraKSP (SEGFAULT)
            9 - xSDKTrilinos_Hypre_Belos_example (SEGFAULT)Errors while running CTest

ok - run one of the tests manually, with valgrind, debugger

balay@asterix /home/balay/petsc/arch-linux-xsdk-dbg/externalpackages/git.xsdktrilinos/build/petsc/example ((trilinos-release-12-6-2))
$ valgrind --tool=memcheck -q ./xSDKTrilinos_PETSc_MueLu_example.exe
==8071== Invalid read of size 8
==8071==    at 0x1DEEB11: Teuchos::GetBaseObjVoidPtrImpl<true, std::ostream>::getBaseObjVoidPtr(std::ostream*) (Teuchos_getBaseObjVoidPtr.hpp:73)
==8071==    by 0x1DEEAE8: void const* Teuchos::getBaseObjVoidPtr<std::ostream>(std::ostream*) (Teuchos_getBaseObjVoidPtr.hpp:113)
==8071==    by 0x1DEEAC4: void const* Teuchos::RCPNodeTracer::getRCPNodeBaseObjMapKeyVoidPtr<std::ostream>(std::ostream*) (Teuchos_RCPNode.hpp:435)
==8071==    by 0x1DEE2C4: Teuchos::RCPNode* Teuchos::RCPNodeTracer::getExistingRCPNode<std::ostream>(std::ostream*) (Teuchos_RCPNode.hpp:464)
==8071==    by 0x1DEE068: Teuchos::RCP<std::ostream>::RCP(std::ostream*, bool) (Teuchos_RCP.hpp:202)
==8071==    by 0x1D154BA: Teuchos::RCP<std::ostream> Teuchos::rcp<std::ostream>(std::ostream*, bool) (Teuchos_RCP.hpp:574)
==8071==    by 0x1CEE100: __cxx_global_var_init.21 (BelosPseudoBlockCGSolMgr.hpp:392)
==8071==    by 0x67623CC: __libc_csu_init (in /home/balay/petsc/arch-linux-xsdk-dbg/externalpackages/git.xsdktrilinos/build/petsc/example/xSDKTrilinos_PETSc_MueLu_example.exe)
==8071==    by 0xB4E550E: (below main) (in /usr/lib64/libc-2.22.so)
==8071==  Address 0xfffffffffffffff0 is not stack'd, malloc'd or (recently) free'd
==8071== 
==8071== 
==8071== Process terminating with default action of signal 11 (SIGSEGV)
==8071==  Access not within mapped region at address 0xFFFFFFFFFFFFFFF0
==8071==    at 0x1DEEB11: Teuchos::GetBaseObjVoidPtrImpl<true, std::ostream>::getBaseObjVoidPtr(std::ostream*) (Teuchos_getBaseObjVoidPtr.hpp:73)
==8071==    by 0x1DEEAE8: void const* Teuchos::getBaseObjVoidPtr<std::ostream>(std::ostream*) (Teuchos_getBaseObjVoidPtr.hpp:113)
==8071==    by 0x1DEEAC4: void const* Teuchos::RCPNodeTracer::getRCPNodeBaseObjMapKeyVoidPtr<std::ostream>(std::ostream*) (Teuchos_RCPNode.hpp:435)
==8071==    by 0x1DEE2C4: Teuchos::RCPNode* Teuchos::RCPNodeTracer::getExistingRCPNode<std::ostream>(std::ostream*) (Teuchos_RCPNode.hpp:464)
==8071==    by 0x1DEE068: Teuchos::RCP<std::ostream>::RCP(std::ostream*, bool) (Teuchos_RCP.hpp:202)
==8071==    by 0x1D154BA: Teuchos::RCP<std::ostream> Teuchos::rcp<std::ostream>(std::ostream*, bool) (Teuchos_RCP.hpp:574)
==8071==    by 0x1CEE100: __cxx_global_var_init.21 (BelosPseudoBlockCGSolMgr.hpp:392)
==8071==    by 0x67623CC: __libc_csu_init (in /home/balay/petsc/arch-linux-xsdk-dbg/externalpackages/git.xsdktrilinos/build/petsc/example/xSDKTrilinos_PETSc_MueLu_example.exe)
==8071==    by 0xB4E550E: (below main) (in /usr/lib64/libc-2.22.so)
==8071==  If you believe this happened as a result of a stack
==8071==  overflow in your program's main thread (unlikely but
==8071==  possible), you can try to increase the size of the
==8071==  main thread stack using the --main-stacksize= flag.
==8071==  The main thread stack size used in this run was 8388608.
Segmentation fault (core dumped)
balay@asterix /home/balay/petsc/arch-linux-xsdk-dbg/externalpackages/git.xsdktrilinos/build/petsc/example ((trilinos-release-12-6-2))
$ gdb xSDKTrilinos_PETSc_MueLu_example.exe
GNU gdb (GDB) Fedora 7.10.1-31.fc23
Copyright (C) 2015 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from xSDKTrilinos_PETSc_MueLu_example.exe...done.
(gdb) r
Starting program: /home/balay/petsc/arch-linux-xsdk-dbg/externalpackages/git.xsdktrilinos/build/petsc/example/xSDKTrilinos_PETSc_MueLu_example.exe 
Missing separate debuginfos, use: dnf debuginfo-install glibc-2.22-11.fc23.x86_64
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x0000000001deeb11 in Teuchos::GetBaseObjVoidPtrImpl<true, std::ostream>::getBaseObjVoidPtr (p=0x8118640 <std::cout@@GLIBCXX_3.4>)
    at /home/balay/petsc/arch-linux-xsdk-dbg/include/Teuchos_getBaseObjVoidPtr.hpp:73
73        return dynamic_cast<const void*>(p);
Missing separate debuginfos, use: dnf debuginfo-install blas-3.5.0-12.fc23.x86_64 lapack-3.5.0-12.fc23.x86_64 libgcc-5.3.1-6.fc23.x86_64 libgfortran-5.3.1-6.fc23.x86_64 libquadmath-5.3.1-6.fc23.x86_64
libstdc++-5.3.1-6.fc23.x86_64 libX11-1.6.3-2.fc23.x86_64 libXau-1.0.8-5.fc23.x86_64 libxcb-1.11.1-1.fc23.x86_64 zlib-1.2.8-9.fc23.x86_64
(gdb) where
#0  0x0000000001deeb11 in Teuchos::GetBaseObjVoidPtrImpl<true, std::ostream>::getBaseObjVoidPtr (p=0x8118640 <std::cout@@GLIBCXX_3.4>)
    at /home/balay/petsc/arch-linux-xsdk-dbg/include/Teuchos_getBaseObjVoidPtr.hpp:73
#1  0x0000000001deeae9 in Teuchos::getBaseObjVoidPtr<std::ostream> (p=0x8118640 <std::cout@@GLIBCXX_3.4>)
    at /home/balay/petsc/arch-linux-xsdk-dbg/include/Teuchos_getBaseObjVoidPtr.hpp:113
#2  0x0000000001deeac5 in Teuchos::RCPNodeTracer::getRCPNodeBaseObjMapKeyVoidPtr<std::ostream> (p=0x8118640 <std::cout@@GLIBCXX_3.4>)
    at /home/balay/petsc/arch-linux-xsdk-dbg/include/Teuchos_RCPNode.hpp:435
#3  0x0000000001dee2c5 in Teuchos::RCPNodeTracer::getExistingRCPNode<std::ostream> (p=0x8118640 <std::cout@@GLIBCXX_3.4>)
    at /home/balay/petsc/arch-linux-xsdk-dbg/include/Teuchos_RCPNode.hpp:464
#4  0x0000000001dee069 in Teuchos::RCP<std::ostream>::RCP (
    this=0x8118e88 <Belos::PseudoBlockCGSolMgr<double, Tpetra::MultiVector<double, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false>, Tpetra::Operator<double, int,
int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >, true>::outputStream_default_>, 
    p=0x8118640 <std::cout@@GLIBCXX_3.4>, has_ownership_in=false) at /home/balay/petsc/arch-linux-xsdk-dbg/include/Teuchos_RCP.hpp:202
#5  0x0000000001d154bb in Teuchos::rcp<std::ostream> (p=0x8118640 <std::cout@@GLIBCXX_3.4>, owns_mem=false)
    at /home/balay/petsc/arch-linux-xsdk-dbg/include/Teuchos_RCP.hpp:574
#6  0x0000000001cee101 in __cxx_global_var_init.21(void) () at /home/balay/petsc/arch-linux-xsdk-dbg/include/BelosPseudoBlockCGSolMgr.hpp:392
#7  0x00000000067623cd in __libc_csu_init ()
#8  0x00007ffff56c650f in __libc_start_main () from /lib64/libc.so.6
#9  0x0000000001d079d9 in _start () at /home/balay/petsc/arch-linux-xsdk-dbg/include/BelosPseudoBlockCGSolMgr.hpp:389
(gdb) 

However sharedlibrary build is valgrind clean

balay@asterix /home/balay/petsc/arch-linux-xsdk-dbg-so/externalpackages/git.xsdktrilinos/build/petsc/example ((9fc43b7...))
$ valgrind --tool=memcheck -q ./xSDKTrilinos_PETSc_MueLu_example.exe

Belos::StatusTestGeneralOutput: Passed
  (Num calls,Mod test,State test): (7, 1, Passed)
   Passed.......OR Combination -> 
     OK...........Number of Iterations = 6 < 200
     Converged....(2-Norm Imp Res Vec) / (2-Norm Res0)
                  residual [ 0 ] = 2.17253e-09 < 1e-08

Passed.......OR Combination -> 
  OK...........Number of Iterations = 6 < 200
  Converged....(2-Norm Imp Res Vec) / (2-Norm Res0)
               residual [ 0 ] = 2.17253e-09 < 1e-08

Belos relative residual: 2.17253e-09
Belos error: 3.00004e-07
  0 KSP Residual norm 2.617720319013e+01 
  1 KSP Residual norm 1.773962771700e+00 
  2 KSP Residual norm 8.104695442687e-02 
  3 KSP Residual norm 3.786203232774e-03 
  4 KSP Residual norm 1.660215537286e-04 
  5 KSP Residual norm 6.105067883957e-06 
  6 KSP Residual norm 2.559382328753e-07 
KSP relative residual: 2.17253e-09
balay@asterix /home/balay/petsc/arch-linux-xsdk-dbg-so/externalpackages/git.xsdktrilinos/build/petsc/example ((9fc43b7...))
$

@BarrySmith @sarich @amklinv

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant