From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Williamson Subject: Re: Re: [Xen-ia64-devel] [PATCH][QEMU] Add IA64-specific code for new qemu. Date: Wed, 26 Jul 2006 12:34:04 -0600 Message-ID: <1153938844.5467.15.camel@lappy> References: <2FC6B0A5FE3BFEtakebe_akio@jp.fujitsu.com> <3d8eece20607260541x1acce9b3k974f7207d8ed3eeb@mail.gmail.com> <1153934403.5403.12.camel@lappy> Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1153934403.5403.12.camel@lappy> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Christian.Limpach@cl.cam.ac.uk Cc: xen-devel@lists.xensource.com, xen-ia64-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org On Wed, 2006-07-26 at 11:20 -0600, Alex Williamson wrote: > Looks like we still ended up with both copies. Can you please apply > the patch below. Thanks, Testing my quilt-foo based on your previous description, here's a patch that should do the whole thing. Thanks, Alex Signed-off-by: Alex Williamson --- diff -r 21918b22746e tools/ioemu/exec-all.h --- a/tools/ioemu/exec-all.h Wed Jul 26 10:49:32 2006 -0600 +++ b/tools/ioemu/exec-all.h Wed Jul 26 12:30:21 2006 -0600 @@ -391,15 +391,6 @@ static inline int testandset (int *p) } #endif -#ifdef __ia64__ -#include "ia64_intrinsic.h" -static inline int testandset (int *p) -{ - uint32_t o = 0, n = 1; - return (int)cmpxchg_acq(p, o, n); -} -#endif - #ifdef __s390__ static inline int testandset (int *p) { diff -r 21918b22746e tools/ioemu/patches/ioemu-ia64 --- a/tools/ioemu/patches/ioemu-ia64 Wed Jul 26 10:49:32 2006 -0600 +++ b/tools/ioemu/patches/ioemu-ia64 Wed Jul 26 12:30:21 2006 -0600 @@ -1,7 +1,7 @@ Index: ioemu/hw/iommu.c Index: ioemu/hw/iommu.c =================================================================== ---- ioemu.orig/hw/iommu.c 2006-07-14 13:43:45.000000000 +0100 -+++ ioemu/hw/iommu.c 2006-07-26 13:34:50.039997837 +0100 +--- ioemu.orig/hw/iommu.c 2006-07-26 12:17:13.000000000 -0600 ++++ ioemu/hw/iommu.c 2006-07-26 12:17:53.000000000 -0600 @@ -82,7 +82,11 @@ #define IOPTE_VALID 0x00000002 /* IOPTE is valid */ #define IOPTE_WAZ 0x00000001 /* Write as zeros */ @@ -16,8 +16,8 @@ Index: ioemu/hw/iommu.c Index: ioemu/cpu-all.h =================================================================== ---- ioemu.orig/cpu-all.h 2006-07-26 13:33:45.946834283 +0100 -+++ ioemu/cpu-all.h 2006-07-26 13:34:50.038997944 +0100 +--- ioemu.orig/cpu-all.h 2006-07-26 12:17:53.000000000 -0600 ++++ ioemu/cpu-all.h 2006-07-26 12:17:53.000000000 -0600 @@ -835,6 +835,31 @@ :"=m" (*(volatile long *)addr) :"dIr" (nr)); @@ -52,8 +52,8 @@ Index: ioemu/cpu-all.h /* memory API */ Index: ioemu/vl.c =================================================================== ---- ioemu.orig/vl.c 2006-07-26 13:33:45.996828953 +0100 -+++ ioemu/vl.c 2006-07-26 13:34:50.044997304 +0100 +--- ioemu.orig/vl.c 2006-07-26 12:17:53.000000000 -0600 ++++ ioemu/vl.c 2006-07-26 12:26:38.000000000 -0600 @@ -5577,6 +5577,7 @@ exit(-1); } @@ -99,8 +99,8 @@ Index: ioemu/vl.c #ifdef CONFIG_SOFTMMU Index: ioemu/target-i386-dm/exec-dm.c =================================================================== ---- ioemu.orig/target-i386-dm/exec-dm.c 2006-07-26 13:33:45.882841107 +0100 -+++ ioemu/target-i386-dm/exec-dm.c 2006-07-26 13:34:50.040997731 +0100 +--- ioemu.orig/target-i386-dm/exec-dm.c 2006-07-26 12:17:53.000000000 -0600 ++++ ioemu/target-i386-dm/exec-dm.c 2006-07-26 12:17:53.000000000 -0600 @@ -340,6 +340,23 @@ return io_mem_read[io_index >> IO_MEM_SHIFT]; } @@ -137,25 +137,9 @@ Index: ioemu/target-i386-dm/exec-dm.c len -= l; Index: ioemu/exec-all.h =================================================================== ---- ioemu.orig/exec-all.h 2006-07-26 13:33:45.861843346 +0100 -+++ ioemu/exec-all.h 2006-07-26 13:38:30.096491388 +0100 -@@ -391,6 +391,15 @@ - } - #endif - -+#ifdef __ia64__ -+#include "ia64_intrinsic.h" -+static inline int testandset (int *p) -+{ -+ uint32_t o = 0, n = 1; -+ return (int)cmpxchg_acq(p, o, n); -+} -+#endif -+ - #ifdef __s390__ - static inline int testandset (int *p) - { -@@ -462,12 +471,13 @@ +--- ioemu.orig/exec-all.h 2006-07-26 12:17:53.000000000 -0600 ++++ ioemu/exec-all.h 2006-07-26 12:26:59.000000000 -0600 +@@ -462,12 +462,13 @@ } #endif @@ -174,8 +158,8 @@ Index: ioemu/exec-all.h Index: ioemu/target-i386-dm/cpu.h =================================================================== ---- ioemu.orig/target-i386-dm/cpu.h 2006-07-26 13:33:45.882841107 +0100 -+++ ioemu/target-i386-dm/cpu.h 2006-07-26 13:34:50.040997731 +0100 +--- ioemu.orig/target-i386-dm/cpu.h 2006-07-26 12:17:53.000000000 -0600 ++++ ioemu/target-i386-dm/cpu.h 2006-07-26 12:17:53.000000000 -0600 @@ -80,7 +80,11 @@ /* helper2.c */ int main_loop(void); @@ -191,7 +175,7 @@ Index: ioemu/ia64_intrinsic.h Index: ioemu/ia64_intrinsic.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ ioemu/ia64_intrinsic.h 2006-07-26 13:34:50.038997944 +0100 ++++ ioemu/ia64_intrinsic.h 2006-07-26 12:17:53.000000000 -0600 @@ -0,0 +1,276 @@ +#ifndef IA64_INTRINSIC_H +#define IA64_INTRINSIC_H