From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=58576 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q7ugY-0004SP-RZ for qemu-devel@nongnu.org; Thu, 07 Apr 2011 15:16:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q7ugX-0008T6-Eo for qemu-devel@nongnu.org; Thu, 07 Apr 2011 15:16:06 -0400 Received: from mx1.redhat.com ([209.132.183.28]:56841) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q7ugX-0008St-5e for qemu-devel@nongnu.org; Thu, 07 Apr 2011 15:16:05 -0400 Date: Thu, 7 Apr 2011 22:16:00 +0300 From: Gleb Natapov Subject: Re: [Qemu-devel] How does the QEMU load the binary files bios.bin and vgabios-cirrus.bin? Message-ID: <20110407191600.GF7100@redhat.com> References: <4D9DBC05.8010400@codemonkey.ws> <20110407153106.GA7100@redhat.com> <4D9DDB80.8090905@codemonkey.ws> <20110407155142.GB7100@redhat.com> <4D9DE166.9080001@codemonkey.ws> <4D9E045A.90500@codemonkey.ws> <20110407184417.GD7100@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: quoted-printable In-Reply-To: List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Jordan Justen Cc: kvm-devel , Bei Guan , QEMU Developers On Thu, Apr 07, 2011 at 12:03:41PM -0700, Jordan Justen wrote: > On Thu, Apr 7, 2011 at 11:44, Gleb Natapov wrote: > > On Thu, Apr 07, 2011 at 01:37:14PM -0500, Anthony Liguori wrote: > >> >>>>The CS base starts out at 0xf0000 and IP is 0xfff0. =9AThat gives a > >> >>>>real address of 0xffff0. =9AThis is usually a trampoline to somewh= ere > >> >>>>else in the space. > >> >>>CS descriptor and CS selector don't have to be in sync (big real mo= de). > >> >>Indeed. > >> >Another place this will often be seen is SMM, as the SMBASE can easily > >> >be> =9A1MB, but the SMM entry is in 16 bit mode. > >> > >> KVM doesn't support SMM although that's not because of this. =9AKVM > >> doesn't allow execution of ROM memory which makes it difficult to > >> implement PAM in the way it's intended to be implemented. =9AThis > >> makes SMM a bit tricky to make work. =9ASince there's never really > >> been a pressing need to support SMM, to my knowledge, noone has even > >> tried. > >> > > KVM allows to execute ROM memory (BIOS and option roms run this way). It > > just makes it indistinguishable from RAM, but read only memory slot > > support shouldn't be too hard. Why ability to execute ROM memory is > > needed to support SMM though? >=20 > True. >=20 > The only possible requirement is to 'hide SMRAM' when not in SMM mode. > Even this is chipset specific, and arguable depending on the goals of > SMM support in that system. (Although, generally, hiding SMRAM is a > requirement. :) >=20 > But, Anthony's point ('there's never really been a pressing need to > support SMM') is probably the most important here, as I can't see a > compelling use for SMM in QEMU. >=20 Yeah, that is probably the main reason. Although lately there was a proposition to use SMM in seabios to access MMIO bar of USB device from 16bit mode. Do not remember details exactly. But I, personally, will be very glad to not implement SMM support for KVM ;) -- Gleb.