Bug 2046933 - quantum-espresso: FTBFS in Fedora rawhide/f36
Summary: quantum-espresso: FTBFS in Fedora rawhide/f36
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: quantum-espresso
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: marcindulak
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: F36FTBFS
TreeView+ depends on / blocked
 
Reported: 2022-01-27 09:43 UTC by Fedora Release Engineering
Modified: 2022-01-30 15:53 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-01-30 15:53:13 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
build.log (32.00 KB, text/plain)
2022-01-27 09:43 UTC, Fedora Release Engineering
no flags Details
root.log (32.00 KB, text/plain)
2022-01-27 09:43 UTC, Fedora Release Engineering
no flags Details
state.log (1008 bytes, text/plain)
2022-01-27 09:43 UTC, Fedora Release Engineering
no flags Details

Description Fedora Release Engineering 2022-01-27 09:43:22 UTC
quantum-espresso failed to build from source in Fedora rawhide/f36

https://koji.fedoraproject.org/koji/taskinfo?taskID=81986035


For details on the mass rebuild see:

https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Please fix quantum-espresso at your earliest convenience and set the bug's status to
ASSIGNED when you start fixing it. If the bug remains in NEW state for 8 weeks,
quantum-espresso will be orphaned. Before branching of Fedora 37,
quantum-espresso will be retired, if it still fails to build.

For more details on the FTBFS policy, please visit:
https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/

Comment 1 Fedora Release Engineering 2022-01-27 09:43:24 UTC
Created attachment 1856417 [details]
build.log

file build.log too big, will only attach last 32768 bytes

Comment 2 Fedora Release Engineering 2022-01-27 09:43:26 UTC
Created attachment 1856418 [details]
root.log

file root.log too big, will only attach last 32768 bytes

Comment 3 Fedora Release Engineering 2022-01-27 09:43:27 UTC
Created attachment 1856419 [details]
state.log

Comment 4 marcindulak 2022-01-30 09:32:19 UTC
Currently all tests (All done. ERROR: only 0 out of 226 tests passed (1 skipped).)
on f36 x86_64, gfortran-12 fail with "Program received signal SIGSEGV: Segmentation fault - invalid memory reference".

It seems like the failures can be associated with the "-flto=auto" option.
Appending the "-fno-lto" option can be used as a workaround to make most of the tests (220 out of 226, depending on mpi used) pass on f36 x86_64.

The test failures can be reproduced using the following Dockerfile

```
FROM fedora:36@sha256:dfb26a5dbc30de897f86e60870a4b4000c7733545e866fd1c03637a931b2d4e3

# Install packaging tools
RUN dnf install -y \
    git fedpkg fedora-packager curl

# Install build dependencies
RUN dnf install -y \
    make python3 python3-numpy python numpy gcc-gfortran flexiblas-devel flexiblas-openblas-serial openblas-serial fftw3-devel \
    openssh-clients openmpi-devel scalapack-openmpi-devel mpich-devel scalapack-mpich-devel which

RUN mkdir -p /root/espresso/pseudo/ \
    && curl -Lo /root/espresso/pseudo/Si.pz-vbc.UPF http://nninc.cnf.cornell.edu/psp_files/Si.pz-vbc.UPF 

CMD ["/bin/bash"]
```

Build the image and enter the container
```
docker build -t qe:latest .
docker run -it --rm --name qe qe:latest
```

Compile and run tests
```
mkdir /qe && cd /qe
curl -LO https://github.com/QEF/q-e/archive/refs/tags/qe-7.0.tar.gz
tar zxf qe-7.0.tar.gz && cd q-e-qe-7.0
sed -i 's|FOX_FLAGS = @foxflags@|FOX_FLAGS = $(FOXFLAGS)|' install/make.inc.in

module load mpi/openmpi-x86_64
export FLAGS='-fallow-argument-mismatch -O2 -flto=auto'
make clean || true 
export FCFLAGS=$FLAGS && export CFLAGS=$FLAGS && export FFLAGS=$FLAGS && export FOXFLAGS="$FLAGS -fPIE -x f95-cpp-input"
./configure && make all
cd test-suite/pw_pbe/
../../bin/pw.x < pbe0-si111.in

```

Result:

```

     Program PWSCF v.7.0 starts on 30Jan2022 at  9:26:43 

     This program is part of the open-source Quantum ESPRESSO suite
     for quantum simulation of materials; please cite
         "P. Giannozzi et al., J. Phys.:Condens. Matter 21 395502 (2009);
         "P. Giannozzi et al., J. Phys.:Condens. Matter 29 465901 (2017);
         "P. Giannozzi et al., J. Chem. Phys. 152 154105 (2020);
          URL http://www.quantum-espresso.org", 
     in publications or presentations arising from this work. More details at
     http://www.quantum-espresso.org/quote

     Parallel version (MPI), running on     1 processors

     MPI processes distributed on     1 nodes
     2023 MiB available memory on the printing compute node when the environment starts

     Waiting for input...
     Reading input from standard input

     Current dimensions of program PWSCF are:
     Max number of different atomic species (ntypx) = 10
     Max number of k-points (npk) =  40000
     Max angular momentum in pseudopotentials (lmaxx) =  4

     IMPORTANT: XC functional enforced from input :
     Exchange-correlation= PBE0
                           (   6   4   8   4   0   0   0)
     EXX-fraction              =        0.25
     Any further DFT definition will be discarded
     Please, verify this is what you really want

[b9f6c41c0f52:34998:0:34998] Caught signal 11 (Segmentation fault: address not mapped to object at address (nil))
==== backtrace (tid:  34998) ====
 0  /lib64/libucs.so.0(ucs_handle_error+0x2e4) [0x7f6ea90faf14]
 1  /lib64/libucs.so.0(+0x2865d) [0x7f6ea90fb65d]
 2  /lib64/libucs.so.0(+0x28845) [0x7f6ea90fb845]
 3  ../../bin/pw.x() [0x878e92]
 4  ../../bin/pw.x() [0x87bd7a]
 5  ../../bin/pw.x() [0x528976]
 6  ../../bin/pw.x() [0x588ebf]
 7  ../../bin/pw.x() [0x40889f]
 8  ../../bin/pw.x() [0x407bad]
 9  /lib64/libc.so.6(+0x2d590) [0x7f6eaee3a590]
10  /lib64/libc.so.6(__libc_start_main+0x89) [0x7f6eaee3a649]
11  ../../bin/pw.x() [0x407bd5]
=================================

Program received signal SIGSEGV: Segmentation fault - invalid memory reference.

Backtrace for this error:
#0  0x7f6eaf178a32 in ???
#1  0x7f6eaf177bc5 in ???
#2  0x7f6eaee4fadf in ???
#3  0x878e92 in ???
	at ../../Modules/qes_init_module.f90:2340
#4  0x87bd79 in pw_init_qexsd_input_.constprop.0
	at /qe/q-e-qe-7.0/PW/src/pw_init_qexsd_input.f90:475
#5  0x528975 in iosys_
	at /qe/q-e-qe-7.0/PW/src/input.f90:1729
#6  0x588ebe in run_pwscf_
	at /qe/q-e-qe-7.0/PW/src/run_pwscf.f90:102
#7  0x40889e in pwscf
	at /qe/q-e-qe-7.0/PW/src/pwscf.f90:85
#8  0x407bac in main
	at /qe/q-e-qe-7.0/PW/src/pwscf.f90:40
Segmentation fault (core dumped)
```

Comment 5 marcindulak 2022-01-30 11:32:27 UTC
Example build which uses "-flto=auto" with test segmentation faults https://koji.fedoraproject.org/koji/taskinfo?taskID=82138626

Example build with appended "-fno-lto" with most tests passing https://koji.fedoraproject.org/koji/taskinfo?taskID=82138836

Comment 6 marcindulak 2022-01-30 15:53:13 UTC
Reported upstream https://gitlab.com/QEF/q-e/-/issues/460

Built using -fno-lto workaround in https://koji.fedoraproject.org/koji/taskinfo?taskID=82142229


Note You need to log in before you can comment on or make changes to this bug.