[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Paravirtualized xenlinux/ia64 available



I have completed the first *functionally* paravirtualized
xenlinux/ia64.  This means that if you use these sources,
no privification (binary translation) is necessary.

Note that I said "functionally".  There is still work
to do to increase performance... it's not bad but
there's still significant opportunities for improvement.
And this is domain0 paravirtualization only; no changes
for virtual I/O (multiple domains not supported yet).
Note also that this is not a "transparent" paravirtualization
(which would allow one binary to work both on top of Xen
and on bare metal), though that certainly now seems feasible.

I can't easily separate out the paravirtualization changes
due to performance (so far) and those functionally required
but the code change statistics relative to stock
linux-2.6.11 are as follows:

files changed: 14 (including Makefiles/buildfiles)
linux common files changed: 0 (all ia64-archdep)
diff -u: 1098 lines
added (including conditional compile): 621 lines
added (ignoring conditional compile): 408 lines
removed: 0 lines

Instructions for pulling xenlinux/ia64 are included in
the message below.

Dan

> -----Original Message-----
> From: Magenheimer, Dan (HP Labs Fort Collins) 
> Sent: Friday, April 22, 2005 5:45 PM
> To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
> Subject: First steps of Linux/ia64 paravirtualization for Xen/ia64
> 
> I have done a preliminary paravirtualization of Linux/ia64.
> There's still much work to be done, but I've checked in the
> preliminary work at:
> 
> bk://xen-ia64.bkbits.net/xenlinux-ia64-2.6.11.bk
> 
> Do a bk pull on this... when this is complete (warning: takes
> a long time!), you will need to do a "bk -r co" because the
> tree isn't checked out by default like the xen tree is.
> Once this is done, you can peruse the changes by searching
> for CONFIG_XEN (plus one change in arch/ia64/Kconfig).
> To build it (on an HP rx2600), do:
> 
> cd xenlinux-ia64-2.6.11.bk
> cp arch/ia64/configs/xen_zx1_defconfig .config
> yes "" | make ARCH=ia64
> make ARCH=ia64
> 
> You will then need to privify the resulting vmlinux
> (using the privify tool provided and described in
> xen/arch/ia64/tools/privify in xeno-unstable.bk or
> xeno-unstable-ia64.bk
> 
> Note that there are a couple hard-to-reproduce bugs,
> both probably present but not exposed by a unparavirtualized
> Linux.  First, I have seen periodic "freezes" when multiple
> interrupt sources are active.  Second, after many pids
> are used (and the ia64 rid space wraps around), I sometimes
> see a crash.
> 
> Oh, and there are some required fixes that are checked in to
> bk://xen-ia64.bkbits.net/xeno-unstable-ia64.bk tree
> but may not yet be in the main xeno-unstable tree.
> 
> Caveat user, but the current code might be of interest to some.
> 
> Dan
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.