qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Stack corruption problem with SeaBIOS/gPXE under QEMU


From: Gleb Natapov
Subject: Re: [Qemu-devel] Stack corruption problem with SeaBIOS/gPXE under QEMU
Date: Wed, 18 Nov 2009 16:22:17 +0200

On Wed, Nov 18, 2009 at 08:06:26AM -0500, Kevin O'Connor wrote:
> On Wed, Nov 18, 2009 at 11:39:49AM +0200, Gleb Natapov wrote:
> > On Mon, Nov 16, 2009 at 09:26:20PM -0500, Kevin O'Connor wrote:
> > > I do see an issue if SeaBIOS's reboot vector is called (eg, by using
> > > "sendkey ctrl-alt-delete" while still in the bios) because seabios
> > > allows gpxe to modify itself, and on a seabios only reboot the gpxe
> > > rom isn't recopied and gpxe therefore gets confused.  However, on a
> > > linux invoked reboot, it looks like a full machine reset occurs and
> > > qemu recopies the gpxe rom, so that doesn't seem to be an issue.
> > > 
> > Do we have the same problem with tpr patching rom (vapic,bin)? It modifies
> > itself too.
> 
> I don't know, but I wouldn't think so.  The issue is only if the
> option rom init code doesn't like getting run twice.  (Gpxe allocates
If rom modifies itself its checksum changes so SeaBIOS thinks that rom
is invalid and does not call its init code second time. Is this correct?

> high memory via pmm, relocates itself there, and shrinks its option
> rom size - on the second option rom init call the PMM allocation is
> lost and its option rom has been shrunk - it rightfully can't handle
> that.)  I don't think the vapic would have the same issue - would it?
> 
> Ideally, I think SeaBIOS should detect a second call to "post" and try
> to issue a machine reboot.  That should fix this issue.  (To be clear
> though, I don't think this is the cause of Avi's Fedora reboot hang.)
> 
> -Kevin

--
                        Gleb.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]