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