Hollis Blanchard
2006-Jul-12 22:55 UTC
[Xen-devel] [PATCH 0 of 8] common code changes for PowerPC merge
As requested, here are the broken-out changes to common code for the PowerPC merge. These patches do not depend on each other. -- Hollis Blanchard IBM Linux Technology Center _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Hollis Blanchard
2006-Jul-12 22:55 UTC
[Xen-devel] [PATCH 1 of 8] [powerpc] add PowerPC files to .hgignore
# HG changeset patch # User Hollis Blanchard <hollisb@us.ibm.com> # Date 1152744165 18000 # Node ID f1fa1cc62c4c821f15fb530db8f5bb291bd77a4c # Parent a1c2cede77c78d2af99088d7dece8f74f2a27260 [powerpc] add PowerPC files to .hgignore Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com> diff -r a1c2cede77c7 -r f1fa1cc62c4c .hgignore --- a/.hgignore Mon Jul 10 15:01:49 2006 +0100 +++ b/.hgignore Wed Jul 12 17:42:45 2006 -0500 @@ -203,3 +203,7 @@ ^xen/xen$ ^xen/xen-syms$ ^xen/xen\..*$ +^xen/arch/ppc/dom0\.bin$ +^xen/arch/ppc/asm-offsets\.s$ +^xen/arch/ppc/firmware +^xen/arch/ppc/firmware_image _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Hollis Blanchard
2006-Jul-12 22:55 UTC
[Xen-devel] [PATCH 2 of 8] [powerpc] add arch-powerpc.h to xen.h
# HG changeset patch # User Hollis Blanchard <hollisb@us.ibm.com> # Date 1152744165 18000 # Node ID f4654c1450a8c56bf9f439f09026c093cf3cb7d9 # Parent f1fa1cc62c4c821f15fb530db8f5bb291bd77a4c [powerpc] add arch-powerpc.h to xen.h Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com> diff -r f1fa1cc62c4c -r f4654c1450a8 xen/include/public/xen.h --- a/xen/include/public/xen.h Wed Jul 12 17:42:45 2006 -0500 +++ b/xen/include/public/xen.h Wed Jul 12 17:42:45 2006 -0500 @@ -15,6 +15,8 @@ #include "arch-x86_64.h" #elif defined(__ia64__) #include "arch-ia64.h" +#elif defined(__powerpc__) +#include "arch-powerpc.h" #else #error "Unsupported architecture" #endif _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Hollis Blanchard
2006-Jul-12 22:55 UTC
[Xen-devel] [PATCH 3 of 8] [powerpc] add PowerPC support to Makefiles
# HG changeset patch # User Hollis Blanchard <hollisb@us.ibm.com> # Date 1152744165 18000 # Node ID 49de99129bc4d762bc71b5559d0102c5691aa61e # Parent f4654c1450a8c56bf9f439f09026c093cf3cb7d9 [powerpc] add PowerPC support to Makefiles Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com> diff -r f4654c1450a8 -r 49de99129bc4 Config.mk --- a/Config.mk Wed Jul 12 17:42:45 2006 -0500 +++ b/Config.mk Wed Jul 12 17:42:45 2006 -0500 @@ -3,8 +3,8 @@ # A debug build of Xen and tools? debug ?= n -# Currently supported architectures: x86_32, x86_64 -XEN_COMPILE_ARCH ?= $(shell uname -m | sed -e s/i.86/x86_32/) +XEN_COMPILE_ARCH ?= $(shell uname -m | sed -e s/i.86/x86_32/ \ + -e s/ppc/powerpc/) XEN_TARGET_ARCH ?= $(XEN_COMPILE_ARCH) XEN_TARGET_X86_PAE ?= n diff -r f4654c1450a8 -r 49de99129bc4 xen/Rules.mk --- a/xen/Rules.mk Wed Jul 12 17:42:45 2006 -0500 +++ b/xen/Rules.mk Wed Jul 12 17:42:45 2006 -0500 @@ -23,8 +23,10 @@ include $(XEN_ROOT)/Config.mk # Set ARCH/SUBARCH appropriately. override COMPILE_SUBARCH := $(XEN_COMPILE_ARCH) override TARGET_SUBARCH := $(XEN_TARGET_ARCH) -override COMPILE_ARCH := $(patsubst x86%,x86,$(XEN_COMPILE_ARCH)) -override TARGET_ARCH := $(patsubst x86%,x86,$(XEN_TARGET_ARCH)) +override COMPILE_ARCH := $(shell echo $(XEN_COMPILE_ARCH) | \ + sed -e ''s/\(x86\|powerpc\).*/\1/'') +override TARGET_ARCH := $(shell echo $(XEN_TARGET_ARCH) | \ + sed -e ''s/\(x86\|powerpc\).*/\1/'') TARGET := $(BASEDIR)/xen _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Hollis Blanchard
2006-Jul-12 22:55 UTC
[Xen-devel] [PATCH 4 of 8] [powerpc] [xend] PPC doesn''t support ballooning yet
# HG changeset patch # User Hollis Blanchard <hollisb@us.ibm.com> # Date 1152744165 18000 # Node ID 5a11149db4c2f30cd81689a5eefc370c7fc4c410 # Parent 49de99129bc4d762bc71b5559d0102c5691aa61e [powerpc] [xend] PPC doesn''t support ballooning yet Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com> diff -r 49de99129bc4 -r 5a11149db4c2 tools/python/xen/xend/XendDomainInfo.py --- a/tools/python/xen/xend/XendDomainInfo.py Wed Jul 12 17:42:45 2006 -0500 +++ b/tools/python/xen/xend/XendDomainInfo.py Wed Jul 12 17:42:45 2006 -0500 @@ -1282,8 +1282,9 @@ class XendDomainInfo: xc.domain_setmaxmem(self.domid, m) init_reservation = self.info[''memory''] * 1024 - if os.uname()[4] == ''ia64'': - # Workaround until ia64 properly supports ballooning. + if os.uname()[4] in (''ia64'', ''ppc64''): + # Workaround for architectures that don''t yet support + # ballooning. init_reservation = m xc.domain_memory_increase_reservation(self.domid, init_reservation, _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Hollis Blanchard
2006-Jul-12 22:55 UTC
[Xen-devel] [PATCH 5 of 8] [powerpc] print page->count_info as unsigned long
# HG changeset patch # User Hollis Blanchard <hollisb@us.ibm.com> # Date 1152744166 18000 # Node ID 9157cbc1793231f2c95a4bdbba4a8e70681b1c6d # Parent 5a11149db4c2f30cd81689a5eefc370c7fc4c410 [powerpc] print page->count_info as unsigned long Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com> diff -r 5a11149db4c2 -r 9157cbc17932 xen/common/memory.c --- a/xen/common/memory.c Wed Jul 12 17:42:45 2006 -0500 +++ b/xen/common/memory.c Wed Jul 12 17:42:46 2006 -0500 @@ -174,9 +174,9 @@ guest_remove_page( { /* We''ll make this a guest-visible error in future, so take heed! */ DPRINTK("Dom%d freeing in-use page %lx (pseudophys %lx):" - " count=%x type=%lx\n", + " count=%lx type=%lx\n", d->domain_id, mfn, get_gpfn_from_mfn(mfn), - page->count_info, page->u.inuse.type_info); + (unsigned long)page->count_info, page->u.inuse.type_info); } guest_physmap_remove_page(d, gmfn, mfn); _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Hollis Blanchard
2006-Jul-12 22:55 UTC
[Xen-devel] [PATCH 6 of 8] [powerpc] support additional interrupt controller types in xen/arch/x86/irq.c
# HG changeset patch # User Hollis Blanchard <hollisb@us.ibm.com> # Date 1152744166 18000 # Node ID d3533a195a15902ad8b7bd0b9118118fae18e79c # Parent 9157cbc1793231f2c95a4bdbba4a8e70681b1c6d [powerpc] support additional interrupt controller types in xen/arch/x86/irq.c PowerPC #includes xen/arch/x86/irq.c, so we need to support MPIC and XT-PIC interrupt controllers here. Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com> diff -r 9157cbc17932 -r d3533a195a15 xen/arch/x86/irq.c --- a/xen/arch/x86/irq.c Wed Jul 12 17:42:46 2006 -0500 +++ b/xen/arch/x86/irq.c Wed Jul 12 17:42:46 2006 -0500 @@ -397,6 +397,20 @@ int pirq_acktype(int irq) */ if ( !strcmp(desc->handler->typename, "IO-APIC-level") ) return ioapic_ack_new ? ACKTYPE_EOI : ACKTYPE_UNMASK; + + /* Legacy PIC interrupts can be acknowledged from any CPU. */ + if ( !strcmp(desc->handler->typename, "XT-PIC") ) + return ACKTYPE_UNMASK; + + if ( strstr(desc->handler->typename, "MPIC") ) { + if (desc->status & IRQ_LEVEL) { + if (desc->status & IRQ_PER_CPU) + return ACKTYPE_EOI; + else + return ACKTYPE_UNMASK; + } + return ACKTYPE_NONE; + } BUG(); return 0; diff -r 9157cbc17932 -r d3533a195a15 xen/include/xen/irq.h --- a/xen/include/xen/irq.h Wed Jul 12 17:42:46 2006 -0500 +++ b/xen/include/xen/irq.h Wed Jul 12 17:42:46 2006 -0500 @@ -22,6 +22,7 @@ struct irqaction #define IRQ_PENDING 4 /* IRQ pending - replay on enable */ #define IRQ_REPLAY 8 /* IRQ has been replayed but not acked yet */ #define IRQ_GUEST 16 /* IRQ is handled by guest OS(es) */ +#define IRQ_LEVEL 64 /* IRQ level triggered */ #define IRQ_PER_CPU 256 /* IRQ is per CPU */ /* _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Hollis Blanchard
2006-Jul-12 22:55 UTC
[Xen-devel] [PATCH 7 of 8] [powerpc] add PowerPC support to libxc
# HG changeset patch # User Hollis Blanchard <hollisb@us.ibm.com> # Date 1152744261 18000 # Node ID 8400d02096faf9fd566c9ea73a57811ac5d34acd # Parent d3533a195a15902ad8b7bd0b9118118fae18e79c [powerpc] add PowerPC support to libxc Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com> diff -r d3533a195a15 -r 8400d02096fa tools/libxc/Makefile --- a/tools/libxc/Makefile Wed Jul 12 17:42:46 2006 -0500 +++ b/tools/libxc/Makefile Wed Jul 12 17:44:21 2006 -0500 @@ -26,11 +26,13 @@ CTRL_SRCS-$(CONFIG_Linux) += xc_linux.c CTRL_SRCS-$(CONFIG_Linux) += xc_linux.c GUEST_SRCS-y :-GUEST_SRCS-y += xc_linux_build.c GUEST_SRCS-y += xc_load_bin.c GUEST_SRCS-y += xc_load_elf.c GUEST_SRCS-y += xg_private.c -GUEST_SRCS-$(CONFIG_IA64) += xc_ia64_stubs.c +GUEST_SRCS-$(CONFIG_POWERPC) += xc_ppc_linux_build.c +GUEST_SRCS-$(CONFIG_X86) += xc_linux_build.c +GUEST_SRCS-$(CONFIG_IA64) += xc_ia64_stubs.c xc_linux_build.c +GUEST_SRCS-$(CONFIG_PLAN9) += xc_load_aout9.c GUEST_SRCS-$(CONFIG_MIGRATE) += xc_linux_restore.c xc_linux_save.c GUEST_SRCS-$(CONFIG_HVM) += xc_hvm_build.c diff -r d3533a195a15 -r 8400d02096fa tools/libxc/xc_load_elf.c --- a/tools/libxc/xc_load_elf.c Wed Jul 12 17:42:46 2006 -0500 +++ b/tools/libxc/xc_load_elf.c Wed Jul 12 17:44:21 2006 -0500 @@ -38,6 +38,10 @@ loadelfsymtab( #define ELFCLASS ELFCLASS64 #define ELFDATA ELFDATA2LSB #define ELFMACHINE EM_X86_64 +#elif defined(__powerpc__) +#define ELFCLASS ELFCLASS64 +#define ELFDATA ELFDATA2MSB +#define ELFMACHINE EM_PPC64 #endif int probe_elf(const char *image, diff -r d3533a195a15 -r 8400d02096fa tools/libxc/xenctrl.h --- a/tools/libxc/xenctrl.h Wed Jul 12 17:42:46 2006 -0500 +++ b/tools/libxc/xenctrl.h Wed Jul 12 17:44:21 2006 -0500 @@ -47,6 +47,11 @@ #define mb() #define rmb() #define wmb() +#elif defined(__powerpc__) +/* XXX loosen these up later */ +#define mb() __asm__ __volatile__ ("sync" : : : "memory") +#define rmb() __asm__ __volatile__ ("sync" : : : "memory") /* lwsync? */ +#define wmb() __asm__ __volatile__ ("sync" : : : "memory") /* eieio? */ #else #error "Define barriers" #endif _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Hollis Blanchard
2006-Jul-12 22:55 UTC
[Xen-devel] [PATCH 8 of 8] [powerpc] add xencomm header, which is shared with Linux
# HG changeset patch # User Hollis Blanchard <hollisb@us.ibm.com> # Date 1152744412 18000 # Node ID d9aba25e6e7d3a5811850c73b98e07d67187928a # Parent 8400d02096faf9fd566c9ea73a57811ac5d34acd [powerpc] add xencomm header, which is shared with Linux Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Tristan Gingold
2006-Jul-13 07:03 UTC
Re: [Xen-devel] [PATCH 7 of 8] [powerpc] add PowerPC support to libxc
Le Jeudi 13 Juillet 2006 00:55, Hollis Blanchard a écrit : [...] On ia64, we have created a tools/libxc/ia64 directory. This is because we have a few ia64 specific files (at least 4). This hasn''t been merged yet but the idea seems to have already been discussed and accepted. Tristan. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel