Just for fun, I tried to boot OS/2 Warp 4.0 under KVM (KVM-59 with the 
latest git kernel from Linus as of yesterday, slightly post 2.6.24-rc8.) 
   I found that it crashes very early, apparently because KVM doesn't 
handle an #UD received in user mode.  It appears that OS/2 actually 
provokes an #UD deliberately in real mode, from the disassembly it looks 
like it's trying to probe for the 486 version of cmpxchg (which has a 
different opcode than the 586+ version.)

It looks like the kernel code filters out a very small number of 
real-mode exceptions, and does a KVM exit for all the other ones; the 
userspace code then unconditionally barfs.  This is presumably a 
temporary hack; what is the intended behaviour - for this to be handled 
in-kernel, or in userspace?

        -hpa

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel

Reply via email to