In a previous series testing was added to verify that when a #PF occured in L2 the exception was routed to the correct place. In this series other exceptions are tested (ie: #GP, #UD, #DE, #DB, #BP, #AC). v4 -> v5: - Removed vmx_exception_test from being able to be run on its own. It can only be run as a part of vmx now. - Removed vmx_exception_test from vmx in unittests.cfg. Having it in that list filters the test from running. With it removed it now runs as a part of vmx. - Split the commit for test_override_guest() and test_set_guest_finished() into two commits. - Fixed up vmx_l2_ac_test() and usermode_callback() based on feedback. v3 -> v4: - Add vmx_exception_test to vmx. v2 -> v3: - Commits 1 and 2 from v2 were accepted upstream (bug fixes). - Moved exception_mnemonic() into a separate commit. - Moved support for running a nested guest multiple times in one test into a separate commit. - Moved the test framework into the same commit as the test itself. - Simplified the test framework and test code based on Sean's recommendations. v1 -> v2: - Add guest_stack_top and guest_syscall_stack_top for aligning L2's stacks. - Refactor test to make it more extensible (ie: Added vmx_exception_tests array and framework around it). - Split test into 2 commits: 1. Test infrustructure. 2. Test cases. Aaron Lewis (4): x86: Make exception_mnemonic() visible to the tests x86: Add support for running a nested guest multiple times in one test x86: Add a helper to allow tests to signal completion without a vmcall() x86: Add test coverage for nested_vmx_reflect_vmexit() testing lib/x86/desc.c | 2 +- lib/x86/desc.h | 1 + x86/vmx.c | 24 ++++++++- x86/vmx.h | 2 + x86/vmx_tests.c | 130 ++++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 156 insertions(+), 3 deletions(-) -- 2.35.0.rc0.227.g00780c9af4-goog