From: Sean Christopherson <seanjc@google.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: kvm@vger.kernel.org, Yang Weijiang <weijiang.yang@intel.com>,
Manali Shukla <manali.shukla@amd.com>,
Jim Mattson <jmattson@google.com>
Subject: [kvm-unit-tests GIT PULL] x86: Fixes, cleanups, and new sub-tests
Date: Thu, 21 Jul 2022 21:13:17 +0000 [thread overview]
Message-ID: <YtnBbb1pleBpIl2J@google.com> (raw)
Please pull/merge a pile of x86 cleanups and fixes, most of which have been
waiting for review/merge for quite some time. The only non-trivial changes that
haven't been posted are the massaged version of the PMU cleanup patches.
Note, the very last commit will fail spectacularly on kvm/queue due to a KVM
bug: https://lore.kernel.org/all/20220607213604.3346000-4-seanjc@google.com.
Other than that, tested on Intel and AMD, both 64-bit and 32-bit.
Thanks!
The following changes since commit 7b2e41767bb8caf91972ee32e4ca85ec630584e2:
Merge branch 's390x-next-2022-07' into 'master' (2022-07-21 14:41:56 +0000)
are available in the Git repository at:
https://github.com/sean-jc/kvm-unit-tests.git tags/for_paolo
for you to fetch changes up to ff081d8ad4a4e53a9d129cde1bc9f249d65cdf32:
nVMX: Add subtest to verify VMXON succeeds/#UDs on good/bad CR0/CR4 (2022-07-21 13:33:16 -0700)
----------------------------------------------------------------
x86 fixes, cleanups, and new sub-tests:
- Bug fix for the VMX-preemption timer expiration test
- Refactor SVM tests to split out NPT tests
- Add tests for MCE banks to MSR test
- Add SMP Support for x86 UEFI tests
- x86: nVMX: Add VMXON #UD test (and exception cleanup)
- PMU cleanup and related nVMX bug fixes
----------------------------------------------------------------
Jim Mattson (1):
x86: VMX: Fix the VMX-preemption timer expiration test
Manali Shukla (5):
x86: nSVM: Extract core functionality of main() to helper run_svm_tests()
x86: Add flags to control behavior of set_mmu_range()
x86: nSVM: Build up the nested page table dynamically
x86: nSVM: Correct indentation for svm.c
x86: nSVM: Correct indentation for svm_tests.c
Sean Christopherson (21):
x86: nSVM: Move all nNPT test cases from svm_tests.c to a separate file.
x86: nSVM: Run non-NPT nSVM tests with PT_USER_MASK enabled
x86: nSVM: Add macros to create SVM's NPT tests, reduce boilerplate code
x86: msr: Take the MSR index and name separately in low level helpers
x86: msr: Add tests for MCE bank MSRs
x86: Use an explicit magic string to detect that dummy.efi passes
x86: Rename ap_init() to bringup_aps()
x86: Add ap_online() to consolidate final "AP is alive!" code
x86: Use BIT() to define architectural bits
x86: Replace spaces with tables in processor.h
x86: Use "safe" terminology instead of "checking"
x86: Use "safe" helpers to implement unsafe CRs accessors
x86: Provide result of RDMSR from "safe" variant
nVMX: Check the results of VMXON/VMXOFF in feature control test
nVMX: Check result of VMXON in INIT/SIPI tests
nVMX: Wrap VMXON in ASM_TRY(), a.k.a. in exception fixup
nVMX: Simplify test_vmxon() by returning directly on failure
x86: Drop cpuid_osxsave(), just use this_cpu_has(X86_FEATURE_OSXSAVE)
nVMX: Move wrappers of this_cpu_has() to nVMX's VM-Exit test
nVMX: Rename monitor_support() to this_cpu_has_mwait(), drop #define
nVMX: Add subtest to verify VMXON succeeds/#UDs on good/bad CR0/CR4
Varad Gautam (10):
x86: Share realmode trampoline between i386 and x86_64
x86: Move ap_init() to smp.c
x86: Move load_idt() to desc.c
x86: desc: Split IDT entry setup into a generic helper
x86: Move load_gdt_tss() to desc.c
x86: efi: Provide a stack within testcase memory
x86: efi: Provide percpu storage
x86: Move 32-bit => 64-bit transition code to trampolines.S
x86: efi, smp: Transition APs from 16-bit to 32-bit mode
x86: Provide a common 64-bit AP entrypoint for EFI and non-EFI
Yang Weijiang (4):
x86: nVMX: Use report_skip() to print messages when VMX tests are skipped
x86: Use helpers to fetch supported perf capabilities
x86: Skip perf related tests when platform cannot support
x86: Check platform pmu capabilities before run lbr tests
lib/alloc_page.h | 3 +
lib/x86/apic.c | 2 -
lib/x86/asm/setup.h | 3 +
lib/x86/desc.c | 46 +-
lib/x86/desc.h | 5 +-
lib/x86/processor.h | 455 +++++++++++--------
lib/x86/setup.c | 82 +++-
lib/x86/smp.c | 150 ++++++-
lib/x86/smp.h | 11 +
lib/x86/vm.c | 22 +-
lib/x86/vm.h | 10 +
scripts/runtime.bash | 2 +-
x86/Makefile.common | 2 +
x86/Makefile.x86_64 | 2 +
x86/access.c | 8 +-
x86/cstart.S | 48 +-
x86/cstart64.S | 125 +-----
x86/dummy.c | 8 +
x86/efi/crt0-efi-x86_64.S | 3 +
x86/efi/efistart64.S | 79 ++--
x86/la57.c | 2 +-
x86/msr.c | 113 ++++-
x86/pcid.c | 28 +-
x86/pmu.c | 116 ++---
x86/pmu_lbr.c | 35 +-
x86/rdpru.c | 4 +-
x86/svm.c | 219 ++++-----
x86/svm.h | 5 +-
x86/svm_npt.c | 380 ++++++++++++++++
x86/svm_tests.c | 3365 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------------
x86/trampolines.S | 129 ++++++
x86/unittests.cfg | 6 +
x86/vmexit.c | 12 +-
x86/vmx.c | 141 ++++--
x86/vmx.h | 31 +-
x86/vmx_tests.c | 136 +++---
x86/xsave.c | 31 +-
37 files changed, 3161 insertions(+), 2658 deletions(-)
create mode 100644 x86/svm_npt.c
create mode 100644 x86/trampolines.S
next reply other threads:[~2022-07-21 21:13 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-21 21:13 Sean Christopherson [this message]
2022-07-23 1:14 ` [kvm-unit-tests GIT PULL] x86: Fixes, cleanups, and new sub-tests Sean Christopherson
2022-07-25 16:56 ` Sean Christopherson
2022-07-25 20:35 ` Sean Christopherson
2022-11-14 21:03 Sean Christopherson
2022-11-17 13:52 ` Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YtnBbb1pleBpIl2J@google.com \
--to=seanjc@google.com \
--cc=jmattson@google.com \
--cc=kvm@vger.kernel.org \
--cc=manali.shukla@amd.com \
--cc=pbonzini@redhat.com \
--cc=weijiang.yang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.