From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=38730 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ogf7I-0001pA-6h for qemu-devel@nongnu.org; Wed, 04 Aug 2010 10:38:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Ogf7H-0001JQ-0s for qemu-devel@nongnu.org; Wed, 04 Aug 2010 10:38:48 -0400 Received: from mx1.redhat.com ([209.132.183.28]:48287) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Ogf7G-0001JH-P1 for qemu-devel@nongnu.org; Wed, 04 Aug 2010 10:38:46 -0400 Date: Wed, 4 Aug 2010 17:38:42 +0300 From: Gleb Natapov Subject: Re: [Qemu-devel] Anyone seeing huge slowdown launching qemu with Linux 2.6.35? Message-ID: <20100804143842.GX10499@redhat.com> References: <4C588804.5060803@redhat.com> <4C590046.2020705@redhat.com> <4C591D48.9080301@redhat.com> <4C592218.3000901@redhat.com> <4C596549.1070109@codemonkey.ws> <20100804130709.GL10499@redhat.com> <4C5967D8.7080707@codemonkey.ws> <20100804132408.GG28523@amd.home.annexia.org> <20100804132625.GN10499@redhat.com> <4C59779E.3060000@codemonkey.ws> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4C59779E.3060000@codemonkey.ws> List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: qemu-devel@nongnu.org, Gerd Hoffmann , "Richard W.M. Jones" , kvm@vger.kernel.org, Avi Kivity On Wed, Aug 04, 2010 at 09:22:22AM -0500, Anthony Liguori wrote: > On 08/04/2010 08:26 AM, Gleb Natapov wrote: > >On Wed, Aug 04, 2010 at 02:24:08PM +0100, Richard W.M. Jones wrote: > >>On Wed, Aug 04, 2010 at 08:15:04AM -0500, Anthony Liguori wrote: > >>>On 08/04/2010 08:07 AM, Gleb Natapov wrote: > >>>>On Wed, Aug 04, 2010 at 08:04:09AM -0500, Anthony Liguori wrote: > >>>>>On 08/04/2010 03:17 AM, Avi Kivity wrote: > >>>>>>For playing games, there are three options: > >>>>>>- existing fwcfg > >>>>>>- fwcfg+dma > >>>>>>- put roms in 4GB-2MB (or whatever we decide the flash size is) > >>>>>>and have the BIOS copy them > >>>>>> > >>>>>>Existing fwcfg is the least amount of work and probably > >>>>>>satisfactory for isapc. fwcfg+dma is IMO going off a tangent. > >>>>>>High memory flash is the most hardware-like solution, pretty easy > >>>>>>from a qemu point of view but requires more work. > >>>>> > >>>>>The only trouble I see is that high memory isn't always available. > >>>>>If it's a 32-bit PC and you've exhausted RAM space, then you're only > >>>>>left with the PCI hole and it's not clear to me if you can really > >>>>>pull out 100mb of space there as an option ROM without breaking > >>>>>something. > >>>>> > >>>>We can map it on demand. Guest tells qemu to map rom "A" to address X by > >>>>writing into some io port. Guest copies rom. Guest tells qemu to unmap > >>>>it. Better then DMA interface IMHO. > >>>That's what I thought too, but in a 32-bit guest using ~3.5GB of > >>>RAM, where can you safely get 100MB of memory to full map the ROM? > >>>If you're going to map chunks at a time, you are basically doing > >>>DMA. > >>It's boot time, so you can just map it over some existing RAM surely? > >Not with current qemu. This is broken now. > > But even if it wasn't it can potentially create havoc. I think we > currently believe that the northbridge likely never forwards RAM > access to a device so this doesn't fit how hardware would work. > Good point. > More importantly, BIOSes and ROMs do very funny things with RAM. > It's not unusual for a ROM to muck with the e820 map to allocate RAM > for itself which means there's always the chance that we're going to > walk over RAM being used for something else. > ROM does not muck with the e820. It uses PMM to allocate memory and the memory it gets is marked as reserved in e820 map. -- Gleb.