[syslinux] Inconsistencies between ExtLinux and IsoLinux

Stefan Bucur stefanb at zytor.com
Sun Mar 15 03:11:59 PDT 2009


On Sat, Mar 14, 2009 at 9:15 PM, Stefan Bucur <stefanb at zytor.com> wrote:
>
> Hello Matthijs,
>
> Firstly, sorry for the late reply. It has been quite a busy week for
> me. I admit I didn't test my code on a ISOLINUX image, as I thought
> there would be no differences. It turns out there actually are some
> differences :) I will investigate the problem these days and I will
> show you here my findings.
>
> Cheers,
> Stefan

Greetings,

I'm coming back with the results of my investigations :) It turns out
the problem resides neither in my dynamic loader nor in ISOLINUX, but
in the way you build the ISO image. Your command line for creating the
ISO:

mkisofs -R -b isolinux.bin -hard-disk-boot -boot-load-size 4
-boot-info-table -l -joliet-long -o ../Boot.iso .

contains the "-R" paramter, which enables Rock Ridge information to be
included in the ISO. However, according to the ISOLINUX documentation
[1], it "only uses the plain ISO 9660 filenames, i.e. it does not
support Rock Ridge or Joliet filenames.". Therefore, the ISO image you
built may not work as expected with ISOLINUX (maybe it does not hang
from the beginning, but you can expect strange behavior, from time to
time, as it just happened).

The command that I used instead to create the ISO is:

mkisofs -o ../Boot.iso -b isolinux.bin -c isolinux.cat -no-emul-boot
-boot-load-size 4 -boot-info-table .

which I also took from the ISOLINUX wiki page [1]. However, you can
see (e.g. by mounting the ISO image with "mount -o loop Boot.iso
/mnt/tmp/") that all the files in the image are truncated to the 8.3
file format, including the "test_com32.c32" module name, which now
becomes "test_com.c32".

So the way to test the image with Qemu is to run "qemu -M pc -cdrom
Boot.iso", then to run "test_com", and then use the dynamic loader
shell as shown in the announcements page [2].

I hope everything is clearer now :) Please let me know if you have any
more questions.

Cheers,
Stefan



PS: I admit I should change the name of my testing module, to conform
with the 8.3 naming convention and avoid any more troubles like this.
:)

[1] http://syslinux.zytor.com/wiki/index.php/ISOLINUX
[2] http://syslinux.zytor.com/wiki/index.php/GSoC2008_Stefan_Announcements




More information about the Syslinux mailing list