1. 13 3月, 2013 2 次提交
    • J
      KVM: nVMX: Clean up and fix pin-based execution controls · eabeaacc
      Jan Kiszka 提交于
      Only interrupt and NMI exiting are mandatory for KVM to work, thus can
      be exposed to the guest unconditionally, virtual NMI exiting is
      optional. So we must not advertise it unless the host supports it.
      
      Introduce the symbolic constant PIN_BASED_ALWAYSON_WITHOUT_TRUE_MSR at
      this chance.
      Reviewed-by: N: Paolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      Signed-off-by: NGleb Natapov <gleb@redhat.com>
      eabeaacc
    • J
      KVM: x86: Rework INIT and SIPI handling · 66450a21
      Jan Kiszka 提交于
      A VCPU sending INIT or SIPI to some other VCPU races for setting the
      remote VCPU's mp_state. When we were unlucky, KVM_MP_STATE_INIT_RECEIVED
      was overwritten by kvm_emulate_halt and, thus, got lost.
      
      This introduces APIC events for those two signals, keeping them in
      kvm_apic until kvm_apic_accept_events is run over the target vcpu
      context. kvm_apic_has_events reports to kvm_arch_vcpu_runnable if there
      are pending events, thus if vcpu blocking should end.
      
      The patch comes with the side effect of effectively obsoleting
      KVM_MP_STATE_SIPI_RECEIVED. We still accept it from user space, but
      immediately translate it to KVM_MP_STATE_INIT_RECEIVED + KVM_APIC_SIPI.
      The vcpu itself will no longer enter the KVM_MP_STATE_SIPI_RECEIVED
      state. That also means we no longer exit to user space after receiving a
      SIPI event.
      
      Furthermore, we already reset the VCPU on INIT, only fixing up the code
      segment later on when SIPI arrives. Moreover, we fix INIT handling for
      the BSP: it never enter wait-for-SIPI but directly starts over on INIT.
      Tested-by: NPaolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      Signed-off-by: NGleb Natapov <gleb@redhat.com>
      66450a21
  2. 12 3月, 2013 1 次提交
  3. 11 3月, 2013 1 次提交
  4. 08 3月, 2013 2 次提交
  5. 06 3月, 2013 1 次提交
  6. 05 3月, 2013 2 次提交
  7. 28 2月, 2013 2 次提交
  8. 27 2月, 2013 4 次提交
  9. 22 2月, 2013 2 次提交
  10. 14 2月, 2013 1 次提交
  11. 11 2月, 2013 1 次提交
  12. 07 2月, 2013 1 次提交
  13. 06 2月, 2013 1 次提交
  14. 29 1月, 2013 3 次提交
  15. 24 1月, 2013 8 次提交
  16. 09 1月, 2013 1 次提交
  17. 03 1月, 2013 4 次提交
  18. 23 12月, 2012 3 次提交