Bug 64736
Summary: | upgrading 7.2 to 7.3 leaves system unbootable with DAC960 | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | [Retired] Red Hat Linux | Reporter: | Patrick C. F. Ernzer <pcfe> | ||||||
Component: | kernel | Assignee: | Arjan van de Ven <arjanv> | ||||||
Status: | CLOSED DUPLICATE | QA Contact: | Brock Organ <borgan> | ||||||
Severity: | medium | Docs Contact: | |||||||
Priority: | medium | ||||||||
Version: | 7.3 | CC: | joshua.bakerlepain | ||||||
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: | 2002-05-16 20:16:24 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: | |||||||||
Attachments: |
|
Description
Patrick C. F. Ernzer
2002-05-10 11:13:34 UTC
Created attachment 56945 [details]
initrd (original and patched), grub.conf, devide.map
Hello, I ran into the same problem upgrading from Redhat 6.2 -> 7.3. I found a quick work around to get my system back up. In addition to adding the devices to initrd.img as you stated you did, modify the linuxrc in the initrd.img to mount your root device instead of /dev/root. For example: my new linuxrc: mount --ro -t ext3 /dev/rd/c0d0p2 /sysroot I fount the workround here: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=62206 I hope this helps. Yes, it does. Thank you. You don't happen to have an initrd as created by 7.2 for the dac960 do you? This looks entirely correct to me unless pivot_root has somehow broken for dac960 Created attachment 57087 [details]
initrd for 2.4.9-31 that worked under 7.2
attachment created. If you need more files from the 7.2 install, please do tell me before 2002-05-16, after that the tape may be reused by amanda Shouldn't need anything else. The initrds are basically identical, though. Reassigning to kernel as the only problem I can see is maybe something being wrong with the pivot_root stuff in the newer kernel. Just to confirm, the only difference in linuxrc is that in the working 2.4.9-31smp initrd we have: [...] umount /proc echo Mounting root filesystem mount --ro -t ext3 /dev/root /sysroot pivot_root /sysroot /sysroot/initrd and in the non-working 2.4.18-4smp (updated kernel since bug report, no change in behaviour) [...] echo Mounting root filesyste mount --ro -t ext3 /dev/root /sysroot umount /proc pivot_root /sysroot /sysroot/initrd As a test I changed a 2.4.18-4smp initrd to umount /proc _before_ it mounts /dev/root but this did not help (i.e. same behaviour as in original bug report). I have nearly same troubles after 7.2 -> 7.3 upgrade (2.4.18-3), except the fact I do not have DAC960. I am using lilo and last messages I can see on screen after unsuccesfull boot is about that kernel is not able to find LABEL=/ and LABEL=/boot (both using ext3), then something about pivot_root and kernel panic. If I do not use LABEL it does not help. It also panic after recompilation of new kernel 2.4.18-4 with default athlon config and using mkinitrd to generade new initrd image (passing proper initrd in lilo.conf to kernel) I still have same situation. Only thing helps is to recompile it with ext3 not as module but included in kernel. Is the /initrd directory on your real root filesystem there and empty? *** This bug has been marked as a duplicate of 65207 *** Hey,I have practically the same problem, but it is not soved by mounting the device directly like you said... Can you guys help me ? when I type find in the dir where I create my image.. . ./lib ./lib/jbd.o ./lib/ext3.o ./bin ./bin/nash ./bin/insmod ./sbin ./sbin/bin ./sbin/modprobe ./etc ./dev ./dev/console ./dev/null ./dev/ram ./dev/systty ./dev/tty1 ./dev/tty2 ./dev/tty3 ./dev/tty4 ./loopfs ./proc ./sysroot ./linuxrc and linuxrc looks like: #!/bin/nash echo ">>>>>>>>>>>>>>>>>>>>>>>>> Starting linuxrc <<<<<<<<<<<<<<<<<<<<<<<<<" echo "Loading jbd module" insmod /lib/jbd.o echo "Loading ext3 module" insmod /lib/ext3.o mount -t proc /proc /proc echo Mounting /proc filesystem echo Creating root device mkrootdev /dev/root #echo /dev/ram0 > /proc/sys/kernel/real-root-dev echo 0x0100 > /proc/sys/kernel/real-root-dev echo Mounting root filesystem echo after this mount it linux crashes mount --ro -t ext3 /dev/root /sysroot #mount -t ext3 /dev/root /sysroot #mount -t ext2 /dev/cdrom /sysroot echo Pivot: pivot_root /sysroot /sysroot/initrd umount /proc errors: mount: error 6 mounting ext3 pivotroot: pivot_root(/sysroot,/sysroot/initrd) failed: 2 Freeing unused kernel memory: 304k freed Kernel panic: No init found. Try passing init= option to kernel. Should I make sure that /dev/rd/c0d0p2 is in my system ? Or does mkrootdev /dev/root take care of that ? I have tried to change /dev/root into /dev/rd/c0d0p2 but it does not work. Probably because (as you can see in 'find') the device c0d0p2 just isn't there. How does linux know that c0d0p2 is the root device? I don't get it... |