On 09/29/2010 04:45 AM, Kevin O'Connor wrote:
On Wed, Sep 29, 2010 at 10:39:45AM +0200, Avi Kivity wrote:
On 09/28/2010 07:54 PM, H. Peter Anvin wrote:
On 09/28/2010 12:27 AM, Avi Kivity wrote:
SMM runs in big real mode, which we're only just starting to support on Intel. Effectively it means we have to emulate every instruction. Dumping the state and restoring it is the simple part.
SMM *starts* in big real mode; there is no requirement to stay in that mode, FWIW
I really hate tailoring the firmware code to kvm capabilities. SMM should work without restrictions on the code you can run in it.
Heh, I really hate real mode, so going into 32bit mode sounds good to me anyway. :-)
Yeah... big real mode is rather expensive in terms of the 66 and 67 prefixes you end up littering the code with just to be in the mode you actually want. Better then to load a GDT, flip CR0.PE, and go to a 32-bit code segment anyway.