Messages in this thread | | | From | Paolo Bonzini <> | Subject | [GIT PULL] Second batch of KVM changes for 4.4 | Date | Tue, 10 Nov 2015 19:31:40 +0100 |
| |
Linus,
The following changes since commit a3eaa8649e4c6a6afdafaa04b9114fb230617bb1:
KVM: VMX: Fix commit which broke PML (2015-11-05 11:34:11 +0100)
are available in the git repository at:
git://git.kernel.org/pub/scm/virt/kvm/kvm.git tags/for-linus
for you to fetch changes up to a96036b8ef7df9f10cd575c0d78359bd33188e8e:
KVM: x86: rename update_db_bp_intercept to update_bp_intercept (2015-11-10 12:06:25 +0100)
---------------------------------------------------------------- Three changes:
- x86: work around two nasty cases where a benign exception occurs while another is being delivered. The endless stream of exceptions causes an infinite loop in the processor, which not even NMIs or SMIs can interrupt; in the virt case, there is no possibility to exit to the host either.
- x86: support for Skylake per-guest TSC rate. Long supported by AMD, the patches mostly move things from there to common arch/x86/kvm/ code.
- generic: remove local_irq_save/restore from the guest entry and exit paths when context tracking is enabled. The patches are a few months old, but we discussed them again at kernel summit. Andy will pick up from here and, in 4.5, try to remove it from the user entry/exit paths.
---------------------------------------------------------------- Eric Northup (1): KVM: x86: work around infinite loop in microcode when #AC is delivered
Haozhong Zhang (12): KVM: x86: Collect information for setting TSC scaling ratio KVM: x86: Add a common TSC scaling ratio field in kvm_vcpu_arch KVM: x86: Add a common TSC scaling function KVM: x86: Replace call-back set_tsc_khz() with a common function KVM: x86: Replace call-back compute_tsc_offset() with a common function KVM: x86: Move TSC scaling logic out of call-back adjust_tsc_offset() KVM: x86: Move TSC scaling logic out of call-back read_l1_tsc() KVM: x86: Use the correct vcpu's TSC rate to compute time scale KVM: VMX: Enable and initialize VMX TSC scaling KVM: VMX: Setup TSC scaling ratio when a vcpu is loaded KVM: VMX: Use a scaled host TSC for guest readings of MSR_IA32_TSC KVM: VMX: Dump TSC multiplier in dump_vmcs()
Paolo Bonzini (6): KVM: x86: merge handle_mmio_page_fault and handle_mmio_page_fault_common KVM: x86: declare a few variables as __read_mostly context_tracking: remove duplicate enabled check context_tracking: avoid irq_save/irq_restore on guest entry and exit KVM: svm: unconditionally intercept #DB KVM: x86: rename update_db_bp_intercept to update_bp_intercept
arch/x86/include/asm/kvm_host.h | 27 +++---- arch/x86/include/asm/vmx.h | 3 + arch/x86/include/uapi/asm/svm.h | 1 + arch/x86/kvm/lapic.c | 4 +- arch/x86/kvm/mmu.c | 20 ++--- arch/x86/kvm/mmu.h | 6 +- arch/x86/kvm/paging_tmpl.h | 3 +- arch/x86/kvm/svm.c | 140 ++++++---------------------------- arch/x86/kvm/vmx.c | 71 +++++++++-------- arch/x86/kvm/x86.c | 159 +++++++++++++++++++++++++++++++++------ include/linux/context_tracking.h | 12 ++- include/linux/kvm_host.h | 1 + include/linux/math64.h | 80 ++++++++++++++++++++ kernel/context_tracking.c | 80 ++++++++++---------- 14 files changed, 352 insertions(+), 255 deletions(-)
| |