Bug 467311

Summary: power6 tuned libraries have mismatch in rtld_global_ro size
Product: [Fedora] Fedora Reporter: Josh Boyer <jwboyer>
Component: glibcAssignee: Jakub Jelinek <jakub>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: 10CC: alromanoit, bugproxy, drepper, jakub, jens.osterkamp, jlaska
Target Milestone: ---   
Target Release: ---   
Hardware: powerpc   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-10-20 13:04:53 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 438944    
Attachments:
Description Flags
install.log from failed installation none

Description Josh Boyer 2008-10-16 19:42:01 UTC
Description of problem:

When trying to install rawhide on a POWER 6 machine, glibc fails with:

 Installing glibc-2.8.90-12.ppc

 Inconsistency detected by ld.so: dl-close.c: 719: _dl_close: Assertion

 `map->l_init_called' failed!

 error: %post(glibc-2.8.90-12.ppc) scriptlet failed, exit status 127


Version-Release number of selected component (if applicable):

glibc-2.8.90-12

How reproducible:

Always (i think)

Steps to Reproduce:
1. Install rawhide on a POWER6 machine
2.
3.
  
Actual results:

See above

Expected results:

glibc installs

Additional info:

Apparently this is due to the fact that this patch:

http://sourceware.org/ml/glibc-cvs/2008-q2/msg00074.html

is included in the source base for glibc.  The patch changes the size of rtld_global_ro when --with-cpu=power* is used to build glibc.  The base libc libraries are not built with --with-cpu= set at all, but the power6 tuned libraries have --with-cpu=power6.

There are two solutions:

1) Build the base versions of glibc with --with-cpu=power4 set
2) Revert the patch

Comment 1 Jakub Jelinek 2008-10-20 09:52:15 UTC
*** Bug 467474 has been marked as a duplicate of this bug. ***

Comment 2 Jakub Jelinek 2008-10-20 09:54:03 UTC
Should be fixed in glibc-2.8.90-14, please check it out.

Comment 3 IBM Bug Proxy 2008-10-20 10:03:26 UTC
=Comment: #0=================================================
When trying to install Fedora 10 Beta into a LPAR on a JS22 blade, system fails to boot from the
installed disk.

Here are the steps I used to do this :

1. boot LPAR from DVD iso image.
2. at yaboot prompt, choose linux (default)
3. follow the normal installation process, that is
- configure disks
- select timezone
- select packages to be installed
- ...
4. install packages onto disk
5. installation ends with a window offering to reboot.

6. reboot

After reboot firmware fails to detect hardware. This is due to an empty PReP partition.
When attaching the disk to a different to find out what had actually gone wrong I found a
(at best) incomplete installation :

- a lot of packages were missing
- some were installed incompletely

In the installation log I found the following messages :

Inconsistency detected by ld.so: dl-close.c: 719: _dl_close: Assertion `map->l_init_called' failed!
Installing zlib-1.2.3-18.fc9.ppc

Not only for glibc but for a lot of other packages installed after glibc. I will attach a full log
to this bug.
In my interpretation the root cause for this seems to be in some problem in glibc on power6 and
everything after that is just a symptom of an incomplete installation.

So maybe this bug should rather be "glibc breaks installation on power6" ?
=Comment: #1=================================================
Jens Osterkamp <jens.com> -

install.log from failed installation

=Comment: #2=================================================
Maybe I should add that RHEL5u2 is running in a different LPAR on the same machine without problems.
I also have Fedora 10 Beta running on a different (QS2x) cell blade without problems.

I conclude it must be something unique to this machine (JS22).

*** This bug has been marked as a duplicate of 467311 ***

Comment 4 IBM Bug Proxy 2008-10-20 10:03:33 UTC
Created attachment 320858 [details]
install.log from failed installation

Comment 5 Ulrich Drepper 2008-10-23 05:01:14 UTC
What glibc version is the IBM report for?  It's useless in the current form.

Comment 6 Jakub Jelinek 2008-10-23 06:50:27 UTC
The problem was that hp-timing.h defined HP_TIMING_AVAIL only for power4 and power6 configured glibc, in rawhide ld.so comes from the base (pre-power4) build
and /lib/power6/ libc.so, libm.so, libpthread.so, librt.so come from power6 build,
which means ld.so disagreed on _rtld_global* offsets with the power6 libs.
I've nuked the 32-bit powerpc hp-timing stuff for fedora builds, they are usable for RHEL which now ships with base libs for *.a/*.o only and has power4 ld.so and shared libraries in /lib plus extra power6 libraries in /lib/power6.

Comment 7 IBM Bug Proxy 2008-10-30 12:50:45 UTC
installed snap3 from network, problem is fixed, closing.

Comment 8 Andrea Corona 2008-11-15 17:43:02 UTC
I found the same problem with Fedora 9 installation on a JS22 LPAR.
Is it possible to fix it also in the FC9 tree?
Thank you

Comment 9 Bug Zapper 2008-11-26 03:55:56 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 10 development cycle.
Changing version to '10'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping