[kvm-unit-tests PATCH 0/6] x86: FEP related cleanups and fix

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The ultimate goal of this series is to be able to check for forced emulation
support in a nVMX test that runs with a garbage IDT (the test currently
assumed forced emulation is always available, which fails for obvious reasons).

Getting there is a bit annoying, mostly because the EFI path happens to load
the IDT after setup_idt().  I _could_ have just tweaked the EFI path, but opted
for a slightly bigger overhaul, e.g. so that it's easier to see that the BSP is
responsible for loading the IDT, and so that setup_idt() can _guarantee_ it can
handle a #UD without exploding.

Sean Christopherson (6):
  x86: Call setup_idt() from start{32,64}(), not from smp_init()
  x86: Drop protection against setup_idt() being called multiple times
  x86: Move call to load_idt() out of setup_tr_and_percpu macro
  x86: Load IDT on BSP as part of setup_idt()
  x86: Cache availability of forced emulation during setup_idt()
  nVMX: Force emulation of LGDT/LIDT in iff FEP is available

 lib/x86/desc.c   | 29 ++++++++++++++++++++++++-----
 lib/x86/desc.h   | 14 +-------------
 lib/x86/setup.c  |  1 -
 lib/x86/smp.c    |  1 -
 x86/access.c     |  2 +-
 x86/cstart.S     |  3 ++-
 x86/cstart64.S   |  2 +-
 x86/emulator.c   | 11 +++++------
 x86/emulator64.c |  2 +-
 x86/la57.c       |  2 +-
 x86/lam.c        |  2 +-
 x86/msr.c        |  2 +-
 x86/pmu.c        |  2 +-
 x86/vmx_tests.c  |  7 ++++---
 14 files changed, 43 insertions(+), 37 deletions(-)


base-commit: 72d110d8286baf1b355301cc8c8bdb42be2663fb
-- 
2.49.0.1266.g31b7d2e469-goog





[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux