Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
KVM: nVMX: Use vmx_need_pf_intercept() when deciding if L0 wants a #PF
commit 18712c1 upstream. Use vmx_need_pf_intercept() when determining if L0 wants to handle a #PF in L2 or if the VM-Exit should be forwarded to L1. The current logic fails to account for the case where #PF is intercepted to handle guest.MAXPHYADDR < host.MAXPHYADDR and ends up reflecting all #PFs into L1. At best, L1 will complain and inject the #PF back into L2. At worst, L1 will eat the unexpected fault and cause L2 to hang on infinite page faults. Note, while the bug was technically introduced by the commit that added support for the MAXPHYADDR madness, the shame is all on commit a0c1343 ("KVM: VMX: introduce vmx_need_pf_intercept"). Fixes: 1dbf5d6 ("KVM: VMX: Add guest physical address check in EPT violation and misconfig") Cc: [email protected] Cc: Peter Shier <[email protected]> Cc: Oliver Upton <[email protected]> Cc: Jim Mattson <[email protected]> Signed-off-by: Sean Christopherson <[email protected]> Message-Id: <[email protected]> Signed-off-by: Paolo Bonzini <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
- Loading branch information