A collection of fixes to Xen common files
authorStefano Stabellini <stefano.stabellini@eu.citrix.com>
Mon, 23 Jan 2012 09:39:58 +0000 (09:39 +0000)
committerStefano Stabellini <stefano.stabellini@eu.citrix.com>
Mon, 23 Jan 2012 09:39:58 +0000 (09:39 +0000)
- 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 <stefano.stabellini@eu.citrix.com>
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
xen/common/domain.c
xen/common/sched_credit2.c
xen/include/asm-ia64/config.h
xen/include/asm-x86/config.h
xen/include/xen/kernel.h
xen/include/xen/paging.h
xen/include/xen/time.h

index 8e8a9b23d5008d0e3ed367d849a508449655ffa4..229c1d07f7c72deb19ae02498f439e996d05908f 100644 (file)
@@ -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);
 
index 65825b4fb390f01d95ae3f1d4818e18db1a060f5..ac2be2a26824904a351af2d0ceeac352bf42c69b 100644 (file)
 #include <xen/trace.h>
 #include <xen/cpu.h>
 
-#if __i386__
-#define PRI_stime "lld"
-#else
-#define PRI_stime "ld"
-#endif
-
 #define d2printk(x...)
 //#define d2printk printk
 
index be94b4812b008e28e834bf65929a2131ffcfb93c..01734879a83c17bbf56a0dc3f68ecaa8ab44e163 100644 (file)
@@ -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
 
index e8f82116227558b75df6d422f2eca587368e887c..18d0a052c15f23f742ac0e4ae6673ee3919402bb 100644 (file)
@@ -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"
index fd03f74c8ba3dab2c7210689f8fa5b88a6167f20..92de4285b300c8fe8cb2245194ec14a95131a93b 100644 (file)
 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 */
index 213ece43aac6ed44573cea02c6c056c8759bbb38..123cc585978f4349afb3018388567af6adf3c07c 100644 (file)
@@ -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
index a19434079ccbb47c96bab92f2349c4834328f849..31c9ce5938ecdba6bbf16c6fdb49a2c18796fb1f 100644 (file)
@@ -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);