9 messages in com.xensource.lists.xen-devel[Xen-devel] Re: xen/ia64 and elilo re...
FromSent OnAttachments
Arun Sharma16 Feb 2005 17:53 
Stephane Eranian20 Feb 2005 08:42 
Arun Sharma21 Feb 2005 22:26 
Stephane Eranian22 Feb 2005 08:49 
Arun Sharma23 Feb 2005 11:12.txt
Stephane Eranian23 Feb 2005 12:54.diff
Stephane Eranian23 Feb 2005 14:00 
Arun Sharma23 Feb 2005 14:19 
Brett Johnson28 Feb 2005 10:07 
Subject:[Xen-devel] Re: xen/ia64 and elilo relocation
From:Arun Sharma (arun@intel.com)
Date:02/21/2005 10:26:33 PM
List:com.xensource.lists.xen-devel

Stephane Eranian wrote:

Hi Stephane,

elilo loads each block of text/data at the address indicated by the paddr of the corresponding program header.

Are you saying that the address is different only when you abort a load?

Yes, that's right. Other missing piecees of info:

- I was using the elilo shipped with a RHEL4 beta - my elilo.conf:

image=xen label=xen initrd=xenlinux read-only append="nomca console=ttyS1,57600 root=/dev/sda2"

xenlinux is a large uncompressed binary - so it's easy to hit space to abort it's loading.

Note that when an EFI program terminates, the memory is not freed. If we do not cleanly free the memory on load abort, then it is possible that the designated memory address is unavailable.

elilo.efi didn't exit yet. It dropped me back to the elilo: prompt to let me choose an image. I chose the same image a second time and this time I saw xen getting loaded at a different address.

I quickly checked the source code and elilo does not try to relocate unless the option "relocatable " is specified either globally in elilo.conf or on the Xen image. I also checked the abort case and elilo does free the memory allocated for the kernel, as such you should be able to retry.

Someone suggested that the RHEL4 elilo turns relocation on by default to support SGI boxes. I'm not sure if it does that by adding a relocatable flag to elilo.conf or by changing the code. I checked the SRPM and the fedora cvs and can't find a patch which touches the code.

You can try forcing elilo-3.4/ia64/config.c:ia64_can_relocate() to return 0 just to make sure this is not the source of the problem.

Yes, I'll check this and let you know.

-Arun