On Mon, Jan 12, 2015 at 02:00:24PM -0500, Paolo Bonzini wrote: > > > No, KVM hides the fact that you are in protected mode. EMM386 would be > > > affected, but then it is not impossible for old programs to require > > > disabling it. > > > > I was under the vague impression that kvm uses VM86 mode to run 16bit > > code on some Intel chipsets. The SMSW instruction isn't privileged so > > I didn't think it could be hidden. > > It isn't privileged indeed (nice trick in fact!), but that doesn't matter > for VT-x extensions. > > Old processors let you run the processor in VMX non-root mode (i.e. as a VM) > only in protected mode, so KVM uses VM86 when the processor is in real mode > (and uses an interpreter while in big real mode or during real<->protected > mode > transitions). > > But all the bells and whistles of VMX still apply, including the ability to > fake the value of CR0 for both MOV and [LS]MSW instructions.
Okay, so it fakes real-mode by setting up a protected mode guest with a fake CR0 that is running vm86, and so SMSW still returns a value with PE off? (As opposed to a regular guest that itself launches a VM86 instance, in which case CR0 from SMSW would have PE on.) Good to know - thanks. -Kevin _______________________________________________ SeaBIOS mailing list [email protected] http://www.seabios.org/mailman/listinfo/seabios
