[syslinux] isolinux bin and Xen.gz kernel

Eric Nicholson jenicholson at gmail.com
Fri May 11 09:25:45 PDT 2007


On 5/11/07, Geert Stappers <stappers at stappers.nl> wrote:
> > On 5/9/07, H. Peter Anvin <hpa at zytor.com> wrote:
> > >
> > > To load Xen-based kernels you have to use the SYSLINUX multiboot module
> > > -- mboot.c32.  See the mailing list archives
> > > (http://syslinux.zytor.com/archives), or there might be something on the
> > > wiki (http://syslinux.zytor.com/wiki).
> > >
> > >        -hpa
> >
> > Thanks for the help, I am now getting much further.
>
> Updates on http://syslinux.zytor.com/wiki/index.php/Xen are very welcome.
>
>
> > However, I now get the following message:
> >
> > kernel panic: not syncing: VFS: Unable to mount root fs on unknown-block (1,0)
>    <snip/>
> > I have searched through the archives listed above and have been trying
> > different options but still no luck in getting past the panic.
>
> The syslinux archive is about the syslinux bootloader family.
> Booted kernels that can't access a root filesystem
> could be a "syslinux issue",
> but could be also outside the scoop of syslinux.
>
>
> > Here is a copy of what my isolinux.cfg looks like:
>  <snip/>
> >   kernel mboot.c32
> >   append xen.gz nosmp noacpi --- vmlinuz ramdisk=30720 root=/dev/ram0 --- initrd.img
> >
> > The initrd.img is an ext2 filesystem. Is there a particular block size
> > to be used to create the ext2 fs for the ramdisk to load properly now
> > and mount?
> >
> > Any ideas on what I'm missing or need to add for mounting the ramdisk image?
>
> Information that might help:
>
>  There was / is much evolution in the initrd area.
>
>
> My advice is to
>  reread up-to-date documentation of the initrd tools that you are using.
>
>
> > Thanks again,
> > Eric
>
>
> Looking forward for feedback
> Geert Stappers

Thanks for the information. I finally have it working.

The mboot.c32 fixed the problem with booting the multiple kernels,
however, I noticed that mboot does not like kernel names with the
version extension
ie: kernel /xen.gz-2.6.18-8.1.3.el5

Once I modified the isolinux.cfg to
 kernel /xen.gz
It went passed that point.

The next problem was failing to mount of the root file system. The key
error message I found there was
"EXT2-fs block size to small for device"

It appears under Centos 5 and RedHat Enterprise Linux 5 there is a bug
with the EXT2-fs default block size being recognized.  Adding the
following line to the kernel append fixed this:

     ramdisk_blocksize=1024

I imagine that this is a bug in the particular kernel version and not
limited to the Linux Distributions listed above.

So my isolinux.cfg now looks like:

label linux
 kernel mboot.c32
 append xen.gz nosmp noacpi --- vmlinuz ramdisk=30720
ramdisk_blocksize=1024 root=/dev/ram0
--- initrd.img

Here is a link to the page where I found this bug report for the
EXT2-fs ramdisk_blocksize:

http://wiki.systemimager.org/index.php/Troubleshooting#Ramdisk_too_small.3F_Getting_errors.3F

I can provide or post these updates on the wiki if you would prefer.

Thank you for all your help.
Eric Nicholson




More information about the Syslinux mailing list