From: Stefano Stabellini Date: Mon, 23 Jan 2012 09:39:58 +0000 (+0000) Subject: A collection of fixes to Xen common files X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=d4acf6380cbeebb1a90bde55ea36a6230a3116e9;p=xen.git A collection of fixes to Xen common files - call free_xenoprof_pages only ifdef CONFIG_XENOPROF; - define PRI_stime as PRId64 in an header file; - respect boundaries in is_kernel_*; - implement is_kernel_rodata; - guest_physmap_add_page should be ((void)0). - fix guest_physmap_add_page; - introduce CONFIG_XENOPROF; - define _srodata and _erodata as const char*. Signed-off-by: Stefano Stabellini Signed-off-by: Ian Campbell Signed-off-by: Tim Deegan Committed-by: Keir Fraser --- diff --git a/xen/common/domain.c b/xen/common/domain.c index 8e8a9b23d5..229c1d07f7 100644 --- a/xen/common/domain.c +++ b/xen/common/domain.c @@ -635,7 +635,9 @@ static void complete_domain_destroy(struct rcu_head *head) sched_destroy_domain(d); /* Free page used by xen oprofile buffer. */ +#ifdef CONFIG_XENOPROF free_xenoprof_pages(d); +#endif xfree(d->mem_event); diff --git a/xen/common/sched_credit2.c b/xen/common/sched_credit2.c index 65825b4fb3..ac2be2a268 100644 --- a/xen/common/sched_credit2.c +++ b/xen/common/sched_credit2.c @@ -26,12 +26,6 @@ #include #include -#if __i386__ -#define PRI_stime "lld" -#else -#define PRI_stime "ld" -#endif - #define d2printk(x...) //#define d2printk printk diff --git a/xen/include/asm-ia64/config.h b/xen/include/asm-ia64/config.h index be94b4812b..01734879a8 100644 --- a/xen/include/asm-ia64/config.h +++ b/xen/include/asm-ia64/config.h @@ -20,6 +20,7 @@ #define CONFIG_EFI #define CONFIG_EFI_PCDP #define CONFIG_SERIAL_SGI_L1_CONSOLE +#define CONFIG_XENOPROF 1 #define CONFIG_XEN_SMP diff --git a/xen/include/asm-x86/config.h b/xen/include/asm-x86/config.h index e8f8211622..18d0a052c1 100644 --- a/xen/include/asm-x86/config.h +++ b/xen/include/asm-x86/config.h @@ -48,6 +48,8 @@ #define CONFIG_HOTPLUG 1 #define CONFIG_HOTPLUG_CPU 1 +#define CONFIG_XENOPROF 1 + #define HZ 100 #define OPT_CONSOLE_STR "vga" diff --git a/xen/include/xen/kernel.h b/xen/include/xen/kernel.h index fd03f74c8b..92de4285b3 100644 --- a/xen/include/xen/kernel.h +++ b/xen/include/xen/kernel.h @@ -66,19 +66,25 @@ extern char _start[], _end[]; #define is_kernel(p) ({ \ char *__p = (char *)(unsigned long)(p); \ - (__p >= _start) && (__p <= _end); \ + (__p >= _start) && (__p < _end); \ }) extern char _stext[], _etext[]; #define is_kernel_text(p) ({ \ char *__p = (char *)(unsigned long)(p); \ - (__p >= _stext) && (__p <= _etext); \ + (__p >= _stext) && (__p < _etext); \ +}) + +extern const char _srodata[], _erodata[]; +#define is_kernel_rodata(p) ({ \ + const char *__p = (const char *)(unsigned long)(p); \ + (__p >= _srodata) && (__p < _erodata); \ }) extern char _sinittext[], _einittext[]; #define is_kernel_inittext(p) ({ \ char *__p = (char *)(unsigned long)(p); \ - (__p >= _sinittext) && (__p <= _einittext); \ + (__p >= _sinittext) && (__p < _einittext); \ }) #endif /* _LINUX_KERNEL_H */ diff --git a/xen/include/xen/paging.h b/xen/include/xen/paging.h index 213ece43aa..123cc58597 100644 --- a/xen/include/xen/paging.h +++ b/xen/include/xen/paging.h @@ -18,7 +18,7 @@ #define paging_mode_translate(d) (0) #define paging_mode_external(d) (0) -#define guest_physmap_add_page(d, p, m, o) (0) +#define guest_physmap_add_page(d, p, m, o) ((void)0) #define guest_physmap_remove_page(d, p, m, o) ((void)0) #endif diff --git a/xen/include/xen/time.h b/xen/include/xen/time.h index a19434079c..31c9ce5938 100644 --- a/xen/include/xen/time.h +++ b/xen/include/xen/time.h @@ -30,6 +30,7 @@ struct vcpu; */ typedef s64 s_time_t; +#define PRI_stime PRId64 s_time_t get_s_time(void); unsigned long get_localtime(struct domain *d);