| Issue |
177185
|
| Summary |
[clang++][regression] CMake segfaults while building gromacs when built on RHEL8 or SLES15sp7 on AArch64
|
| Labels |
clang
|
| Assignees |
|
| Reporter |
pawosm-arm
|
This must have been introduced in last few days when our CI has been out of order.
Last known good SHA `6ef80e147c63ad84cd616cb4d664b1caf0dbc4bf`, first known 'bad' SHA `6574918875401825fb3a13f049740d40ba496853`.
Environment: RHEL8 or SLES15sp7
Purpose: build Gromacs with Spack
Details: Spack first builds CMake with indicated compiler (clang/clang++) then using this CMake it configures the Gromacs build.
Regression: a segfault while configuring the `muparser` part of Gromacs:
On RHEL8:
```
07:41:14 >> 270 CMake Error at /home/cicd/spack/opt/spack/linux-rhel8-armv8.4a/arm-
07:41:14 0.0/cmake-3.30.5-r63qsu26kthsojcahxauut6ymgj7fmad/share/cmake-3.30/
07:41:14 Modules/FetchContent.cmake:1906 (message):
07:41:14 271 CMake step for muparser failed: Segmentation fault
```
On SLES15sp7:
```
04:29:23 >> 263 CMake Error at /home/cicd/spack/opt/spack/linux-sles15-armv8.4a/arm
04:29:23 -0.0/cmake-3.30.5-znmvpuozwmdjypw3ki4g4gzq42y5tl6t/share/cmake-3.30
04:29:23 /Modules/FetchContent.cmake:1906 (message):
04:29:23 264 CMake step for muparser failed: Segmentation fault
```
Does not happen on more recent (RHEL9, RHEL10) systems with a more modern glibc and libstdc++.
The cmake binary:
```
$ ldd cmake
linux-vdso.so.1 (0x0000f0224f9d4000)
libcurl.so.4 => /home/cicd/spack/opt/spack/linux-rhel8-armv8.4a/arm-0.0/curl-8.10.1-7sojcioym5hkhwlwsi3kl77tgjzopeqg/lib/libcurl.so.4 (0x0000f0224edbb000)
libdl.so.2 => /lib64/libdl.so.2 (0x0000f0224ed9a000)
librt.so.1 => /lib64/librt.so.1 (0x0000f0224ed79000)
libz.so.1 => /home/cicd/spack/opt/spack/linux-rhel8-armv8.4a/arm-0.0/zlib-ng-2.2.1-jolskf3uwhy5fy7d56a4ab7jfqkbrk6w/lib/libz.so.1 (0x0000f0224ed48000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x0000f0224ed13000)
libm.so.6 => /lib64/libm.so.6 (0x0000f0224ec52000)
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x0000f0224eaae000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000f0224ea7d000)
libc.so.6 => /lib64/libc.so.6 (0x0000f0224e907000)
libnghttp2.so.14 => /home/cicd/spack/opt/spack/linux-rhel8-armv8.4a/arm-0.0/nghttp2-1.63.0-afpj5zoconhmseo5r2zibtoz66h7jo6u/lib/libnghttp2.so.14 (0x0000f0224e8c6000)
libssl.so.3 => /home/cicd/spack/opt/spack/linux-rhel8-armv8.4a/arm-0.0/openssl-3.4.0-bymp6kueoywmqzebz4kbrbfgiarlhatq/lib/libssl.so.3 (0x0000f0224e7c1000)
libcrypto.so.3 => /home/cicd/spack/opt/spack/linux-rhel8-armv8.4a/arm-0.0/openssl-3.4.0-bymp6kueoywmqzebz4kbrbfgiarlhatq/lib/libcrypto.so.3 (0x0000f0224e3ab000)
/lib/ld-linux-aarch64.so.1 (0x0000f0224f996000)
```
Post-mortem:
```
Core was generated by `/home/cicd/spack/opt/spack/linux-rhel8-armv8.4a/arm-0.0/cmake-3.30.5-r63qsu26kt'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x0000afd1d7748f88 in std::_Function_handler<void (cmLocalGenerator&, cmListFileBacktrace const&, std::unique_ptr<cmCustomCommand, std::default_delete<cmCustomCommand> >), cmMakefile::AddUtilityCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, std::unique_ptr<cmCustomCommand, std::default_delete<cmCustomCommand> >)::$_0>::_M_invoke(std::_Any_data const&, cmLocalGenerator&, cmListFileBacktrace const&, std::unique_ptr<cmCustomCommand, std::default_delete<cmCustomCommand> >&&) ()
(gdb) bt
#0 0x0000afd1d7748f88 in std::_Function_handler<void (cmLocalGenerator&, cmListFileBacktrace const&, std::unique_ptr<cmCustomCommand, std::default_delete<cmCustomCommand> >), cmMakefile::AddUtilityCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, std::unique_ptr<cmCustomCommand, std::default_delete<cmCustomCommand> >)::$_0>::_M_invoke(std::_Any_data const&, cmLocalGenerator&, cmListFileBacktrace const&, std::unique_ptr<cmCustomCommand, std::default_delete<cmCustomCommand> >&&) ()
#1 0x0000afd1d772c4c0 in cmMakefile::GeneratorAction::operator()(cmLocalGenerator&, cmListFileBacktrace const&) ()
#2 0x0000afd1d772db8c in cmMakefile::Generate(cmLocalGenerator&) ()
#3 0x0000afd1d7b8b8a4 in cmGlobalGenerator::CheckTargetProperties() ()
#4 0x0000afd1d7b8b728 in cmGlobalGenerator::CreateGenerationObjects(cmGlobalGenerator::TargetTypes) ()
#5 0x0000afd1d7b8d8e4 in cmGlobalGenerator::Compute() ()
#6 0x0000afd1d77f92a0 in cmake::Generate() ()
#7 0x0000afd1d77f78c4 in cmake::Run(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool) ()
#8 0x0000afd1d76acda8 in main ()
(gdb)
```
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs