Bug 1548473 - fftw: Partial Fedora build flags injection
Summary: fftw: Partial Fedora build flags injection
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: fftw
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Conrad Meyer
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 985592
Blocks: Fedora28BuildFlags
TreeView+ depends on / blocked
 
Reported: 2018-02-23 15:52 UTC by Florian Weimer
Modified: 2018-05-09 21:24 UTC (History)
5 users (show)

Fixed In Version: fftw-3.3.5-11.fc28
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2018-05-09 21:24:42 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Florian Weimer 2018-02-23 15:52:55 UTC
/usr/lib64/libfftw3.so.3.5.5 in fftw-libs-double-3.3.5-10.fc28.x86_64 has not been linked with the standard Fedora linker flags (LDFLAGS) from redhat-rpm-config.

It seems that something dropped the -specs=/usr/lib/rpm/redhat/redhat-hardened-ld part of LDFLAGS:

libtool: link: gcc -shared  -fPIC -DPIC  -Wl,--whole-archive kernel/.libs/libkernel.a dft/.libs/libdft.a dft/scalar/.libs/libdft_scalar.a dft/scalar/codelets/.libs/libdft_scalar_codelets.a rdft/.libs/librdft.a rdft/scalar/.libs/librdft_scalar.a rdft/scalar/r2cf/.libs/librdft_scalar_r2cf.a rdft/scalar/r2cb/.libs/librdft_scalar_r2cb.a rdft/scalar/r2r/.libs/librdft_scalar_r2r.a reodft/.libs/libreodft.a api/.libs/libapi.a simd-support/.libs/libsimd_support.a simd-support/.libs/libsimd_sse2_nonportable.a dft/simd/sse2/.libs/libdft_sse2_codelets.a rdft/simd/sse2/.libs/librdft_sse2_codelets.a dft/simd/avx/.libs/libdft_avx_codelets.a rdft/simd/avx/.libs/librdft_avx_codelets.a -Wl,--no-whole-archive  -lm  -O2 -m64 -mtune=generic -mcet -Wl,-z -Wl,relro   -Wl,-soname -Wl,libfftw3.so.3 -o .libs/libfftw3.so.3.5.5

Comment 1 Conrad Meyer 2018-04-19 00:54:25 UTC
@Florian, it seems (?)all libtool-using binaries will suffer from the same problem prior to https://src.fedoraproject.org/rpms/libtool/c/2e616087c1dce036105331cb0ef67e57499011f3?branch=master , which is not yet present in Fedora 28.  Perhaps a more general fix makes sense?

Comment 2 Merlin Mathesius 2018-04-19 13:33:40 UTC
This problem is fixed in Rawhide by https://src.fedoraproject.org/rpms/fftw/pull-request/4. F28 fix is pending resolution of bug 985592.

Comment 4 Conrad Meyer 2018-05-02 15:22:39 UTC
ARM build failed on F28: https://koji.fedoraproject.org/koji/taskinfo?taskID=26727740 , but not Rawhide:

https://kojipkgs.fedoraproject.org//work/tasks/7795/26727795/build.log

--------------------------------------------------------------------------
It looks like orte_init failed for some reason; your parallel process is
likely to abort.  There are many reasons that a parallel process can
fail during orte_init; some of which are due to configuration or
environment problems.  This failure appears to be an internal failure;
here's some additional information (which may only be relevant to an
Open MPI developer):
  getting local rank failed
  --> Returned value Not found (-13) instead of ORTE_SUCCESS
--------------------------------------------------------------------------
--------------------------------------------------------------------------
It looks like orte_init failed for some reason; your parallel process is
likely to abort.  There are many reasons that a parallel process can
fail during orte_init; some of which are due to configuration or
environment problems.  This failure appears to be an internal failure;
here's some additional information (which may only be relevant to an
Open MPI developer):
  orte_ess_init failed
  --> Returned value Not found (-13) instead of ORTE_SUCCESS
--------------------------------------------------------------------------
--------------------------------------------------------------------------
It looks like MPI_INIT failed for some reason; your parallel process is
likely to abort.  There are many reasons that a parallel process can
fail during MPI_INIT; some of which are due to configuration or environment
problems.  This failure appears to be an internal failure; here's some
additional information (which may only be relevant to an Open MPI
developer):
  ompi_mpi_init: ompi_rte_init failed
  --> Returned "Not found" (-13) instead of "Success" (0)
--------------------------------------------------------------------------
*** An error occurred in MPI_Init_thread
*** on a NULL communicator
*** MPI_ERRORS_ARE_FATAL (processes in this communicator will now abort,
***    and potentially your MPI job)
[buildvm-armv7-11.arm.fedoraproject.org:401] Local abort before MPI_INIT completed completed successfully, but am not able to aggregate error messages, and not able to guarantee that all other processes were killed!
-------------------------------------------------------
Primary job  terminated normally, but 1 process returned
a non-zero exit code.. Per user-direction, the job has been aborted.
-------------------------------------------------------

Comment 5 Merlin Mathesius 2018-05-02 15:52:56 UTC
I have noticed before that the armv7hl build occasionally "just fails" like that for mysterious reasons. (Perhaps due to lack of resources on the builder?) I suggest giving the build another try or two...

Comment 6 Conrad Meyer 2018-05-02 15:58:43 UTC
That's... unfortunate :-). 

Try #2: https://koji.fedoraproject.org/koji/taskinfo?taskID=26729478

Comment 7 Merlin Mathesius 2018-05-02 16:18:03 UTC
You were a little too anxious on the retry. :-)

  failed: Build already in progress (task 26727740)

The previous build is still in progress for a couple architectures...

Comment 8 Conrad Meyer 2018-05-02 17:55:03 UTC
Well, that's annoying.  Can old builds be cancelled?  It's still running on s390 and i686.

Comment 9 Merlin Mathesius 2018-05-02 18:29:07 UTC
koji cancel <task-id|build>

Comment 10 Conrad Meyer 2018-05-02 18:46:12 UTC
(In reply to Merlin Mathesius from comment #9)
> koji cancel <task-id|build>

Thanks.  New build kicked off here: https://koji.fedoraproject.org/koji/taskinfo?taskID=26730584

Comment 11 Merlin Mathesius 2018-05-03 13:49:43 UTC
(In reply to Conrad Meyer from comment #10)
> Thanks.  New build kicked off here:
> https://koji.fedoraproject.org/koji/taskinfo?taskID=26730584

After many hours for the s390x specific tasks, the Rawhide and F28 package builds finally completed. Thank you for taking care of those.

Will you also be pushing this out as a build update for F28?

Comment 12 Conrad Meyer 2018-05-03 13:51:49 UTC
Does it make a functional change (hardened ld flags)?  If so, it's probably a good thing to push, right?  I will push it if you recommend I do so.  Thanks for all your help on this.

Comment 13 Merlin Mathesius 2018-05-03 14:18:41 UTC
There's no functional change, but it does bring the package in compliance with the Fedora packaging guidelines[1] and making sure all packages are properly hardened[2].

Thanks again!

[1] https://fedoraproject.org/wiki/Packaging:Guidelines#Compiler_flags
[2] https://fedoraproject.org/wiki/Changes/Harden_All_Packages

Comment 14 Fedora Update System 2018-05-03 15:26:22 UTC
fftw-3.3.5-11.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-58f23f45d7

Comment 15 Conrad Meyer 2018-05-03 15:26:41 UTC
I think you could make an argument that hardening is a functional change.  (If it didn't change anything, why did we make the change? ;-))  Of course, it doesn't (or shouldn't anyway) change the API (not sure about ABI?) of the library.

Comment 16 Merlin Mathesius 2018-05-03 15:34:46 UTC
(In reply to Conrad Meyer from comment #15)
> I think you could make an argument that hardening is a functional change. 
> (If it didn't change anything, why did we make the change? ;-))  Of course,
> it doesn't (or shouldn't anyway) change the API (not sure about ABI?) of the
> library.

Touché! :)

Thanks for taking care of this.

Comment 17 Fedora Update System 2018-05-06 10:06:33 UTC
fftw-3.3.5-11.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-58f23f45d7

Comment 18 Fedora Update System 2018-05-09 21:24:42 UTC
fftw-3.3.5-11.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.


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