bug-xorriso
[Top][All Lists]
Advanced

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

[Bug-xorriso] Re: EFI boot option in mkisofs emulation of xorriso


From: Thomas Schmitt
Subject: [Bug-xorriso] Re: EFI boot option in mkisofs emulation of xorriso
Date: Fri, 13 Aug 2010 19:43:24 +0200

Hi,

> http://cvs.fedoraproject.org/viewvc/devel/cdrkit/cdrkit-1.1.9-efi-boot.patch/?revision=1.1&view=markup

Well, i asked for it. Now i have to read it ...
... ahum ... it seems to insert an El Torito
section header before the second and further
boot image entries in the boot catalog.
This allows to set the Platform Id for each
boot image individually (BIOS=0, EFI=0xef).
In the patch the Platform Id is stored in
  section_header.arch[0]
  current_boot_entry->arch

This looks much like --efi-boot which i
introduced on request of GRUB2 for their script
grub-mksrescue.
The difference is that my option implies no
-boot-info-table (a few bytes within the boot
image file where i would have to write some
block address pointers)i, -no-emul-boot, and
keeps any other boot options from being
applied to the EFI boot image.

I don't think that this is a problem.
Neither the Fedora example nor grub-mkrescue
set -boot-info-table or any emulation for the
EFI image.

xorriso generic option -boot_image allows
to define an arbitrary El Torito entry for
an image.

So i consider now to define option
  -as mkisofs ... -e FILE ...
as
  -boot_image any bin_path=FILE
  -boot_image any platform_id=ef

I am a bit insecure whether
  -efi-boot FILE
is intended to be an alias of -e.
In the patch i see 
  124    {{"eltorito-boot", required_argument, NULL, 'b'},
  125    'b', "FILE", "Set El Torito boot image name", ONE_DASH},
  126 +  {{"efi-boot", required_argument, NULL, 'e'},
  127 +   'e', "FILE", "Set EFI boot image name", ONE_DASH},
Option -eltorito-boot is a known alias of -b.

All in all, i think the GRUB2 wish of
  --efi-boot FILE
as
  -boot_image any next
  -boot_image grub efi_path=FILE
  -boot_image any next
seems more fool-proof than the Fedora option.

But i stay neutral with boot loaders and their
needs. They all are invited to issue wishes.


> In case you need info on how UEFI cd boot works

That would spoil my splendid ignorance. :))

I read ECMA-119 (aka ISO 9660), SUSP+RRIP
(Rock Ridge), and El Torito.
This specifies how to store files in the image
and what pointers to write into the El Torito
Boot catalog.
The boot facility later reads the boot catalog
and decides what entry to use in order to find
a boot image. I wash my hands in innocence at
that point of time.


> Default El-torito boot entry - isolinux or syslinux - BIOS
> 2nd boot entry - grub2_efi.bin FAT12 2MB image containing bootx64.efi
> (grub2 for x64 efi), bootx86.efi (grub2 for x86 efi) and grub.cfg

Wow. That's a new mix.
Normally it's either ISOLINUX or GRUB.


> and ISOHYBRID functionality. How to add isohybrid options in xorriso
> command itself instead of running "isohybrid <my_iso>" command
> separately?

There once was a built-in Isohybrid MBR in
xorriso. But hpa, the author of SYSLINUX
objected. So now i offer an opportunity to put an
MBR from SYSLINUX to the start of the image and
to apply the Isohybrid patching of that MBR.

Generic options
  -boot_image isolinux system_area=FILE
  -boot_image isolinux partition_table=on

-as mkisofs:
  -isohybrid-mbr FILE

"where FILE is one of the Syslinux files mbr/isohdp[fp]x*.bin"
(prescription by hpa.)

hpa seems to prefer that people use his script
on the produced image, though.
It is not easy to invent use cases where it
is necessary to let xorriso do that job.
If you have one, tell me.
I'd be glad to tell hpa. :))


So try how far you get and report about success
or failure. If i can help, then i will do.


Have a nice day :)

Thomas




reply via email to

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