lkml.org 
[lkml]   [2020]   [Jun]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v3 12/15] arm64: kvm: Compile remaining hyp/ files for both VHE/nVHE
    Date
    This patch is part of a series which builds KVM's non-VHE hyp code separately
    from VHE and the rest of the kernel.

    The following files in hyp/ contain only code shared by VHE/nVHE:
    vgic-v3-sr.c, aarch32.c, vgic-v2-cpuif-proxy.c, entry.S, fpsimd.S
    Compile them under both configurations. Deletions in image-vars.h reflect
    eliminated dependencies of nVHE code on the rest of the kernel.

    Signed-off-by: David Brazdil <dbrazdil@google.com>
    ---
    arch/arm64/kernel/image-vars.h | 19 -------------------
    arch/arm64/kvm/hyp/nvhe/Makefile | 5 +++--
    2 files changed, 3 insertions(+), 21 deletions(-)

    diff --git a/arch/arm64/kernel/image-vars.h b/arch/arm64/kernel/image-vars.h
    index 94bfc61b3f51..2cc3e7673dc2 100644
    --- a/arch/arm64/kernel/image-vars.h
    +++ b/arch/arm64/kernel/image-vars.h
    @@ -61,27 +61,9 @@ __efistub__ctype = _ctype;
    * memory mappings.
    */

    -__kvm_nvhe___fpsimd_restore_state = __fpsimd_restore_state;
    -__kvm_nvhe___fpsimd_save_state = __fpsimd_save_state;
    -__kvm_nvhe___guest_enter = __guest_enter;
    -__kvm_nvhe___guest_exit = __guest_exit;
    __kvm_nvhe___hyp_panic_string = __hyp_panic_string;
    __kvm_nvhe___hyp_stub_vectors = __hyp_stub_vectors;
    __kvm_nvhe___icache_flags = __icache_flags;
    -__kvm_nvhe___vgic_v2_perform_cpuif_access = __vgic_v2_perform_cpuif_access;
    -__kvm_nvhe___vgic_v3_activate_traps = __vgic_v3_activate_traps;
    -__kvm_nvhe___vgic_v3_deactivate_traps = __vgic_v3_deactivate_traps;
    -__kvm_nvhe___vgic_v3_get_ich_vtr_el2 = __vgic_v3_get_ich_vtr_el2;
    -__kvm_nvhe___vgic_v3_init_lrs = __vgic_v3_init_lrs;
    -__kvm_nvhe___vgic_v3_perform_cpuif_access = __vgic_v3_perform_cpuif_access;
    -__kvm_nvhe___vgic_v3_read_vmcr = __vgic_v3_read_vmcr;
    -__kvm_nvhe___vgic_v3_restore_aprs = __vgic_v3_restore_aprs;
    -__kvm_nvhe___vgic_v3_restore_state = __vgic_v3_restore_state;
    -__kvm_nvhe___vgic_v3_save_aprs = __vgic_v3_save_aprs;
    -__kvm_nvhe___vgic_v3_save_state = __vgic_v3_save_state;
    -__kvm_nvhe___vgic_v3_write_vmcr = __vgic_v3_write_vmcr;
    -__kvm_nvhe_abort_guest_exit_end = abort_guest_exit_end;
    -__kvm_nvhe_abort_guest_exit_start = abort_guest_exit_start;
    __kvm_nvhe_arm64_const_caps_ready = arm64_const_caps_ready;
    __kvm_nvhe_arm64_enable_wa2_handling = arm64_enable_wa2_handling;
    __kvm_nvhe_arm64_ssbd_callback_required = arm64_ssbd_callback_required;
    @@ -94,7 +76,6 @@ __kvm_nvhe_idmap_t0sz = idmap_t0sz;
    __kvm_nvhe_kimage_voffset = kimage_voffset;
    __kvm_nvhe_kvm_host_data = kvm_host_data;
    __kvm_nvhe_kvm_patch_vector_branch = kvm_patch_vector_branch;
    -__kvm_nvhe_kvm_skip_instr32 = kvm_skip_instr32;
    __kvm_nvhe_kvm_update_va_mask = kvm_update_va_mask;
    __kvm_nvhe_kvm_vgic_global_state = kvm_vgic_global_state;
    __kvm_nvhe_panic = panic;
    diff --git a/arch/arm64/kvm/hyp/nvhe/Makefile b/arch/arm64/kvm/hyp/nvhe/Makefile
    index 4ec34abce0a9..d51ae163430d 100644
    --- a/arch/arm64/kvm/hyp/nvhe/Makefile
    +++ b/arch/arm64/kvm/hyp/nvhe/Makefile
    @@ -7,8 +7,9 @@ asflags-y := -D__KVM_NVHE_HYPERVISOR__
    ccflags-y := -D__KVM_NVHE_HYPERVISOR__ -fno-stack-protector \
    -DDISABLE_BRANCH_PROFILING $(DISABLE_STACKLEAK_PLUGIN)

    -obj-y := ../timer-sr.o timer-sr.o sysreg-sr.o debug-sr.o switch.o tlb.o \
    - hyp-init.o ../hyp-entry.o
    +obj-y := ../vgic-v3-sr.o ../timer-sr.o timer-sr.o ../aarch32.o \
    + ../vgic-v2-cpuif-proxy.o sysreg-sr.o debug-sr.o ../entry.o switch.o \
    + ../fpsimd.o tlb.o hyp-init.o ../hyp-entry.o

    obj-y := $(patsubst %.o,%.hyp.o,$(obj-y))
    extra-y := $(patsubst %.hyp.o,%.hyp.tmp.o,$(obj-y))
    --
    2.27.0
    \
     
     \ /
      Last update: 2020-06-18 14:32    [W:4.777 / U:0.144 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site