grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: PPC64


From: Pavel Roskin
Subject: Re: PPC64
Date: Thu, 23 Oct 2008 01:25:58 -0400
User-agent: Internet Messaging Program (IMP) H3 (4.1.4)

Quoting Hollis Blanchard <address@hidden>:

On Tue, 2008-10-21 at 18:04 -0400, Pavel Roskin wrote:

util/ieee1275/grub-install.in is not suitable for PowerPC.

It worked great for me. :)

OK, I should have said that it's not suitable as a drop-in replacement for yaboot on PowerMACs.

It assumes that /boot is on the HFS boot partition.

I documented the partitioning assumptions it uses:
http://grub.enbug.org/TestingOnPowerPC

Actually, that page doesn't mention grub-install at all. It suggests merging all modules with the core and installing it on the boot partition.

It's not the case for Fedora
and perhaps any distro.  The HFS boot partition is not mounted and
should be accessed by hfstools.  The modules should be installed
under /boot/grub.  The path to /boot/grub should be embedded into the
core image.  We have support for embedding the default module path now.
We need a better script that would not put all modules on the short HFS
boot partition.  Considering that the SPARC port is defunct, I would
just rewrite util/ieee1275/grub-install.in.

The "boot partition" is an unnecessary hack instituted by a particularly
opinionated ybin developer, and a great inconvenience. It's ridiculous
to have scripts to copy and convert yaboot.conf files into a "secret"
partition, especially since the bootloader is perfectly capable of
discovering files at run time (unlike lilo, where the ybin model came
from). Also, have you looked at those scripts? <shudder>

I don't quite understand what you mean here. I don't care where yaboot looks for its configuration files. I mean that GRUB should not rely on the kernel support for HFS and that the HFS boot partition should be used sparingly (it's a separate question whether yaboot does the best effort, but yaboot is small).

On IBM POWER servers, there is no HFS partition at all. Instead, there
is a "raw" partition onto which you dd an ELF file. Firmware loads the
whole thing into memory and jumps at offset 0. Traditionally, yaboot is
installed there, and when it runs it does a shoddy job of trying to walk
the (DOS) partition table, searching for /etc/yaboot.conf.

Once GRUB replaces yaboot/ybin we can happily wave both of these
anachronisms goodbye. Firmware on both systems is fully capable of
loading ELF files from a filesystem, and since it's on a filesystem
there is no need to embed anything or search anywhere: all files
(grub.cfg and the modules) should be placed adjacent to the executable.

Actually, I would prefer all files that don't have to be on HFS or on the raw partition to be on the native partition, so that they can be easily accessed. That includes grub.cfg.

As for embedding the path in the executable itself, that's a nice idea
until you copy the executable to another system or move your hard disk
to another system where devices have different Open Firmware paths and
aliases. Another big pain point is building bootable CDs, since these
also unfortunately cannot make assumptions about the Open Firmware
devices available.

We can use UUIDs now.  That should alleviate most issues.

Just put all the files in the same directory on a real filesystem and be
happy. I know I am. :)

I'm afraid I'm missing something.

Anyway, I think it's too much to ask from users to change the existing partitioning or mount points. GRUB can be more compatible with both its i386 implementation and with yaboot by keeping modules in /boot/grub on ext2 or another native filesystem and placing the minimal core to the machine specific boot partition (whether it's HFS or raw or something else).

The goal of my previous message was to list the issues I ran into. Inability to use grub-install as is was one of them, and it has not been addressed.

--
Regards,
Pavel Roskin




reply via email to

[Prev in Thread] Current Thread [Next in Thread]