On Saturday 26 March 2005 01:07, dann frazier wrote:
> On Wed, 2005-03-23 at 11:42 +0100, Erich Focht wrote:
> > Hi,
> > 
> > here is a fix for the ia64 boot issue which required a few unusual
> > workarounds in OSCAR-4.0. The patch needs to be applied to the image.
> > 
> 
> Thanks Erich.
> What distros has this been tested on?
> Can you explain a little bit about what is going wrong, and how your
> patch fixes it?

I have tested it under RHEL3-IA64.

As far as I can see the EFI.pm was only generating correct (working)
elilo setup when elilo.efi was placed in /boot/efi. In that case one
had:

/boot/efi/elilo.efi
/boot/efi/sc-initrd-*
/boot/efi/elilo.conf

and the efi_friendly() routine was simply stripping the /boot/efi/ and
the generated config file elilo.conf contained:

image=vmlinuz-...
        initrd=sc-initrd-...

This is is IMO the only configuration for which systemconfigurator was
able to build a runnable efi setup.

With RedHat and other distros the elilo.efi file goes to some
subdirectory below /boot/efi. The SIS version of sc did generate the
config file in /boot/efi/elilo.conf, no matter where the elilo.efi
was. Also the sc-initrd-* file was generated in /boot/efi. Therefore
the elilo.conf generated for RedHat was:

image=efi/redhat/vmlinuz-...
        initrd=sc-initrd-...

In theory (and according to your comments in the systemconfigurator
libs) the configuration should have looked more like the following:

image=\efi\redhat\vmlinuz-...
        initrd=\sc-initrd-...

I tried this but my version of elilo didn't like it. The only
combination I've seen working was:
- create elilo.conf and sc-initrd in the same directory as elilo.efi.
- strip all paths from the image and initrd lines in elilo.conf.

This is exactly what my patch does: it looks for elilo.efi in several
possible subdirectories. This is done in two places, once for deciding
where elilo.conf should be created, and once for deciding where the
initrd should be created: Boot/EFI.pm and Initrd/Generic.pm.

So now for RedHat we get:
/boot/efi/EFI/redhat/vmlinuz-...
/boot/efi/EFI/redhat/elilo.efi
/boot/efi/EFI/redhat/elilo.conf
/boot/efi/EFI/redhat/sc-initrd-...

and in elilo.conf the simplest possible setup:

image=vmlinuz-...
        initrd=sc-initrd-...

The only problem which really remains is to keep the two places for
possible elilo.efi paths in sync. Ideally we should introduce a new
function in Boot/EFI.pm : efi_path(). This should be exported and used
for both: deciding where elilo.conf and sc-initrd go. OTOH, new
distros don't come in every day, so keeping Boot/EFI.pm and
Initrd/Generic.pm path lists in sync isn't a big effort.

Thanks for reading this far ;-)

I'm off to short Easter holidays!

Happy Easter to everybody!

Erich




-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Sisuite-devel mailing list
Sisuite-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sisuite-devel

Reply via email to