|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] [PATCH 5/7] x86/xen: The entrance for PV extension of HVM
xen_guest_init() would setup the environment.
Signed-off-by: Sheng Yang <sheng@xxxxxxxxxxxxxxx>
---
arch/x86/include/asm/xen/hypervisor.h | 6 ++++++
arch/x86/kernel/setup.c | 4 ++++
2 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/arch/x86/include/asm/xen/hypervisor.h
b/arch/x86/include/asm/xen/hypervisor.h
index 396ff4c..13e089a 100644
--- a/arch/x86/include/asm/xen/hypervisor.h
+++ b/arch/x86/include/asm/xen/hypervisor.h
@@ -37,4 +37,10 @@
extern struct shared_info *HYPERVISOR_shared_info;
extern struct start_info *xen_start_info;
+#ifdef CONFIG_XEN_HVM_PV
+void __init xen_guest_init(void);
+#else
+static inline void xen_guest_init(void) {};
+#endif
+
#endif /* _ASM_X86_XEN_HYPERVISOR_H */
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index 5d9e40c..1cc4786 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -113,6 +113,8 @@
#endif
#include <asm/mce.h>
+#include <asm/xen/hypervisor.h>
+
/*
* end_pfn only includes RAM, while max_pfn_mapped includes all e820 entries.
* The direct mapping extends to max_pfn_mapped, so that we can directly access
@@ -740,6 +742,8 @@ void __init setup_arch(char **cmdline_p)
x86_init.oem.arch_setup();
+ xen_guest_init();
+
setup_memory_map();
parse_setup_data();
/* update the e820_saved too */
--
1.5.4.5
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|