From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NAlQS-0002Xw-Es for qemu-devel@nongnu.org; Wed, 18 Nov 2009 09:22:29 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NAlQM-0002VT-JM for qemu-devel@nongnu.org; Wed, 18 Nov 2009 09:22:27 -0500 Received: from [199.232.76.173] (port=44063 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NAlQM-0002VD-0a for qemu-devel@nongnu.org; Wed, 18 Nov 2009 09:22:22 -0500 Received: from mx1.redhat.com ([209.132.183.28]:44420) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NAlQL-0000LZ-L6 for qemu-devel@nongnu.org; Wed, 18 Nov 2009 09:22:21 -0500 Date: Wed, 18 Nov 2009 16:22:17 +0200 From: Gleb Natapov Subject: Re: [Qemu-devel] Stack corruption problem with SeaBIOS/gPXE under QEMU Message-ID: <20091118142217.GB3193@redhat.com> References: <4AFBEF9A.5010802@redhat.com> <20091114194745.GA12007@morn.localdomain> <4B01555B.1030109@redhat.com> <4B015B6C.4090000@redhat.com> <20091117022620.GA25962@morn.localdomain> <20091118093949.GA18543@redhat.com> <20091118130626.GC9691@morn.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20091118130626.GC9691@morn.localdomain> List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Kevin O'Connor Cc: Glauber Costa , Naphtali Sprei , gpxe@etherboot.org, Avi Kivity , qemu-devel@nongnu.org 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.