This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-ia64-devel] Re: [kvm-ia64-devel] [PATCH 0/4] ia64/xen: paravirtuali

To: Keith Owens <kaos@xxxxxxxxxx>
Subject: [Xen-ia64-devel] Re: [kvm-ia64-devel] [PATCH 0/4] ia64/xen: paravirtualization of hand written assembly code
From: tgingold@xxxxxxx
Date: Mon, 25 Feb 2008 16:04:29 +0100
Cc: linux-ia64@xxxxxxxxxxxxxxx, kvm-ia64-devel@xxxxxxxxxxxxxxxxxxxxx, virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx, Isaku Yamahata <yamahata@xxxxxxxxxxxxx>, xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Mon, 25 Feb 2008 07:04:47 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <25065.1203946392@ocs10w>
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
References: <25065.1203946392@ocs10w>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Internet Messaging Program (IMP) 3.2.8
Quoting Keith Owens <kaos@xxxxxxxxxx>:

> tgingold@xxxxxxx (on Mon, 25 Feb 2008 13:54:48 +0100) wrote:
> >Quoting Keith Owens <kaos@xxxxxxxxxx>:
> >{...}
> >> A combination of options (2) and (3) would work.  Have a single source
> >> file for the IVT, using conditional macros.  Use that source file to
> >> build (at least) two copies of the IVT, for native and any virtualized
> >> modes.  The native copy of the IVT starts at label ia64_ivt in section
> >> .text.ivt, as it does now.  Any IVT versions for virtualized mode are
> >> defined as __cpuinitdata, so they are discarded after boot, unless
> >> CONFIG_HOTPLUG_CPU=y.  arch/ia64/kernel/head.S copies the relevant
> >> virtualized version over ia64_ivt when necessary, before initializing
> >> cr.iva.
> >>
> >> Single source for maintenance.  No indirect function overhead at run
> >> time.  Binary patching at boot time for the right mode.  No wasted
> >> space in the kernel.
> >
> >Good idea.  The linker script will be slightly more complex however...
> Don't see why the linker script needs to change at all.  The existing
> native IVT is at label ia64_ivt in section .text.ivt, as it is now.
> arch/ia64/kernel/head.S simply overwrites ia64_ivt with 32K of data for
> the virtualized IVT, copying from another data area.  AFAICT, nothing
> in that process requires linker changes.

Humm, what about relative jumps ?  The object code must be linked as if it were
at .text.ivt.  I suppose this is doable with OVERLAY in linker script.

Xen-ia64-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>