Bug 103610 - yaboot-static claims incorrectly that /proc/device-tree broken is in the 2.6.12 kernel series
|
Bug#:
103610
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: PPC64
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: ppc64@gentoo.org
|
Reported By: bruda@turing.ubishops.ca
|
|
Component: Core system
|
|
|
URL:
|
|
Summary: yaboot-static claims incorrectly that /proc/device-tree broken is in the 2.6.12 kernel series
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2005-08-24 11:36 0000
|
A check in ofpath makes it bail out without returning any path (only for
/dev/sd* arguments). So ybin and brethen will fail to run properly. This is
manifest only in the 2.6.12 kernel series, and is caused by a /proc/device-tree
cleanup as mentioned at
<http://lists.penguinppc.org/yaboot-devel/2005/yaboot-devel-200506/msg00055.html>
The above URL also offers a fix, which has been deemed correct only if BootX is
no longer in use (cf.
<http://lists.penguinppc.org/yaboot-devel/2005/yaboot-devel-200506/msg00056.html>).
Since the yaboot-static package is ppc64 only, and ppc64 cannot use BootX
afaik, I believe that applying the patch is in order.
Reproducible: Always
Steps to Reproduce:
1. Boot any 2.6.12 kernel
2. Run ofpath /dev/sda (or similar or something that uses ofpath such as ybin)
Actual Results:
< turing:~ > ybin -v
ybin: Finding OpenFirmware device path to `/dev/sda2'...
ofpath: /proc/device-tree is broken. Do not use BootX to boot, use yaboot.
ofpath: The yaboot HOWTO can be found here: http://www.alaska.net/~erbenson/doc
ybin: Unable to find OpenFirmware path for boot=/dev/sda2
ybin: Please add ofboot=<path> where <path> is the OpenFirmware path to
/dev/sda2 to /etc/yaboot.conf
ybin: Finding OpenFirmware device path to `/dev/sda11'...
ofpath: /proc/device-tree is broken. Do not use BootX to boot, use yaboot.
ofpath: The yaboot HOWTO can be found here: http://www.alaska.net/~erbenson/doc
ybin: Unable to determine OpenFirmware path for macosx=/dev/sda11
ybin: Try specifying the real OpenFirmware path for macosx=/dev/sda11 in
/etc/yaboot.conf
Expected Results:
(note: this is the actual result of using the patched ofpath)
< turing:~ > ybin -v
ybin: Finding OpenFirmware device path to `/dev/sda2'...
ybin: Finding OpenFirmware device path to `/dev/sda11'...
ybin: Installing first stage bootstrap /usr/lib/yaboot/ofboot onto /dev/sda2...
ybin: Installing primary bootstrap /usr/lib/yaboot/yaboot onto /dev/sda2...
ybin: Installing /etc/yaboot.conf onto /dev/sda2...
ybin: Setting attributes on ofboot...
ybin: Setting attributes on yaboot...
ybin: Setting attributes on yaboot.conf...
ybin: Blessing /dev/sda2 with Holy Penguin Pee...
ybin: Updating OpenFirmware boot-device variable in nvram...
nothing else is applicable
This affects standard ppc as well:
# ofpath /dev/sda
ofpath: /proc/device-tree is broken. Do not use BootX to boot, use yaboot.
ofpath: The yaboot HOWTO can be found here: http://www.alaska.net/~erbenson/doc
# ybin -v
ybin: Warning: `nvsetenv' could not be found, nvram will not be updated
ybin: Finding OpenFirmware device path to `/dev/sda2'...
ofpath: /proc/device-tree is broken. Do not use BootX to boot, use yaboot.
ofpath: The yaboot HOWTO can be found here: http://www.alaska.net/~erbenson/doc
ybin: Unable to find OpenFirmware path for boot=/dev/sda2
ybin: Please add ofboot=<path> where <path> is the OpenFirmware path to
/dev/sda2 to /etc/yaboot.conf
Install halts at this point.
I've seen this problem, too. A temporary fix is to comment out the check and
error message in /usr/sbin/ofpath (Line 710 to 715).
I tried that, but since /usr/sbin/ofpath is on the boot CD, it's read-only and
cannot be saved.
Whoops...forgot to close it.
This is fixed with the 2005.1-r1 release media.