[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] [IA64] Fix ia64 build for 22396:c1b7aae86cf5
Hi, The header xen/include/xen/wait.h conflicts with xen/include/asm-ia64/linux/wait.h on ia64. This patch fixes it. # xen/include/xen/wait.h introduced by 22396:c1b7aae86cf5. Signed-off-by: KUWAMURA Shin'ya <kuwa@xxxxxxxxxxxxxx> -- KUWAMURA Shin'ya # HG changeset patch # User KUWAMURA Shin'ya <kuwa@xxxxxxxxxxxxxx> # Date 1309935051 -32400 # Node ID cc8b5b62702cb857760728781f08059e53ea0a4e # Parent 7e4404a8f5f9bc111a80f15a2bce35378b39f2f1 [IA64] Fix ia64 build for 22396:c1b7aae86cf5 22396:c1b7aae86cf5 introduced xen/include/xen/wait.h, but it conflicts with xen/include/asm-ia64/linux/wait.h on ia64. Signed-off-by: KUWAMURA Shin'ya <kuwa@xxxxxxxxxxxxxx> diff -r 7e4404a8f5f9 -r cc8b5b62702c xen/include/asm-ia64/linux-xen/linux/README.origin --- a/xen/include/asm-ia64/linux-xen/linux/README.origin Mon Jul 04 07:57:32 2011 +0100 +++ b/xen/include/asm-ia64/linux-xen/linux/README.origin Wed Jul 06 15:50:51 2011 +0900 @@ -16,6 +16,7 @@ oprofile.h -> linux/include/linux/oprof pci.h -> linux/include/linux/pci.h kobject.h -> linux/include/linux/kobject.h device.h -> linux/include/linux/device.h +completion.h -> linux/include/linux/completion.h # The files below are from Linux-2.6.21 cpu.h -> linux/include/linux/cpu.h diff -r 7e4404a8f5f9 -r cc8b5b62702c xen/include/asm-ia64/linux-xen/linux/completion.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/xen/include/asm-ia64/linux-xen/linux/completion.h Wed Jul 06 15:50:51 2011 +0900 @@ -0,0 +1,61 @@ +#ifndef __LINUX_COMPLETION_H +#define __LINUX_COMPLETION_H + +/* + * (C) Copyright 2001 Linus Torvalds + * + * Atomic wait-for-completion handler data structures. + * See kernel/sched.c for details. + */ + +#include <linux/wait.h> + +struct completion { + unsigned int done; +#ifndef XEN + wait_queue_head_t wait; +#endif +}; + +#define COMPLETION_INITIALIZER(work) \ + { 0, __WAIT_QUEUE_HEAD_INITIALIZER((work).wait) } + +#define COMPLETION_INITIALIZER_ONSTACK(work) \ + ({ init_completion(&work); work; }) + +#define DECLARE_COMPLETION(work) \ + struct completion work = COMPLETION_INITIALIZER(work) + +/* + * Lockdep needs to run a non-constant initializer for on-stack + * completions - so we use the _ONSTACK() variant for those that + * are on the kernel stack: + */ +#ifdef CONFIG_LOCKDEP +# define DECLARE_COMPLETION_ONSTACK(work) \ + struct completion work = COMPLETION_INITIALIZER_ONSTACK(work) +#else +# define DECLARE_COMPLETION_ONSTACK(work) DECLARE_COMPLETION(work) +#endif + +static inline void init_completion(struct completion *x) +{ + x->done = 0; +#ifndef XEN + init_waitqueue_head(&x->wait); +#endif +} + +extern void FASTCALL(wait_for_completion(struct completion *)); +extern int FASTCALL(wait_for_completion_interruptible(struct completion *x)); +extern unsigned long FASTCALL(wait_for_completion_timeout(struct completion *x, + unsigned long timeout)); +extern unsigned long FASTCALL(wait_for_completion_interruptible_timeout( + struct completion *x, unsigned long timeout)); + +extern void FASTCALL(complete(struct completion *)); +extern void FASTCALL(complete_all(struct completion *)); + +#define INIT_COMPLETION(x) ((x).done = 0) + +#endif diff -r 7e4404a8f5f9 -r cc8b5b62702c xen/include/asm-ia64/linux-xen/linux/kobject.h --- a/xen/include/asm-ia64/linux-xen/linux/kobject.h Mon Jul 04 07:57:32 2011 +0100 +++ b/xen/include/asm-ia64/linux-xen/linux/kobject.h Wed Jul 06 15:50:51 2011 +0900 @@ -58,7 +58,9 @@ struct kobject { struct kset * kset; struct kobj_type * ktype; struct dentry * dentry; +#ifndef XEN wait_queue_head_t poll; +#endif }; extern int kobject_set_name(struct kobject *, const char *, ...) diff -r 7e4404a8f5f9 -r cc8b5b62702c xen/include/asm-ia64/linux/README.origin --- a/xen/include/asm-ia64/linux/README.origin Mon Jul 04 07:57:32 2011 +0100 +++ b/xen/include/asm-ia64/linux/README.origin Wed Jul 06 15:50:51 2011 +0900 @@ -24,7 +24,6 @@ topology.h -> linux/include/linux/topol wait.h -> linux/include/linux/wait.h # The files below are from Linux-2.6.19 -completion.h -> linux/include/linux/completion.h ioport.h -> linux/include/linux/ioport.h klist.h -> linux/include/linux/klist.h kref.h -> linux/include/linux/kref.h diff -r 7e4404a8f5f9 -r cc8b5b62702c xen/include/asm-ia64/linux/completion.h --- a/xen/include/asm-ia64/linux/completion.h Mon Jul 04 07:57:32 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,57 +0,0 @@ -#ifndef __LINUX_COMPLETION_H -#define __LINUX_COMPLETION_H - -/* - * (C) Copyright 2001 Linus Torvalds - * - * Atomic wait-for-completion handler data structures. - * See kernel/sched.c for details. - */ - -#include <linux/wait.h> - -struct completion { - unsigned int done; - wait_queue_head_t wait; -}; - -#define COMPLETION_INITIALIZER(work) \ - { 0, __WAIT_QUEUE_HEAD_INITIALIZER((work).wait) } - -#define COMPLETION_INITIALIZER_ONSTACK(work) \ - ({ init_completion(&work); work; }) - -#define DECLARE_COMPLETION(work) \ - struct completion work = COMPLETION_INITIALIZER(work) - -/* - * Lockdep needs to run a non-constant initializer for on-stack - * completions - so we use the _ONSTACK() variant for those that - * are on the kernel stack: - */ -#ifdef CONFIG_LOCKDEP -# define DECLARE_COMPLETION_ONSTACK(work) \ - struct completion work = COMPLETION_INITIALIZER_ONSTACK(work) -#else -# define DECLARE_COMPLETION_ONSTACK(work) DECLARE_COMPLETION(work) -#endif - -static inline void init_completion(struct completion *x) -{ - x->done = 0; - init_waitqueue_head(&x->wait); -} - -extern void FASTCALL(wait_for_completion(struct completion *)); -extern int FASTCALL(wait_for_completion_interruptible(struct completion *x)); -extern unsigned long FASTCALL(wait_for_completion_timeout(struct completion *x, - unsigned long timeout)); -extern unsigned long FASTCALL(wait_for_completion_interruptible_timeout( - struct completion *x, unsigned long timeout)); - -extern void FASTCALL(complete(struct completion *)); -extern void FASTCALL(complete_all(struct completion *)); - -#define INIT_COMPLETION(x) ((x).done = 0) - -#endif _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |