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

RE: [Xen-ia64-devel] xen on hp rx2600


  • To: "Griffis, Aron" <aron@xxxxxx>
  • From: "Magenheimer, Dan (HP Labs Fort Collins)" <dan.magenheimer@xxxxxx>
  • Date: Thu, 10 Nov 2005 13:01:05 -0800
  • Cc: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
  • Delivery-date: Thu, 10 Nov 2005 21:00:56 +0000
  • List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
  • Thread-index: AcXmOTANE0Qpf7RnQEex9C6mZLs0WQAAJY8w
  • Thread-topic: [Xen-ia64-devel] xen on hp rx2600

A patch for this was posted (by Alex) yesterday but
I haven't committed it yet. 

> -----Original Message-----
> From: Griffis, Aron 
> Sent: Thursday, November 10, 2005 1:56 PM
> To: Magenheimer, Dan (HP Labs Fort Collins)
> Cc: Williamson, Alex (Linux Kernel Dev); 
> xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
> Subject: Re: [Xen-ia64-devel] xen on hp rx2600
> 
> Magenheimer, Dan (HP Labs Fort Collins) wrote:        [Wed 
> Nov 09 2005, 05:04:42PM EST]
> > It's possible that the problem will go away if you turn
> > on CONFIG_SMP in Xen (xen/include/asm-ia64/config.h).
> 
> I made this change:
> 
> diff -r 7d81d6b8c302 xen/include/asm-ia64/config.h
> --- a/xen/include/asm-ia64/config.h     Tue Nov  8 18:15:55 2005
> +++ b/xen/include/asm-ia64/config.h     Thu Nov 10 12:01:29 2005
> @@ -24,7 +24,7 @@
>  #define CONFIG_EFI_PCDP
>  #define CONFIG_SERIAL_SGI_L1_CONSOLE
> 
> -#undef CONFIG_XEN_SMP
> +#define CONFIG_XEN_SMP 1
> 
>  #ifdef CONFIG_XEN_SMP
>  #define CONFIG_SMP 1
> 
> Running make at the top level failed:
> 
> gcc -nostdinc -fno-builtin -fno-common -fno-strict-aliasing 
> -O2 -iwithprefix include -Wall -fomit-frame-pointer 
> -I/home/agriffis/xen/xen-ia64-unstable.hg/xen/include 
> -D__KERNEL__ 
> -I/home/agriffis/xen/xen-ia64-unstable.hg/xen/include/asm-ia64
>  
> -I/home/agriffis/xen/xen-ia64-unstable.hg/xen/include/asm-ia64
> /linux 
> -I/home/agriffis/xen/xen-ia64-unstable.hg/xen/include/asm-ia64
> /linux 
> -I/home/agriffis/xen/xen-ia64-unstable.hg/xen/include/asm-ia64
> /linux-xen 
> -I/home/agriffis/xen/xen-ia64-unstable.hg/xen/include/asm-ia64
> /linux-null 
> -I/home/agriffis/xen/xen-ia64-unstable.hg/xen/arch/ia64/linux 
> -I/home/agriffis/xen/xen-ia64-unstable.hg/xen/arch/ia64/linux-
> xen -Wno-pointer-arith -Wredundant-decls -DIA64 -DXEN 
> -DLINUX_2_6 -ffixed-r13 -mfixed-range=f12-f15,f32-f127 -w -g 
> -DNDEBUG -c linux-xen/sal.c -o sal.o
> In file included from 
> /home/agriffis/xen/xen-ia64-unstable.hg/xen/include/xen/bitmap.h:7,
>                  from 
> /home/agriffis/xen/xen-ia64-unstable.hg/xen/include/linux/cpum
> ask.h:77,
>                  from 
> /home/agriffis/xen/xen-ia64-unstable.hg/xen/include/asm-ia64/l
> inux/asm/smp.h:17,
>                  from 
> /home/agriffis/xen/xen-ia64-unstable.hg/xen/include/linux/smp.h:13,
>                  from linux-xen/sal.c:21:
> /home/agriffis/xen/xen-ia64-unstable.hg/xen/include/xen/lib.h:
> 55: error: conflicting types for 'sprintf'
> /home/agriffis/xen/xen-ia64-unstable.hg/xen/include/xen/lib.h:
> 55: note: a parameter list with an ellipsis can't match an 
> empty parameter name list declaration
> /home/agriffis/xen/xen-ia64-unstable.hg/xen/include/asm-ia64/l
> inux/efi.h:283: error: previous implicit declaration of 
> 'sprintf' was here
> make[2]: *** [sal.o] Error 1
> make[2]: Leaving directory 
> `/home/agriffis/xen/xen-ia64-unstable.hg/xen/arch/ia64'
> make[1]: *** [/home/agriffis/xen/xen-ia64-unstable.hg/xen/xen] Error 2
> make[1]: Leaving directory 
> `/home/agriffis/xen/xen-ia64-unstable.hg/xen'
> make: *** [install-xen] Error 2
> 
> In ref-linux-2.6.12, sprintf() is declared by linux/kernel.h, but
> xen's version of linux/kernel.h is stripped down.  In xen, sprintf()
> is declared instead by xen/lib.h
> 
> When sal.c is built without SMP, sprintf() is only implicitly declared
> by its usage in efi.h.  When sal.c is built with SMP, more headers get
> pulled in that eventually lead to xen/lib.h, so the implicit
> declaration conflicts with the later explicit declaration.
> 
> How is this usually solved in xen?  Ideally I think you'd like to
> #include xen/lib.h explicitly in efi.h so that sprintf() is properly
> defined.  However efi.h currently has no changes between
> ref-linux-2.6.12 and linux-2.6.12-xen0, so maybe there's a better
> approach...
> 
> -- 
> Aron Griffis
> hp Open Source & Linux Organization R&D
> 
> 

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


 


Rackspace

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