From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NAmcU-0004EB-Qf for qemu-devel@nongnu.org; Wed, 18 Nov 2009 10:38:58 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NAmcO-00046G-Jf for qemu-devel@nongnu.org; Wed, 18 Nov 2009 10:38:58 -0500 Received: from [199.232.76.173] (port=40177 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NAmcO-000464-A9 for qemu-devel@nongnu.org; Wed, 18 Nov 2009 10:38:52 -0500 Received: from bismuth.trycanta.com ([64.161.78.227]:40781) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NAmcN-0003aN-L7 for qemu-devel@nongnu.org; Wed, 18 Nov 2009 10:38:52 -0500 Received: by gxk23 with SMTP id 23so1358515gxk.2 for ; Wed, 18 Nov 2009 07:38:40 -0800 (PST) MIME-Version: 1.0 In-Reply-To: <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> <20091118142217.GB3193@redhat.com> From: Joshua Oreman Date: Wed, 18 Nov 2009 10:38:20 -0500 Message-ID: <197f0ba30911180738h38ac3917hb2ddae73cda5b766@mail.gmail.com> Subject: Re: [gPXE] [Qemu-devel] Stack corruption problem with SeaBIOS/gPXE under QEMU Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gleb Natapov Cc: gpxe@etherboot.org, Glauber Costa , qemu-devel@nongnu.org, Kevin O'Connor , Avi Kivity , Naphtali Sprei On Wed, Nov 18, 2009 at 9:22 AM, Gleb Natapov wrote: > 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. =A0However, 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 modi= fies >> > itself too. >> >> I don't know, but I wouldn't think so. =A0The issue is only if the >> option rom init code doesn't like getting run twice. =A0(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? I don't know how it's "supposed" to work, but gPXE's ROM init procedure contains code to recompute and store the checksum after it's modified itself. Presumably this is there because some vendor BIOSes expect it. -- Josh