This is set of fixes and new unit tests that I developed for the KVM unit tests. I also did some work to separate the SVM code into a minimal support library so that you could use it from an arbitrary test. Best regards, Maxim Levitsky Maxim Levitsky (16): x86: make irq_enable avoid the interrupt shadow x86: add few helper functions for apic local timer svm: use irq_enable instead of sti/nop svm: make svm_intr_intercept_mix_if/gif test a bit more robust svm: use apic_start_timer/apic_stop_timer instead of open coding it x86: Add test for #SMI during interrupt window x86: Add a simple test for SYSENTER instruction. svm: add nested shutdown test. svm: move svm spec definitions to lib/x86/svm.h svm: move some svm support functions into lib/x86/svm_lib.h svm: add svm_suported svm: move setup_svm to svm_lib.c svm: move vmcb_ident to svm_lib.c svm: rewerite vm entry macros svm: introduce svm_vcpu add IPI loss stress test lib/x86/apic.c | 37 ++ lib/x86/apic.h | 6 + lib/x86/processor.h | 9 +- lib/x86/svm.h | 366 +++++++++++++++++++ lib/x86/svm_lib.c | 168 +++++++++ lib/x86/svm_lib.h | 142 ++++++++ x86/Makefile.common | 4 +- x86/Makefile.x86_64 | 5 + x86/apic.c | 1 - x86/ioapic.c | 1 - x86/ipi_stress.c | 235 +++++++++++++ x86/smm_int_window.c | 125 +++++++ x86/svm.c | 258 ++------------ x86/svm.h | 453 +----------------------- x86/svm_npt.c | 45 +-- x86/svm_tests.c | 724 ++++++++++++++++++++------------------ x86/sysenter.c | 127 +++++++ x86/tscdeadline_latency.c | 1 - x86/unittests.cfg | 15 + x86/vmx_tests.c | 7 - 20 files changed, 1669 insertions(+), 1060 deletions(-) create mode 100644 lib/x86/svm.h create mode 100644 lib/x86/svm_lib.c create mode 100644 lib/x86/svm_lib.h create mode 100644 x86/ipi_stress.c create mode 100644 x86/smm_int_window.c create mode 100644 x86/sysenter.c -- 2.26.3