This Wiki is the old Xen Wiki, which is now read-only!
Please go to wiki.xen.org for the live version!
Xen 
 
Home Products Support Community Blog
 
   

Contributing

The mailing list xen-ppc-devel@lists.xensource.com does not exist anymore. Please see the archives: http://lists.xensource.com/archives/html/xen-ppc-devel/

Status update 2010

Xen PPC development has been stopped and sourcecode has been removed from Xen 3.3 and newer versions. Xen 3.2 is the latest version to include Xen PPC support. New developers are welcome to continue the development of Xen on PPC!

Some links about Xen PPC discussion from 2009: http://lists.xensource.com/archives/html/xen-devel/2009-12/msg00769.html , http://lists.xensource.com/archives/html/xen-devel/2009-12/msg00774.html , http://lists.xensource.com/archives/html/xen-devel/2009-03/msg01797.html , http://lists.xensource.com/archives/html/xen-devel/2007-02/msg00815.html .

Xen PPC port removed from Xen source repository on May 2008: http://lists.xensource.com/archives/html/xen-ppc-devel/2008-05/msg00000.html .

See Xen ARM project for another actively developed Xen project on RISC CPU.

Current Status

Xen PPC supports the 970 class of processor, specific platforms we test/run on are:

  • Maple PPC970 evaluation board
  • IBM JS20 and JS21 blades with custom firmware.

We are exclusively using the standard Xen Domain Managment Tools for DomU creation and console. There is a xm checklist page that tracks which xm commands work. The /domctrl tool is useful for debugging still and we hope to integrate those debugging features into the stadard Xen XM tools.

Major feature list:

dom0 boot with console

yes

domU boot with console

yes

standard management tools

yes

virtual disk

yes

virtual network

yes

SMP Hypervisor

yes

SMP guest

yes

guest save/restore

close

memory ballooning

no

live migration

no

Operating System Support

Xen requires paravirtualization (operating system modifications) for performance. Other operating systems could certainly be ported to the Xen hypervisor interface, but currently we are only supporting Linux for PowerPC Xen.

Bug Tracking

We are using the main Xen bugzilla bugtracking system: all PowerPC bugs. Please create an account so that bugs may be assigned to you. ;-)

How To Get, Build and Run XenPPC

Our code has been merged upstream into xen-unstable.hg and linux-2.6.18-xen.hg. However, there will always be work in the PowerPC-specific tree that hasn't been merged, so most users should stick with the Mercurial trees listed here:

More details on how to obtain the source, build and run are found:

PowerPC To-Do List

priority

completion

description

hacker

high

75%

PowerPC GRUB: multiboot (module loading)

HollisBlanchard

high

50%

validate libvirt, virt-install, virt-manager

JeroneYoung

med

80% ?

Determine which xm-tests represent real failures of the XenPPC port

med

stop sharing MPIC between Xen and dom0

JimiXenidis

med

support RTAS in dom0: needed for RTC, NVRAM, firmware upgrade

low

dynamic grant tables

low

report proper node/socket/core topology

low

domU debugging with tools/debugger/gdb. Everything except breakpoints should be doable.

low

pass Flattened Device Tree to dom0 (obviating xen/arch/powerpc/of_handler)

low

PowerPC GRUB: PIBS support

low

70%

validate and document using 970 Full System Simulator

low

50%

support non-hypervisor mode 970 (Apple G5)

MarkMergen

low

sniff-test open source CIM provider

low

50%

hcall tracing with dom0_tbufcontrol_t (debugging)

TonyBreeds

low

get Linux Maple/LPAR patch upstream -- requires Xen acceptance in upstream Linux

low

stepping in GDB is unreasonably slow (debugging)

nice-to-have

PAPR emulation layer — console, IRQ delivery, more?

nice-to-have

implement xm mem and xm reg (like the tools/domctrl commands of the same name)

nice-to-have

driver domains (utilizing IOMMU). need to wait for x86/Calgary support first. not supported on 970 DART.

optimization

don't context switch to idle unless all other domains are blocked

optimization

don't save non-volatiles unless necessary

Completed

high

Jan 2007

PowerPC GRUB: SLOF support

HollisBlanchard

med

Fed 2007

make Linux modules work with xencomm

JeroneYoung

med

Jan 2007

upstream integration: build device tree in xc_linux_build instead of Python

RyanHarper

high

Jan 2007

support guest SMP

high

done

Linux: xen console driver in domU

high

done

Linux/Xen: Xen hcalls

high

done

Linux: Xen console driver

high

done

Xen: external interrupt queuing, using the Xen Event Channels

high

done

xencomm: pass userspace pointers to Xen (necessary for domU creation)

high

done

Xen: Debug HDEC and context switching code

high

done

add xen guest console support to udbg and OF code

high

Dec 2006

virtual block IO

high

Dec 2006

virtual network IO

high

Sep 2006

support more than RealModeArea memory

HollisBlanchard

high

Aug 2006

use the Flattened Device Tree in xend for domU loading (replacing the domU Open Firmware client interface)

HollisBlanchard

high

Jul 2006

send arch-generic patch to xen-devel

high

Jun 2006

JS21: Support for SLOF

high

Jun 2006

support domU with Xen event channel delivery -- blocking VIO support

high

Mar 2006

custom domU creation app -- VIO setup not done pending future VIO direction

med

Feb 2007

upstream integration: split start_info into device tree properties. see mail

RyanHarper

med

Mar 2007

replace physical-to-machine translation linked list with an appropriate data structure

RyanHarper

med

Dec 2006

support hypervisor SMP

med

Oct 2006

integrate with xm-test; run regression tests, starting with "does dom0 boot?"

med

Aug 2006

allocate machine-contiguous "real mode areas" for each domain, Xen heap just handles it.

med

Aug 2006

Deal with holes in memory

med

Jul 2006

integrate with libxc-based management stack -- requires some build changes at least, and solving 32/64-bit tools mismatch

med

Jul 2006

get code merged into xen-unstable

med

Jun 2006

JS20: validate Xen on top of SLOF firmware

med

May 2006

JS20: architect H_TAKEOVER hcall (We expect Firmware to use this no Xen)

med

Jun 2006

solve 32/64-bit tools mismatch: GUEST_HANDLE; hcall API needs typedefs

med

done

drive Xen-supporting systemsim release

med

Feb 2006

reimplement xencomm (using scatter/gather lists)

med

Mar 2006

build Open Firmware client interface standalone

low

Sep 2006

make more xm commands work (top, max-mem, etc)

low

Jun 2006

various build and Makefile fixes (e.g. grant_table.c)

low

Mar 2006

port and submit GDB architecture -- Isaku Yamahata < yamahata@valinux.co.jp > did this; HollisBlanchard fixed it up and ported PPC to the new interface

low

Feb 2006

fail loudly when passed a non-xencomm pointer (debugging)

nice-to-have

Sep 2006

when GDB is attached, make printks go through GDB console packets (debugging)

Links


XenPPC (last edited 2010-08-15 13:38:38 by PasiKarkkainen)

 
   
   
Citrix