Bug 230874
Summary: | kernel panic caused by a missing libm | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Ronald Warsow <rwarsow> |
Component: | mkinitrd | Assignee: | Peter Jones <pjones> |
Status: | CLOSED RAWHIDE | QA Contact: | David Lawrence <dkl> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | CC: | atkac, k.georgiou, mishu, nphilipp, redhat-bugzilla, sven |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | i386 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2007-05-21 15:59:01 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: | 235251 | ||
Bug Blocks: | 150226 |
Description
Ronald Warsow
2007-03-04 03:37:43 UTC
if i run the scripts (preuninstall and afterwards postinstall) from the 2962 kernel.x.y.rpm: /sbin/new-kernel-pkg --rminitrd ... /sbin/new-kernel-pkg --package ... the initrd file is build without a /i686/nosegneg directory under /lib. booted was a non-xen kernel. seems it's a xen-kernel -> non-xen-kernel install/update issue only... Confirmed - seeing the same problem here on my test machine. Here's the root of the problem. We're using shared libraries in initrd now, so mkinitrd basically needs to run ldd on each binary that's going into the initrd. Unfortunately, /etc/ld.so.conf.d/kernelcap-*.conf does some magical stuff so that when you are running a Xen kernel, you get the following: [wwoods@norfair ~]$ ldd /sbin/nash | grep libm libm.so.6 => /lib/i686/nosegneg/libm.so.6 (0x00a25000) But if you were running a normal kernel, you would get /lib/libm.so.6 instead. So when you boot into the non-xen kernel, it expects /lib/libm.so.6, but that's not there, so nash fails to start. We may need a way to disable this nosegneg stuff when building an initrd for a non-xen kernel, or we might need to create extra symlinks after creating it, or we might need to force mkinitrd to only fetch /lib/$(basename $library). I'm not really sure what the right answer is. A further note - the variable LD_HWCAP_MASK is supposed to let you mess with the hwcap stuff (see /etc/ld.so.conf.d/kernelcap-*.conf in the Xen kernels), but I can't find a way to make it mask the nosegneg bit. today i do a fresh test install with a xen-kernel first and a update/install to a non-xen-kernel afterwards. seem's to be fixed ! thx. I just tried it with 6.0.8-4 and it doesn't seem to be fixed here (started with a problematic kernel-xen-2.6.20-2925.5.fc7.i686, installed kernel-2.6.20-1.3071.fc7 on top of it, initrd had libs in /lib/i686/nosegneg). I have same problems. When I updated (yum update) from fc6 xen system to non-xen rawhide non-xen kernel isn't able to boot. -A- With the change proposed in bug 235251 (and included in mkinitrd-6.0.9-4), this shoudl be resolved |