From: David Matlack <dmatlack@google.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: Sean Christopherson <seanjc@google.com>,
David Matlack <dmatlack@google.com>, Peter Xu <peterx@redhat.com>,
Jim Mattson <jmattson@google.com>,
Yang Zhong <yang.zhong@intel.com>,
Wei Wang <wei.w.wang@intel.com>,
Colton Lewis <coltonlewis@google.com>,
Vitaly Kuznetsov <vkuznets@redhat.com>,
Vipin Sharma <vipinsh@google.com>,
Aaron Lewis <aaronlewis@google.com>,
kvm@vger.kernel.org
Subject: [PATCH v3 00/10] KVM: selftests: Fix and clean up emulator_error_test
Date: Mon, 31 Oct 2022 11:00:35 -0700 [thread overview]
Message-ID: <20221031180045.3581757-1-dmatlack@google.com> (raw)
Miscellaneous fixes and cleanups to emulator_error_test. The reason I
started looking at this test is because it fails when TDP is disabled,
which pollutes my test results wheneveer I am testing a new series for
upstream.
v3:
- Collect R-b tags from Sean.
- Drop ModR/M decoding in favor of hard-coded instruction [Sean]
- Fix gspurious gcc warning about using uninitialized variable [Sean]
- Drop assert_ucall_done() helper [Sean]
- Spelling fixes [Sean]
- Use kvm_asm_safe*() to check #PF(RSVD) instead of an exception
handler [Sean]
v2:
- Split emulator_error_test into 2 separate tests to ensure continued
test coverage of KVM emulation in response to EPT violations when
"allow_smaller_maxphyaddr && guest.MAXPHYADDR < host.MAXPHADDR". [Sean]
- Test that flds generates #PF(RSVD) when TDP is disabled [Sean]
v1: https://lore.kernel.org/kvm/20220929204708.2548375-1-dmatlack@google.com/
David Matlack (8):
KVM: selftests: Rename emulator_error_test to
smaller_maxphyaddr_emulation_test
KVM: selftests: Explicitly require instructions bytes
KVM: selftests: Delete dead ucall code
KVM: selftests: Move flds instruction emulation failure handling to
header
KVM: x86/mmu: Use BIT{,_ULL}() for PFERR masks
KVM: selftests: Copy KVM PFERR masks into selftests
KVM: selftests: Expect #PF(RSVD) when TDP is disabled
KVM: selftests: Add a test for KVM_CAP_EXIT_ON_EMULATION_FAILURE
Sean Christopherson (2):
KVM: selftests: Avoid JMP in non-faulting path of KVM_ASM_SAFE()
KVM: selftests: Provide error code as a KVM_ASM_SAFE() output
arch/x86/include/asm/kvm_host.h | 20 +-
tools/testing/selftests/kvm/.gitignore | 3 +-
tools/testing/selftests/kvm/Makefile | 3 +-
.../selftests/kvm/include/x86_64/processor.h | 66 ++++--
.../selftests/kvm/lib/x86_64/processor.c | 1 +
.../kvm/x86_64/emulator_error_test.c | 193 ------------------
.../x86_64/exit_on_emulation_failure_test.c | 42 ++++
.../selftests/kvm/x86_64/flds_emulation.h | 59 ++++++
.../selftests/kvm/x86_64/hyperv_features.c | 3 +-
.../smaller_maxphyaddr_emulation_test.c | 107 ++++++++++
10 files changed, 276 insertions(+), 221 deletions(-)
delete mode 100644 tools/testing/selftests/kvm/x86_64/emulator_error_test.c
create mode 100644 tools/testing/selftests/kvm/x86_64/exit_on_emulation_failure_test.c
create mode 100644 tools/testing/selftests/kvm/x86_64/flds_emulation.h
create mode 100644 tools/testing/selftests/kvm/x86_64/smaller_maxphyaddr_emulation_test.c
base-commit: d5af637323dd156bad071a3f8fc0d7166cca1276
--
2.38.1.273.g43a17bfeac-goog
next reply other threads:[~2022-10-31 18:00 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-31 18:00 David Matlack [this message]
2022-10-31 18:00 ` [PATCH v3 01/10] KVM: selftests: Rename emulator_error_test to smaller_maxphyaddr_emulation_test David Matlack
2022-10-31 18:00 ` [PATCH v3 02/10] KVM: selftests: Explicitly require instructions bytes David Matlack
2022-10-31 18:19 ` Sean Christopherson
2022-10-31 18:00 ` [PATCH v3 03/10] KVM: selftests: Delete dead ucall code David Matlack
2022-10-31 18:19 ` Sean Christopherson
2022-10-31 18:00 ` [PATCH v3 04/10] KVM: selftests: Move flds instruction emulation failure handling to header David Matlack
2022-10-31 18:28 ` Sean Christopherson
2022-11-02 18:17 ` David Matlack
2022-11-02 19:03 ` Sean Christopherson
2022-11-02 22:02 ` David Matlack
2022-10-31 18:00 ` [PATCH v3 05/10] KVM: x86/mmu: Use BIT{,_ULL}() for PFERR masks David Matlack
2022-10-31 18:00 ` [PATCH v3 06/10] KVM: selftests: Copy KVM PFERR masks into selftests David Matlack
2022-10-31 18:28 ` Sean Christopherson
2022-10-31 18:00 ` [PATCH v3 07/10] KVM: selftests: Avoid JMP in non-faulting path of KVM_ASM_SAFE() David Matlack
2022-10-31 18:00 ` [PATCH v3 08/10] KVM: selftests: Provide error code as a KVM_ASM_SAFE() output David Matlack
2022-10-31 18:00 ` [PATCH v3 09/10] KVM: selftests: Expect #PF(RSVD) when TDP is disabled David Matlack
2022-10-31 18:07 ` Sean Christopherson
2022-10-31 18:00 ` [PATCH v3 10/10] KVM: selftests: Add a test for KVM_CAP_EXIT_ON_EMULATION_FAILURE David Matlack
2022-10-31 18:37 ` Sean Christopherson
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=20221031180045.3581757-1-dmatlack@google.com \
--to=dmatlack@google.com \
--cc=aaronlewis@google.com \
--cc=coltonlewis@google.com \
--cc=jmattson@google.com \
--cc=kvm@vger.kernel.org \
--cc=pbonzini@redhat.com \
--cc=peterx@redhat.com \
--cc=seanjc@google.com \
--cc=vipinsh@google.com \
--cc=vkuznets@redhat.com \
--cc=wei.w.wang@intel.com \
--cc=yang.zhong@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox