lkml.org 
[lkml]   [2018]   [Apr]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v7 3/7] xen/pvh: Create a new file for Xen specific PVH code
    Date
    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@oracle.com>
    ---
    arch/x86/platform/pvh/enlighten.c | 5 ++---
    arch/x86/xen/Makefile | 1 +
    arch/x86/xen/enlighten_pvh.c | 9 +++++++++
    3 files changed, 12 insertions(+), 3 deletions(-)
    create mode 100644 arch/x86/xen/enlighten_pvh.c

    diff --git a/arch/x86/platform/pvh/enlighten.c b/arch/x86/platform/pvh/enlighten.c
    index aa1c6a6831a9..74ff1c3d2789 100644
    --- a/arch/x86/platform/pvh/enlighten.c
    +++ b/arch/x86/platform/pvh/enlighten.c
    @@ -17,10 +17,9 @@
    /*
    * PVH variables.
    *
    - * xen_pvh pvh_bootparams and pvh_start_info need to live in data segment
    - * since they are used after startup_{32|64}, which clear .bss, are invoked.
    + * pvh_bootparams and pvh_start_info need to live in the 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 __attribute__((section(".data")));

    diff --git a/arch/x86/xen/Makefile b/arch/x86/xen/Makefile
    index f1b850607212..ae5c6f1f0fe0 100644
    --- a/arch/x86/xen/Makefile
    +++ b/arch/x86/xen/Makefile
    @@ -20,6 +20,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..313fe499065e
    --- /dev/null
    +++ b/arch/x86/xen/enlighten_pvh.c
    @@ -0,0 +1,9 @@
    +#include <linux/types.h>
    +
    +/*
    + * PVH variables.
    + *
    + * The variable xen_pvh needs to live in the data segment since it is used
    + * after startup_{32|64} is invoked, which will clear the .bss segment.
    + */
    +bool xen_pvh __attribute__((section(".data"))) = 0;
    --
    2.16.1
    \
     
     \ /
      Last update: 2018-04-17 01:14    [W:4.155 / U:0.188 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site