lkml.org 
[lkml]   [2008]   [Jan]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 07/54] KVM: VMX: Remove the secondary execute control dependency on irqchip
    Date
    From: Sheng Yang <sheng.yang@intel.com>

    The state of SECONDARY_VM_EXEC_CONTROL shouldn't depend on in-kernel IRQ chip,
    this patch fix this.

    Signed-off-by: Sheng Yang <sheng.yang@intel.com>
    Signed-off-by: Avi Kivity <avi@qumranet.com>
    ---
    drivers/kvm/vmx.c | 17 +++++++----------
    1 files changed, 7 insertions(+), 10 deletions(-)

    diff --git a/drivers/kvm/vmx.c b/drivers/kvm/vmx.c
    index fbe792d..8e43feb 100644
    --- a/drivers/kvm/vmx.c
    +++ b/drivers/kvm/vmx.c
    @@ -193,11 +193,6 @@ static inline int cpu_has_secondary_exec_ctrls(void)
    CPU_BASED_ACTIVATE_SECONDARY_CONTROLS);
    }

    -static inline int vm_need_secondary_exec_ctrls(struct kvm *kvm)
    -{
    - return ((cpu_has_secondary_exec_ctrls()) && (irqchip_in_kernel(kvm)));
    -}
    -
    static inline int cpu_has_vmx_virtualize_apic_accesses(void)
    {
    return (vmcs_config.cpu_based_2nd_exec_ctrl &
    @@ -1524,13 +1519,15 @@ static int vmx_vcpu_setup(struct vcpu_vmx *vmx)
    CPU_BASED_CR8_LOAD_EXITING;
    #endif
    }
    - if (!vm_need_secondary_exec_ctrls(vmx->vcpu.kvm))
    - exec_control &= ~CPU_BASED_ACTIVATE_SECONDARY_CONTROLS;
    vmcs_write32(CPU_BASED_VM_EXEC_CONTROL, exec_control);

    - if (vm_need_secondary_exec_ctrls(vmx->vcpu.kvm))
    - vmcs_write32(SECONDARY_VM_EXEC_CONTROL,
    - vmcs_config.cpu_based_2nd_exec_ctrl);
    + if (cpu_has_secondary_exec_ctrls()) {
    + exec_control = vmcs_config.cpu_based_2nd_exec_ctrl;
    + if (!vm_need_virtualize_apic_accesses(vmx->vcpu.kvm))
    + exec_control &=
    + ~SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES;
    + vmcs_write32(SECONDARY_VM_EXEC_CONTROL, exec_control);
    + }

    vmcs_write32(PAGE_FAULT_ERROR_CODE_MASK, !!bypass_guest_pf);
    vmcs_write32(PAGE_FAULT_ERROR_CODE_MATCH, !!bypass_guest_pf);
    --
    1.5.3.7


    \
     
     \ /
      Last update: 2008-01-01 16:41    [W:0.023 / U:0.904 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site