Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1501118

[PATCH 5/8] xen/pvh: Prevent PVH guests from using PIC, RTC and IOAPIC

From Boris Ostrovsky <boris.ostrovsky@oracle.com>
Newsgroups linux.kernel
Subject [PATCH 5/8] xen/pvh: Prevent PVH guests from using PIC, RTC and IOAPIC
Date 2016-10-14 20:20 +0200
Message-ID <ssffk-4Pd-33@gated-at.bofh.it> (permalink)
References <ssffk-4Pd-17@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Make sure they don't use these devices since they are not emulated
for unprivileged PVH guest.

Also don't initialize hypercall page for them in init_hvm_pv_info()
since this has already been done.

Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
---
 arch/x86/xen/enlighten.c | 24 +++++++++++++++++-------
 1 file changed, 17 insertions(+), 7 deletions(-)

diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
index d38d568..6c1a330 100644
--- a/arch/x86/xen/enlighten.c
+++ b/arch/x86/xen/enlighten.c
@@ -1803,10 +1803,21 @@ static void __init init_hvm_pv_info(void)
 	minor = eax & 0xffff;
 	printk(KERN_INFO "Xen version %d.%d.\n", major, minor);
 
-	cpuid(base + 2, &pages, &msr, &ecx, &edx);
+	xen_domain_type = XEN_HVM_DOMAIN;
 
-	pfn = __pa(hypercall_page);
-	wrmsr_safe(msr, (u32)pfn, (u32)(pfn >> 32));
+	/* PVH set up hypercall page earlier in xen_prepare_pvh() */
+	if (xen_pvh_domain()) {
+		pv_info.name = "Xen PVH";
+#ifdef CONFIG_ACPI
+		/* No PIC or IOAPIC */
+		acpi_irq_model = ACPI_IRQ_MODEL_PLATFORM;
+#endif
+	} else {
+		pv_info.name = "Xen HVM";
+		cpuid(base + 2, &pages, &msr, &ecx, &edx);
+		pfn = __pa(hypercall_page);
+		wrmsr_safe(msr, (u32)pfn, (u32)(pfn >> 32));
+	}
 
 	xen_setup_features();
 
@@ -1815,10 +1826,6 @@ static void __init init_hvm_pv_info(void)
 		this_cpu_write(xen_vcpu_id, ebx);
 	else
 		this_cpu_write(xen_vcpu_id, smp_processor_id());
-
-	pv_info.name = "Xen HVM";
-
-	xen_domain_type = XEN_HVM_DOMAIN;
 }
 
 static int xen_cpu_up_prepare(unsigned int cpu)
@@ -1892,6 +1899,9 @@ static void __init xen_hvm_guest_init(void)
 
 	init_hvm_pv_info();
 
+	if (xen_pvh_domain())
+		x86_platform.legacy.rtc = 0;
+
 	xen_hvm_init_shared_info();
 
 	xen_panic_handler_init();
-- 
1.8.3.1

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 0/8] PVH v2 support Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 20:20 +0200
  [PATCH 7/8] xen/pvh: PVH guests always have PV devices Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 20:20 +0200
    Re: [Xen-devel] [PATCH 7/8] xen/pvh: PVH guests always have PV  devices Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> - 2016-10-14 21:30 +0200
    Re: [PATCH 7/8] xen/pvh: PVH guests always have PV devices Juergen Gross <jgross@suse.com> - 2016-10-18 18:00 +0200
  [PATCH 5/8] xen/pvh: Prevent PVH guests from using PIC, RTC and IOAPIC Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 20:20 +0200
    Re: [Xen-devel] [PATCH 5/8] xen/pvh: Prevent PVH guests from using  PIC, RTC and IOAPIC Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> - 2016-10-14 21:20 +0200
      Re: [Xen-devel] [PATCH 5/8] xen/pvh: Prevent PVH guests from using  PIC, RTC and IOAPIC Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 21:40 +0200
    Re: [PATCH 5/8] xen/pvh: Prevent PVH guests from using PIC, RTC and  IOAPIC Roger Pau Monné <roger.pau@citrix.com> - 2016-10-26 12:50 +0200
      Re: [PATCH 5/8] xen/pvh: Prevent PVH guests from using PIC, RTC and  IOAPIC Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-26 16:50 +0200
        Re: [PATCH 5/8] xen/pvh: Prevent PVH guests from using PIC, RTC and  IOAPIC Roger Pau Monné <roger.pau@citrix.com> - 2016-10-26 17:20 +0200
          Re: [PATCH 5/8] xen/pvh: Prevent PVH guests from using PIC, RTC and  IOAPIC Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-26 18:10 +0200
  [PATCH 8/8] xen/pvh: Enable CPU hotplug Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 20:20 +0200
    Re: [Xen-devel] [PATCH 8/8] xen/pvh: Enable CPU hotplug Andrew Cooper <andrew.cooper3@citrix.com> - 2016-10-14 20:50 +0200
      Re: [Xen-devel] [PATCH 8/8] xen/pvh: Enable CPU hotplug Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 21:10 +0200
  [PATCH 4/8] xen/pvh: Bootstrap PVH guest Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 20:20 +0200
    Re: [Xen-devel] [PATCH 4/8] xen/pvh: Bootstrap PVH guest Andrew Cooper <andrew.cooper3@citrix.com> - 2016-10-14 20:50 +0200
      Re: [Xen-devel] [PATCH 4/8] xen/pvh: Bootstrap PVH guest Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 21:00 +0200
        Re: [Xen-devel] [PATCH 4/8] xen/pvh: Bootstrap PVH guest Andrew Cooper <andrew.cooper3@citrix.com> - 2016-10-14 21:20 +0200
    Re: [Xen-devel] [PATCH 4/8] xen/pvh: Bootstrap PVH guest Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> - 2016-10-14 21:20 +0200
      Re: [Xen-devel] [PATCH 4/8] xen/pvh: Bootstrap PVH guest Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 21:40 +0200
  [PATCH 2/8] x86/head: Refactor 32-bit pgtable setup Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 20:20 +0200
    Re: [PATCH 2/8] x86/head: Refactor 32-bit pgtable setup hpa@zytor.com - 2016-10-14 20:40 +0200
      Re: [PATCH 2/8] x86/head: Refactor 32-bit pgtable setup Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 20:50 +0200
        Re: [PATCH 2/8] x86/head: Refactor 32-bit pgtable setup hpa@zytor.com - 2016-10-14 21:10 +0200
          Re: [PATCH 2/8] x86/head: Refactor 32-bit pgtable setup Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 21:30 +0200
  [PATCH 3/8] xen/pvh: Import PVH-related Xen public interfaces Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 20:20 +0200
    Re: [Xen-devel] [PATCH 3/8] xen/pvh: Import PVH-related Xen public  interfaces Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> - 2016-10-14 20:40 +0200
    Re: [PATCH 3/8] xen/pvh: Import PVH-related Xen public interfaces Juergen Gross <jgross@suse.com> - 2016-10-21 13:00 +0200
  [PATCH 1/8] xen/x86: Remove PVH support Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-14 20:20 +0200
    Re: [Xen-devel] [PATCH 1/8] xen/x86: Remove PVH support Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> - 2016-10-14 20:40 +0200
    Re: [PATCH 1/8] xen/x86: Remove PVH support Juergen Gross <jgross@suse.com> - 2016-10-18 15:50 +0200
      Re: [PATCH 1/8] xen/x86: Remove PVH support Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-18 16:50 +0200
        Re: [PATCH 1/8] xen/x86: Remove PVH support Juergen Gross <jgross@suse.com> - 2016-10-18 17:40 +0200
          Re: [PATCH 1/8] xen/x86: Remove PVH support Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-10-18 17:50 +0200

csiph-web