[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 07/12] xen: allow tmem to be disabled on platforms which do not support it (ARM)
Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx> --- xen/Rules.mk | 1 + xen/arch/arm/dummy.S | 1 - xen/arch/ia64/Rules.mk | 1 + xen/arch/x86/Rules.mk | 1 + xen/common/Makefile | 4 ++-- xen/common/page_alloc.c | 1 + xen/include/xen/tmem.h | 9 +++++++++ xen/include/xen/tmem_xen.h | 5 +++++ 8 files changed, 20 insertions(+), 3 deletions(-) diff --git a/xen/Rules.mk b/xen/Rules.mk index b7b54f6..e25e8d4 100644 --- a/xen/Rules.mk +++ b/xen/Rules.mk @@ -51,6 +51,7 @@ CFLAGS-$(perfc) += -DPERF_COUNTERS CFLAGS-$(perfc_arrays) += -DPERF_ARRAYS CFLAGS-$(lock_profile) += -DLOCK_PROFILE CFLAGS-$(HAS_ACPI) += -DHAS_ACPI +CFLAGS-$(HAS_TMEM) += -DHAS_TMEM CFLAGS-$(frame_pointer) += -fno-omit-frame-pointer -DCONFIG_FRAME_POINTER ifneq ($(max_phys_cpus),) diff --git a/xen/arch/arm/dummy.S b/xen/arch/arm/dummy.S index 3bf5226..da0b906 100644 --- a/xen/arch/arm/dummy.S +++ b/xen/arch/arm/dummy.S @@ -20,7 +20,6 @@ DUMMY(domain_get_maximum_gpfn); DUMMY(domain_relinquish_resources); DUMMY(domain_set_time_offset); DUMMY(dom_cow); -DUMMY(donate_page); DUMMY(flush_tlb_mask); DUMMY(free_vcpu_guest_context); DUMMY(get_page); diff --git a/xen/arch/ia64/Rules.mk b/xen/arch/ia64/Rules.mk index 054b4de..6c8cf69 100644 --- a/xen/arch/ia64/Rules.mk +++ b/xen/arch/ia64/Rules.mk @@ -9,6 +9,7 @@ HAS_PCI := y HAS_PASSTHROUGH := y HAS_NS16550 := y HAS_KEXEC := y +HAS_TMEM := y xenoprof := y no_warns ?= n vti_debug ?= n diff --git a/xen/arch/x86/Rules.mk b/xen/arch/x86/Rules.mk index 1e48877..8802a69 100644 --- a/xen/arch/x86/Rules.mk +++ b/xen/arch/x86/Rules.mk @@ -8,6 +8,7 @@ HAS_PCI := y HAS_PASSTHROUGH := y HAS_NS16550 := y HAS_KEXEC := y +HAS_TMEM := y xenoprof := y # diff --git a/xen/common/Makefile b/xen/common/Makefile index 9249845..68a2df1 100644 --- a/xen/common/Makefile +++ b/xen/common/Makefile @@ -38,8 +38,8 @@ obj-y += vsprintf.o obj-y += wait.o obj-y += xmalloc_tlsf.o obj-y += rcupdate.o -obj-y += tmem.o -obj-y += tmem_xen.o +obj-$(HAS_TMEM) += tmem.o +obj-$(HAS_TMEM) += tmem_xen.o obj-y += radix-tree.o obj-y += rbtree.o obj-y += lzo.o diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c index 249bb35..3aac830 100644 --- a/xen/common/page_alloc.c +++ b/xen/common/page_alloc.c @@ -35,6 +35,7 @@ #include <xen/perfc.h> #include <xen/numa.h> #include <xen/nodemask.h> +#include <xen/errno.h> #include <xen/tmem.h> #include <xen/tmem_xen.h> #include <public/sysctl.h> diff --git a/xen/include/xen/tmem.h b/xen/include/xen/tmem.h index 5dbf9d5..2ebffb4 100644 --- a/xen/include/xen/tmem.h +++ b/xen/include/xen/tmem.h @@ -9,8 +9,17 @@ #ifndef __XEN_TMEM_H__ #define __XEN_TMEM_H__ +#ifdef HAS_TMEM extern void tmem_destroy(void *); extern void *tmem_relinquish_pages(unsigned int, unsigned int); extern unsigned long tmem_freeable_pages(void); +#else +static inline void tmem_destroy(void *v) {} +static inline void *tmem_relinquish_pages(unsigned int order, unsigned int flags) +{ + return NULL; +} +static inline unsigned long tmem_freeable_pages(void) { return 0; } +#endif #endif /* __XEN_TMEM_H__ */ diff --git a/xen/include/xen/tmem_xen.h b/xen/include/xen/tmem_xen.h index fdbeed1..a6c0672 100644 --- a/xen/include/xen/tmem_xen.h +++ b/xen/include/xen/tmem_xen.h @@ -9,6 +9,7 @@ #ifndef __XEN_TMEM_XEN_H__ #define __XEN_TMEM_XEN_H__ +#ifdef HAS_TMEM #include <xen/config.h> #include <xen/mm.h> /* heap alloc/free */ #include <xen/pfn.h> @@ -559,4 +560,8 @@ extern int tmh_copy_tze_to_client(tmem_cli_mfn_t cmfn, void *tmem_va, pagesize_t #define RESET_CYC_COUNTER(x) do { } while (0) #endif +#else /* HAS_TMEM */ +#define opt_tmem 0 +#endif + #endif /* __XEN_TMEM_XEN_H__ */ -- 1.7.2.5 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |