KVM: when entering real mode aling segment base to 16 bytes
PATCH 1/1 KVM: when entering real mode aling segment base to 16 bytes
VMX checks that base is equal segment shifted 4 bites left. Otherwise guest entry fails.
Signed-off-by Gleb Natapov <[email protected]>
arch/x86/kvm/vmx.c +1 -1
@@ -1736,7 +1736,7 @@ static void fix_rmode_seg(int seg, struct kvm_save_segment *save) save->limit =vmcs_read32 (sf->limit); save->ar =vmcs_read32 (sf->ar_bytes);vmcs_write16 (sf->selector, save->base >>4 ); -vmcs_write32 (sf->base, save->base &0xfffff ); +vmcs_write32 (sf->base, save->base &0xffff0 );vmcs_write32 (sf->limit,0xffff );vmcs_write32 (sf->ar_bytes,0xf3 ); }
--
Gleb.