[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1519842483-8887-4-git-send-email-maran.wilson@oracle.com>
Date: Wed, 28 Feb 2018 10:27:59 -0800
From: Maran Wilson <maran.wilson@...cle.com>
To: pbonzini@...hat.com, jgross@...e.com, boris.ostrovsky@...cle.com,
roger.pau@...rix.com, andrew.cooper3@...rix.com, hch@...radead.org,
JBeulich@...e.com, x86@...nel.org, xen-devel@...ts.xenproject.org,
linux-kernel@...r.kernel.org, kvm@...r.kernel.org
Cc: tglx@...utronix.de, mingo@...hat.com, hpa@...or.com,
rkrcmar@...hat.com, jpoimboe@...hat.com, bp@...e.de,
kirill.shutemov@...ux.intel.com, thomas.lendacky@....com,
luto@...nel.org, maran.wilson@...cle.com,
dave.hansen@...ux.intel.com, davem@...emloft.net,
gregkh@...uxfoundation.org, mchehab@...nel.org,
linus.walleij@...aro.org, rdunlap@...radead.org
Subject: [RFC PATCH v4 3/7] xen/pvh: Create a new file for Xen specific PVH code
We need to refactor PVH entry code so that support for other hypervisors
like Qemu/KVM can be added more easily.
The first step in that direction is to create a new file that will
eventually hold the Xen specific routines.
Signed-off-by: Maran Wilson <maran.wilson@...cle.com>
---
arch/x86/pvh.c | 1 -
arch/x86/xen/Makefile | 1 +
arch/x86/xen/enlighten_pvh.c | 11 +++++++++++
3 files changed, 12 insertions(+), 1 deletion(-)
create mode 100644 arch/x86/xen/enlighten_pvh.c
diff --git a/arch/x86/pvh.c b/arch/x86/pvh.c
index 436c4f003e17..b56cb5e7d6ac 100644
--- a/arch/x86/pvh.c
+++ b/arch/x86/pvh.c
@@ -19,7 +19,6 @@
* xen_pvh and pvh_bootparams need to live in data segment since they
* are used after startup_{32|64}, which clear .bss, are invoked.
*/
-bool xen_pvh __attribute__((section(".data"))) = 0;
struct boot_params pvh_bootparams __attribute__((section(".data")));
struct hvm_start_info pvh_start_info;
diff --git a/arch/x86/xen/Makefile b/arch/x86/xen/Makefile
index 7e8145b33997..ef6481a83768 100644
--- a/arch/x86/xen/Makefile
+++ b/arch/x86/xen/Makefile
@@ -21,6 +21,7 @@ obj-y := enlighten.o multicalls.o mmu.o irq.o \
obj-$(CONFIG_XEN_PVHVM) += enlighten_hvm.o mmu_hvm.o suspend_hvm.o
obj-$(CONFIG_XEN_PV) += setup.o apic.o pmu.o suspend_pv.o \
p2m.o enlighten_pv.o mmu_pv.o
+obj-$(CONFIG_XEN_PVH) += enlighten_pvh.o
obj-$(CONFIG_EVENT_TRACING) += trace.o
diff --git a/arch/x86/xen/enlighten_pvh.c b/arch/x86/xen/enlighten_pvh.c
new file mode 100644
index 000000000000..4b4e9cc78b8a
--- /dev/null
+++ b/arch/x86/xen/enlighten_pvh.c
@@ -0,0 +1,11 @@
+#include <linux/types.h>
+
+/*
+ * PVH variables.
+ *
+ * The variables xen_pvh and pvh_bootparams need to live in the data segment
+ * since they are used after startup_{32|64} is invoked, which will clear the
+ * .bss segment.
+ */
+bool xen_pvh __attribute__((section(".data"))) = 0;
+
--
2.16.1
Powered by blists - more mailing lists