All of lore.kernel.org
 help / color / mirror / Atom feed
* building current xen/ia64
@ 2005-02-11 15:29 Greg Edwards
  0 siblings, 0 replies; 2+ messages in thread
From: Greg Edwards @ 2005-02-11 15:29 UTC (permalink / raw)
  To: dan.magenheimer; +Cc: xen-devel

Dan,

Does ftp://ftp.hpl.hp.com/pub/xen-ia64/ still contain the most current
xen/ia64 code?  It's getting the following compile error on an ia64 SLES
box (gcc-3.3.3):

make -C arch/ia64
make[1]: Entering directory `/data/lwork/attica2/edwardsg/xen-ia64/xen-2.0/xen/arch/ia64'
cc -nostdinc -fno-builtin -fno-common -fno-strict-aliasing -O2 -iwithprefix include -Wall -DMONITOR_BASE=0xFC500000 -fomit-frame-pointer -I/data/lwork/attica2/edwardsg/xen-ia64/xen-2.0/xen/include -D__KERNEL__ -I/data/lwork/attica2/edwardsg/xen-ia64/xen-2.0/xen/include/asm-ia64 -Wno-pointer-arith -Wredundant-decls -DIA64 -DXEN -DLINUX_2_6 -ffixed-r13 -mfixed-range=f12-f15,f32-f127 -w -g -DNDEBUG -c vcpu.c -o vcpu.o
vcpu.c: In function `vcpu_get_ipsr_int_state':
vcpu.c:281: error: union has no member named `be'
vcpu.c:281: error: union has no member named `be'
vcpu.c:282: error: union has no member named `pp'
vcpu.c:282: error: union has no member named `pp'
vcpu.c:283: error: union has no member named `ic'
vcpu.c:284: error: union has no member named `i'
vcpu.c:285: error: union has no member named `bn'
vcpu.c:286: error: union has no member named `dt'
vcpu.c:286: error: union has no member named `it'
vcpu.c:286: error: union has no member named `rt'
vcpu.c:287: error: union has no member named `cpl'
vcpu.c:287: error: union has no member named `cpl'
vcpu.c: In function `vcpu_rfi':
vcpu.c:1003: error: union has no member named `cpl'
vcpu.c:1003: error: union has no member named `cpl'
vcpu.c:1004: error: union has no member named `i'
vcpu.c:1005: error: union has no member named `i'
vcpu.c:1006: error: union has no member named `ic'
vcpu.c:1007: error: union has no member named `dt'
vcpu.c:1007: error: union has no member named `rt'
vcpu.c:1007: error: union has no member named `it'
vcpu.c:1009: error: union has no member named `ic'
vcpu.c:1009: error: union has no member named `i'
vcpu.c:1010: error: union has no member named `dt'
vcpu.c:1010: error: union has no member named `rt'
vcpu.c:1010: error: union has no member named `it'
vcpu.c:1011: error: union has no member named `bn'
vcpu.c:1013: error: union has no member named `be'
make[1]: *** [vcpu.o] Error 1

I ran build-xenia64-xen.2.0.1 for setting up and patching the tree, but
perhaps I missed a step.

I switched PSR to typedef struct ia64_psr as a quick sanity check, then
if barfed about the psr.i64 assignment (i64 isn't in struct ia64_psr).
So I strongly suspect I'm missing a patch, or the tree wasn't patched
correctly.  A kick in the right direction would be appreciated.

Greg


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click

^ permalink raw reply	[flat|nested] 2+ messages in thread

* RE: building current xen/ia64
@ 2005-02-11 16:35 Magenheimer, Dan (HP Labs Fort Collins)
  0 siblings, 0 replies; 2+ messages in thread
From: Magenheimer, Dan (HP Labs Fort Collins) @ 2005-02-11 16:35 UTC (permalink / raw)
  To: Greg Edwards; +Cc: xen-devel, Eranian, Stephane

[-- Attachment #1: Type: text/plain, Size: 3355 bytes --]

Hi Greg --

This has been seen on Debian also.  I suspect it is due
to a newer gcc but haven't tracked down the details.
The attached patch (thanks to Stephane Eranian!) should
fix it though.

I am working with the Xen team on a Xen/ia64 update which
will be checked into -unstable and that update already includes
this patch.

Thanks,
Dan

> -----Original Message-----
> From: Greg Edwards [mailto:edwardsg@sgi.com] 
> Sent: Friday, February 11, 2005 8:30 AM
> To: Magenheimer, Dan (HP Labs Fort Collins)
> Cc: xen-devel@lists.sourceforge.net
> Subject: building current xen/ia64
> 
> Dan,
> 
> Does ftp://ftp.hpl.hp.com/pub/xen-ia64/ still contain the most current
> xen/ia64 code?  It's getting the following compile error on 
> an ia64 SLES
> box (gcc-3.3.3):
> 
> make -C arch/ia64
> make[1]: Entering directory 
> `/data/lwork/attica2/edwardsg/xen-ia64/xen-2.0/xen/arch/ia64'
> cc -nostdinc -fno-builtin -fno-common -fno-strict-aliasing 
> -O2 -iwithprefix include -Wall -DMONITOR_BASE=0xFC500000 
> -fomit-frame-pointer 
> -I/data/lwork/attica2/edwardsg/xen-ia64/xen-2.0/xen/include 
> -D__KERNEL__ 
> -I/data/lwork/attica2/edwardsg/xen-ia64/xen-2.0/xen/include/as
> m-ia64 -Wno-pointer-arith -Wredundant-decls -DIA64 -DXEN 
> -DLINUX_2_6 -ffixed-r13 -mfixed-range=f12-f15,f32-f127 -w -g 
> -DNDEBUG -c vcpu.c -o vcpu.o
> vcpu.c: In function `vcpu_get_ipsr_int_state':
> vcpu.c:281: error: union has no member named `be'
> vcpu.c:281: error: union has no member named `be'
> vcpu.c:282: error: union has no member named `pp'
> vcpu.c:282: error: union has no member named `pp'
> vcpu.c:283: error: union has no member named `ic'
> vcpu.c:284: error: union has no member named `i'
> vcpu.c:285: error: union has no member named `bn'
> vcpu.c:286: error: union has no member named `dt'
> vcpu.c:286: error: union has no member named `it'
> vcpu.c:286: error: union has no member named `rt'
> vcpu.c:287: error: union has no member named `cpl'
> vcpu.c:287: error: union has no member named `cpl'
> vcpu.c: In function `vcpu_rfi':
> vcpu.c:1003: error: union has no member named `cpl'
> vcpu.c:1003: error: union has no member named `cpl'
> vcpu.c:1004: error: union has no member named `i'
> vcpu.c:1005: error: union has no member named `i'
> vcpu.c:1006: error: union has no member named `ic'
> vcpu.c:1007: error: union has no member named `dt'
> vcpu.c:1007: error: union has no member named `rt'
> vcpu.c:1007: error: union has no member named `it'
> vcpu.c:1009: error: union has no member named `ic'
> vcpu.c:1009: error: union has no member named `i'
> vcpu.c:1010: error: union has no member named `dt'
> vcpu.c:1010: error: union has no member named `rt'
> vcpu.c:1010: error: union has no member named `it'
> vcpu.c:1011: error: union has no member named `bn'
> vcpu.c:1013: error: union has no member named `be'
> make[1]: *** [vcpu.o] Error 1
> 
> I ran build-xenia64-xen.2.0.1 for setting up and patching the 
> tree, but
> perhaps I missed a step.
> 
> I switched PSR to typedef struct ia64_psr as a quick sanity 
> check, then
> if barfed about the psr.i64 assignment (i64 isn't in struct ia64_psr).
> So I strongly suspect I'm missing a patch, or the tree wasn't patched
> correctly.  A kick in the right direction would be appreciated.
> 
> Greg
> 

[-- Attachment #2: xendiff --]
[-- Type: application/octet-stream, Size: 2396 bytes --]

--- xen-2.0.orig/xen-2.0/xen/arch/ia64/vcpu.c	2004-11-22 13:28:31.000000000 -0800
+++ xen-2.0/xen/arch/ia64/vcpu.c	2005-01-24 14:50:47.000000000 -0800
@@ -15,7 +15,7 @@
 #include <asm/delay.h>
 
 typedef	union {
-	struct ia64_psr;
+	struct ia64_psr ia64_psr;
 	unsigned long i64;
 } PSR;
 
@@ -278,13 +278,13 @@
 	
 	//printf("*** vcpu_get_ipsr_int_state (0x%016lx)...",prevpsr);
 	psr.i64 = prevpsr;
-	psr.be = 0; if (dcr & IA64_DCR_BE) psr.be = 1;
-	psr.pp = 0; if (dcr & IA64_DCR_PP) psr.pp = 1;
-	psr.ic = PSCB(vcpu).interrupt_collection_enabled;
-	psr.i = PSCB(vcpu).interrupt_delivery_enabled;
-	psr.bn = PSCB(vcpu).banknum;
-	psr.dt = 1; psr.it = 1; psr.rt = 1;
-	if (psr.cpl == 2) psr.cpl = 0; // !!!! fool domain
+	psr.ia64_psr.be = 0; if (dcr & IA64_DCR_BE) psr.ia64_psr.be = 1;
+	psr.ia64_psr.pp = 0; if (dcr & IA64_DCR_PP) psr.ia64_psr.pp = 1;
+	psr.ia64_psr.ic = PSCB(vcpu).interrupt_collection_enabled;
+	psr.ia64_psr.i = PSCB(vcpu).interrupt_delivery_enabled;
+	psr.ia64_psr.bn = PSCB(vcpu).banknum;
+	psr.ia64_psr.dt = 1; psr.ia64_psr.it = 1; psr.ia64_psr.rt = 1;
+	if (psr.ia64_psr.cpl == 2) psr.ia64_psr.cpl = 0; // !!!! fool domain
 	// psr.pk = 1;
 	//printf("returns 0x%016lx...",psr.i64);
 	return psr.i64;
@@ -1000,17 +1000,17 @@
 	extern void dorfirfi(void);
 
 	psr.i64 = PSCB(vcpu).ipsr;
-	if (psr.cpl < 3) psr.cpl = 2;
-	if (psr.i) PSCB(vcpu).interrupt_delivery_enabled = 1;
-	int_enable = psr.i;
-	if (psr.ic)  PSCB(vcpu).interrupt_collection_enabled = 1;
-	if (psr.dt && psr.rt && psr.it) vcpu_set_metaphysical_mode(vcpu,FALSE);
+	if (psr.ia64_psr.cpl < 3) psr.ia64_psr.cpl = 2;
+	if (psr.ia64_psr.i) PSCB(vcpu).interrupt_delivery_enabled = 1;
+	int_enable = psr.ia64_psr.i;
+	if (psr.ia64_psr.ic)  PSCB(vcpu).interrupt_collection_enabled = 1;
+	if (psr.ia64_psr.dt && psr.ia64_psr.rt && psr.ia64_psr.it) vcpu_set_metaphysical_mode(vcpu,FALSE);
 	else vcpu_set_metaphysical_mode(vcpu,TRUE);
-	psr.ic = 1; psr.i = 1;
-	psr.dt = 1; psr.rt = 1; psr.it = 1;
-	psr.bn = 1;
+	psr.ia64_psr.ic = 1; psr.ia64_psr.i = 1;
+	psr.ia64_psr.dt = 1; psr.ia64_psr.rt = 1; psr.ia64_psr.it = 1;
+	psr.ia64_psr.bn = 1;
 	//psr.pk = 1;  // checking pkeys shouldn't be a problem but seems broken
-	if (psr.be) {
+	if (psr.ia64_psr.be) {
 		printf("*** DOMAIN TRYING TO TURN ON BIG-ENDIAN!!!\n");
 		return (IA64_ILLOP_FAULT);
 	}

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2005-02-11 16:35 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-02-11 15:29 building current xen/ia64 Greg Edwards
  -- strict thread matches above, loose matches on Subject: below --
2005-02-11 16:35 Magenheimer, Dan (HP Labs Fort Collins)

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.