Message ID | 20211110212001.3745914-1-aaronlewis@google.com (mailing list archive) |
---|---|
Headers | show |
Series | Run access test in an L2 guest | expand |
On 11/10/21 22:19, Aaron Lewis wrote: > The motivation behind this change is to test the routing logic when an > exception occurs in an L2 guest and ensure the exception goes to the > correct place. For example, if an exception occurs in L2, does L1 want > to get involved, or L0, or do niether of them care about it and leave > it to L2 to handle. Test that the exception doesn't end up going to L1 > When L1 didn't ask for it. This was occurring before commit 18712c13709d > ("KVM: nVMX: Use vmx_need_pf_intercept() when deciding if L0 wants a #PF") > fixed the issue. Without that fix, running > vmx_pf_exception_test_reduced_maxphyaddr with allow_smaller_maxphyaddr=Y > would have resulted in the test failing with the following error: > > x86/vmx_tests.c:10698: assert failed: false: Unexpected exit to L1, > exit_reason: VMX_EXC_NMI (0x0) > > This series only tests the routing logic for #PFs. A future > series will address other exceptions, however, getting #PF testing in > place is a big enough chunk that the other exceptions will be submitted > seperately (in a future series). > > This series is dependant on Paolo's changes (inlcuded). Without them, > running ac_test_run() on one of the userspace test fails. Of note: the > commit ("x86: get rid of ring0stacktop") has been updated to include a fix > for a compiler error to get it building on clang. > > This series is also dependant on the commit ("x86: Look up the PTEs rather > than assuming them"). This was sent out for review seperately, however, > it is needed to get ac_test_run() running on a different cr3 than the one > access_test runs on, so it is included here as well. This is also v2 of > that commit. While preparing this series a review came in, so I just > included the changes here. Queued, thanks. Paolo