KVM: VMX: don't clobber segment AR if emulating invalid state
The ususable bit is important for determining state validity; don't clobber it. Signed-off-by: Avi Kivity <avi@redhat.com>
This commit is contained in:
parent
1872a3f411
commit
9fd4a3b7a4
|
@ -1649,7 +1649,7 @@ static void vmx_get_segment(struct kvm_vcpu *vcpu,
|
|||
var->limit = vmcs_read32(sf->limit);
|
||||
var->selector = vmcs_read16(sf->selector);
|
||||
ar = vmcs_read32(sf->ar_bytes);
|
||||
if (ar & AR_UNUSABLE_MASK)
|
||||
if ((ar & AR_UNUSABLE_MASK) && !emulate_invalid_guest_state)
|
||||
ar = 0;
|
||||
var->type = ar & 15;
|
||||
var->s = (ar >> 4) & 1;
|
||||
|
|
Loading…
Reference in New Issue