Re: [Xen-devel] [RFC PATCH v4 3/7] xen/pvh: Create a new file for Xen specific PVH code
From: Konrad Rzeszutek Wilk
Date: Wed Feb 28 2018 - 16:12:43 EST
On Wed, Feb 28, 2018 at 10:27:59AM -0800, Maran Wilson wrote:
> 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@xxxxxxxxxx>
> ---
> 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
Perhaps remove 'xen_pvh' from there..
> * 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
And remove 'and pvh_bootparams' here as well?
> + * 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
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxxx
> https://lists.xenproject.org/mailman/listinfo/xen-devel