We got this fix, since we
found EPT code cannot boot Windows guest when VMXASSIST is disabled.
At first, we were quite
curious why shadow can boot the same Windows guest, it should met the same SAHF
instructions, which is used in MBR of that Windows image.
At the error point, the regs->rflags
is 0x202, and Xen search the page table for 0x202. For EPT we did not map the
lower end of the monitor page table, that’s why we get hap_page_fault() from
the fixup_page_fault() there.
And for shadow, seems
there is already mapped in the page table, and fortunately the data write to
there doesn’t cause any error. But it’s apparently not correct. J
Keir Fraser [mailto:Keir.Fraser@xxxxxxxxxxxx]
To: Xin, Xiaohui;
Subject: Re: [Xen-devel][PATCH]Fix
a bug in sahf emulation in real mode code
Obviously we hadn’t hit
very many SAHF instructions just yet! Or was this actually causing weird
behaviours for some OSes?
On 5/2/08 07:35, "Xin, Xiaohui" <xiaohui.xin@xxxxxxxxx> wrote:
The patch fixes a bug in
the sahf emulation in real mode code.
Signed-off-by Xin Xiaohui xiaohui.xin@xxxxxxxxx
Signed-off-by Tian Kevin <Kevin.tian@xxxxxxxxx>
Xen-devel mailing list