Red Hat Bugzilla – Bug 1445644
ifuncmod1.so ifuncmod3.so ifuncmod5.so tests fail during "make check" with binutils 2.27
Last modified: 2018-04-10 10:00:11 EDT
Created attachment 1274115 [details] partial "make check" log Description of problem: ifuncmod1.so ifuncmod3.so ifuncmod5.so fail during "make check" with binutils 2.27 Version-Release number of selected component (if applicable): glibc-2.17-192.el7 binutils-2.27-7.base.el7 How reproducible: build glibc, make check Steps to Reproduce: 1. rpmbuild -bc ~/rpmbuild/SPECS/glibc.spec 2. cd ~/rpmbuild/BUILD/glibc-*/build-*/ && make check Actual results: ifuncmod1.so ifuncmod3.so ifuncmod5.so tests fails Expected results: ifuncmod1.so ifuncmod3.so ifuncmod5.so must be passed Additional info: The bug is reproduced on x86_64 arch only. partial "make check" log is attached
Florian mentioned that this could be related to upstream commit e0ed2fb4. Applying this and rebuilding the glibc rpms didn't reproduce the errors.
We should fix this. commit e0ed2fb40a0e29c43cf60addc74741dab15f2e05 Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Mar 6 04:55:56 2015 -0800 Replace __attribute__((visibility("protected"))) With copy relocation, address of protected data defined in the shared library may be external. Compiler shouldn't asssume protected data will be local. But due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65248 __attribute__((visibility("protected"))) doesn't work correctly, we need to use asm (".protected xxx") instead. * elf/ifuncdep2.c (global): Replace __attribute__((visibility("protected"))) with asm (".protected global"). * elf/ifuncmod1.c (global): Likewise. * elf/ifuncmod5.c (global): Likewise.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2018:0805