[ipxe-devel] booting XenServer fails with "Segment does not fit into available memory"

Andrew Bobulsky rulerof at gmail.com
Tue Nov 20 16:05:59 UTC 2012


Hello Radoslaw,

On Thu, Nov 15, 2012 at 2:07 PM, Radoslaw Smigielski
<Radoslaw.Smigielski at eu.citrix.com> wrote:
> Hi,
>    I am involved in a project of booting XenServer which is an commercial version of xen hypervisor from iPXE.
>
> This is how we specydy the kernel, xen hypervisor needs to have passed dom0 (control domain) kernel and initrd of dom0 as arguments:
>
> kernel /xen/boot/xen.gz dom0_max_vcpus=2 dom0_mem=752M com1=115200,8n1 console=com1,vga --- /xen/boot/vmlinuz xencons=hvc console=hvc0 console=tty0 answerfile=http://10.0.0.123/xenserver0001answer.php install --- /xen/boot/install.img boot
>
> and this is what we saw:
>
>> /xen/boot/xen.gz ........OK
>> Could not boot, requested memory not available.
>> Could not boot image, requested memory not available.
>
> So I pulled latest iPXE sources from git and compiled undionly with  DEBUG=segment and this gives me a little bit more:
>
>> /xen/boot/xen. gz...
>> Preparing segment [7c00, 9a0f3, 9a8f3)
>> Segment [7c00,9a0f3,9a0f3) does not fit into available memory
>> Could not boot: Requested eory not available (http://ipxe.org/4603B1O1)
>> Could not boot iMage: Requested eory not available (http://ipxe.org/46O3B1O1)
>> No more network devices
>
>
> Any advice appreciated,
> Radek.
>
> _______________________________________________
> ipxe-devel mailing list
> ipxe-devel at lists.ipxe.org
> https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel

Correct me if I'm mistaken, but your Xen hypervisor is a multiboot
kernel, isn't it?  The syntax you're using looks very similar to the
syntax used by SYSLINUX's mboot.c32 module, but I'm not too sure
that'll work for iPXE. Going off of the iPXE docs[1], I think the
syntax you'd want would be more like this (in script format, but you
can of course type this manually):

#!ipxe
kernel /xen/boot/xen.gz dom0_max_vcpus=2 dom0_mem=752M com1=115200,8n1
console=com1,vga
module /xen/boot/vmlinuz xencons=hvc console=hvc0 console=tty0
answerfile=http://10.0.0.123/xenserver0001answer.php install
module /xen/boot/install.img
boot

Alternatively, if iPXE's multiboot support isn't working for you, you
could try chainloading PXELINUX and running mboot.c32 from there.
While COMBOOT support is still in iPXE, it's been mostly deprecated
and is no longer part of the default build for various reasons, but
the biggest reason being that most of the features it was used for
have been built in to iPXE for some time now.

Cheers,
Andrew Bobulsky

[1] http://ipxe.org/cmd/kernel#examples



More information about the ipxe-devel mailing list