[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] xen: simplify init_hvm_pv_info



init_hvm_pv_info is called only in PVonHVM context, move it into ifdef.
init_hvm_pv_info does not fail, make it a void function.
remove arguments from init_hvm_pv_info because they are not used by the
caller.

Signed-off-by: Olaf Hering <olaf@xxxxxxxxx>
---
 arch/x86/xen/enlighten.c |   58 +++++++++++++++++++++-------------------------
 1 Datei geÃndert, 26 Zeilen hinzugefÃgt(+), 32 Zeilen entfernt(-)

diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
index a12f151..184fa9c 100644
--- a/arch/x86/xen/enlighten.c
+++ b/arch/x86/xen/enlighten.c
@@ -1439,32 +1439,6 @@ asmlinkage void __init xen_start_kernel(void)
 #endif
 }
 
-static int init_hvm_pv_info(int *major, int *minor)
-{
-       uint32_t eax, ebx, ecx, edx, pages, msr, base;
-       u64 pfn;
-
-       base = xen_cpuid_base();
-       cpuid(base + 1, &eax, &ebx, &ecx, &edx);
-
-       *major = eax >> 16;
-       *minor = eax & 0xffff;
-       printk(KERN_INFO "Xen version %d.%d.\n", *major, *minor);
-
-       cpuid(base + 2, &pages, &msr, &ecx, &edx);
-
-       pfn = __pa(hypercall_page);
-       wrmsr_safe(msr, (u32)pfn, (u32)(pfn >> 32));
-
-       xen_setup_features();
-
-       pv_info.name = "Xen HVM";
-
-       xen_domain_type = XEN_HVM_DOMAIN;
-
-       return 0;
-}
-
 void __ref xen_hvm_init_shared_info(void)
 {
        int cpu;
@@ -1497,6 +1471,31 @@ void __ref xen_hvm_init_shared_info(void)
 }
 
 #ifdef CONFIG_XEN_PVHVM
+static void __init init_hvm_pv_info(void)
+{
+       int major, minor;
+       uint32_t eax, ebx, ecx, edx, pages, msr, base;
+       u64 pfn;
+
+       base = xen_cpuid_base();
+       cpuid(base + 1, &eax, &ebx, &ecx, &edx);
+
+       major = eax >> 16;
+       minor = eax & 0xffff;
+       printk(KERN_INFO "Xen version %d.%d.\n", major, minor);
+
+       cpuid(base + 2, &pages, &msr, &ecx, &edx);
+
+       pfn = __pa(hypercall_page);
+       wrmsr_safe(msr, (u32)pfn, (u32)(pfn >> 32));
+
+       xen_setup_features();
+
+       pv_info.name = "Xen HVM";
+
+       xen_domain_type = XEN_HVM_DOMAIN;
+}
+
 static int __cpuinit xen_hvm_cpu_notify(struct notifier_block *self,
                                    unsigned long action, void *hcpu)
 {
@@ -1519,12 +1518,7 @@ static struct notifier_block xen_hvm_cpu_notifier 
__cpuinitdata = {
 
 static void __init xen_hvm_guest_init(void)
 {
-       int r;
-       int major, minor;
-
-       r = init_hvm_pv_info(&major, &minor);
-       if (r < 0)
-               return;
+       init_hvm_pv_info();
 
        xen_hvm_init_shared_info();
 
-- 
1.7.10.4


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.