mirror of
https://github.com/torvalds/linux.git
synced 2026-06-04 04:23:35 +02:00
KVM: SVM: Inject #UD for INVLPGA if EFER.SVME=0
INVLPGA should cause a #UD when EFER.SVME is not set. Add a check to
properly inject #UD when EFER.SVME=0.
Fixes: ff092385e8 ("KVM: SVM: Implement INVLPGA")
Cc: stable@vger.kernel.org
Signed-off-by: Kevin Cheng <chengkev@google.com>
Reviewed-by: Yosry Ahmed <yosry.ahmed@linux.dev>
Link: https://patch.msgid.link/20260228033328.2285047-3-chengkev@google.com
[sean: tag for stable@]
Signed-off-by: Sean Christopherson <seanjc@google.com>
This commit is contained in:
parent
c64bc6ed17
commit
d99df02ff4
|
|
@ -2367,6 +2367,9 @@ static int invlpga_interception(struct kvm_vcpu *vcpu)
|
|||
gva_t gva = kvm_rax_read(vcpu);
|
||||
u32 asid = kvm_rcx_read(vcpu);
|
||||
|
||||
if (nested_svm_check_permissions(vcpu))
|
||||
return 1;
|
||||
|
||||
/* FIXME: Handle an address size prefix. */
|
||||
if (!is_long_mode(vcpu))
|
||||
gva = (u32)gva;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user