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

Re: [Xen-devel] [PATCH] fix compilation error on ia64.



Thanks. Additionally, it should be quite easy for you to shrink your
page_info a bit by making use of the new page_list_head definitions.

 -- Keir

On 03/02/2009 08:07, "Isaku Yamahata" <yamahata@xxxxxxxxxxxxx> wrote:

> fix compilation error on ia64.
> 
> This patch fixes the following compilation error.
> Since struct page_list_head is defined in mm.h, sched.h needs mm.h.
> Other circular inclusions are sorted out.
> 
>> In file included from xen/include/asm-ia64/linux-xen/asm/smp.h:50,
>>                  from xen/include/linux/smp.h:5,
>>                  from xen/include/asm-ia64/linux/topology.h:33,
>>                  from xen/include/asm-ia64/linux-xen/linux/gfp.h:6,
>>                  from xen/include/asm/mm.h:11,
>>                  from xen/include/xen/mm.h:90,
>>                  from viosapic.c:35:
>> xen/include/xen/sched.h:174: error: field page_list has incomplete type
>> xen/include/xen/sched.h:175: error: field xenpage_list has incomplete type
> 
> Signed-off-by: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
> 
> diff --git a/xen/drivers/passthrough/vtd/dmar.c
> b/xen/drivers/passthrough/vtd/dmar.c
> --- a/xen/drivers/passthrough/vtd/dmar.c
> +++ b/xen/drivers/passthrough/vtd/dmar.c
> @@ -21,6 +21,7 @@
>  
>  #include <xen/init.h>
>  #include <xen/bitmap.h>
> +#include <xen/errno.h>
>  #include <xen/kernel.h>
>  #include <xen/acpi.h>
>  #include <xen/mm.h>
> diff --git a/xen/include/asm-ia64/hardirq.h b/xen/include/asm-ia64/hardirq.h
> --- a/xen/include/asm-ia64/hardirq.h
> +++ b/xen/include/asm-ia64/hardirq.h
> @@ -4,6 +4,7 @@
>  #define __ARCH_IRQ_STAT 1
>  #define HARDIRQ_BITS 14
>  #include <linux/hardirq.h>
> +#include <xen/sched.h>
>  
>  #define local_softirq_pending()  (local_cpu_data->softirq_pending)
>  
> diff --git a/xen/include/asm-ia64/linux-xen/asm/smp.h
> b/xen/include/asm-ia64/linux-xen/asm/smp.h
> --- a/xen/include/asm-ia64/linux-xen/asm/smp.h
> +++ b/xen/include/asm-ia64/linux-xen/asm/smp.h
> @@ -47,7 +47,6 @@ ia64_get_lid (void)
>  #define SMP_IPI_REDIRECTION (1 << 1)
>  
>  #ifdef XEN
> -#include <xen/sched.h>
>  #define raw_smp_processor_id() (current->processor)
>  #else
>  #define raw_smp_processor_id() (current_thread_info()->cpu)
> diff --git a/xen/include/asm-ia64/mm.h b/xen/include/asm-ia64/mm.h
> --- a/xen/include/asm-ia64/mm.h
> +++ b/xen/include/asm-ia64/mm.h
> @@ -13,7 +13,6 @@
>  #include <xen/list.h>
>  #include <xen/spinlock.h>
>  #include <xen/perfc.h>
> -#include <xen/sched.h>
>  
>  #include <asm/processor.h>
>  #include <asm/atomic.h>
> diff --git a/xen/include/asm-ia64/tlbflush.h b/xen/include/asm-ia64/tlbflush.h
> --- a/xen/include/asm-ia64/tlbflush.h
> +++ b/xen/include/asm-ia64/tlbflush.h
> @@ -1,7 +1,8 @@
>  #ifndef __FLUSHTLB_H__
>  #define __FLUSHTLB_H__
>  
> -#include <xen/sched.h>
> +struct vcpu;
> +struct domain;
>  
>  /* TLB flushes can be either local (current vcpu only) or domain wide (on
>     all vcpus).
> diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h
> --- a/xen/include/xen/sched.h
> +++ b/xen/include/xen/sched.h
> @@ -19,6 +19,7 @@
>  #include <xen/xenoprof.h>
>  #include <xen/rcupdate.h>
>  #include <xen/irq.h>
> +#include <xen/mm.h>
>  
>  #ifdef CONFIG_COMPAT
>  #include <compat/vcpu.h>
> 



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


 


Rackspace

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