mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-05-22 23:23:49 +00:00
KVM: nVMX: fix vmentry failure code when L2 state would require emulation
Commit 2bb8cafea8
("KVM: vVMX: signal failure for nested VMEntry if
emulation_required", 2018-03-12) introduces a new error path which does
not set *entry_failure_code. Fix that to avoid a leak of L0 stack to L1.
Reported-by: Radim Krčmář <rkrcmar@redhat.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
e40ff1d660
commit
3184a995f7
1 changed files with 3 additions and 1 deletions
|
@ -11059,8 +11059,10 @@ static int prepare_vmcs02(struct kvm_vcpu *vcpu, struct vmcs12 *vmcs12,
|
||||||
* which means L1 attempted VMEntry to L2 with invalid state.
|
* which means L1 attempted VMEntry to L2 with invalid state.
|
||||||
* Fail the VMEntry.
|
* Fail the VMEntry.
|
||||||
*/
|
*/
|
||||||
if (vmx->emulation_required)
|
if (vmx->emulation_required) {
|
||||||
|
*entry_failure_code = ENTRY_FAIL_DEFAULT;
|
||||||
return 1;
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
/* Shadow page tables on either EPT or shadow page tables. */
|
/* Shadow page tables on either EPT or shadow page tables. */
|
||||||
if (nested_vmx_load_cr3(vcpu, vmcs12->guest_cr3, nested_cpu_has_ept(vmcs12),
|
if (nested_vmx_load_cr3(vcpu, vmcs12->guest_cr3, nested_cpu_has_ept(vmcs12),
|
||||||
|
|
Loading…
Add table
Reference in a new issue