[SeaBIOS] [Qemu-devel] [edk2] (PAM stuff) reset doesn't work on OVMF + SeaBIOS CSM

David Woodhouse dwmw2 at infradead.org
Mon Feb 18 20:04:08 CET 2013


On Mon, 2013-02-18 at 14:00 -0500, Kevin O'Connor wrote:
> On Mon, Feb 18, 2013 at 08:31:01PM +0200, Gleb Natapov wrote:
> > Laszlo explained to me that the problem is that after reset we end up
> > in SeaBIOS reset code instead of OVMF one. This is because kvm starts
> > to execute from ffff0 instead of fffffff0 after reset and this memory
> > location is modifying during CSM loading. Seabios solves this problem
> > by detecting reset condition and copying pristine image of itself from
> > the end of 4G to the end of 1M. OVMF should do the same, but with CSM
> > it does not get control back after reset since Seabios reset vector is
> > executed instead. Why not put OVMF reset code at reset vector in CSM
> > built SeaBIOS to solve the problem?
> 
> Why not fix KVM so that it runs at fffffff0 after reset?
> 
> The only thing SeaBIOS could do is setup the segment registers and
> then jump to fffffff0, which is a bit of work for the same end result.

Well, what SeaBIOS already *does* is bash on the keyboard controller to
cause a reset. Which *ought* to work too; I have a patch to at least fix
*that*, by resetting the PAM setup in the i440.

But yes, KVM definitely ought to be running at 0xfffffff0. This is the
*vm86* code that's broken, not the native KVM version.

-- 
dwmw2
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 6171 bytes
Desc: not available
URL: <http://www.seabios.org/pipermail/seabios/attachments/20130218/ee8fd676/attachment.bin>


More information about the SeaBIOS mailing list