qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Anyone seeing huge slowdown launching qemu with Linux 2


From: Anthony Liguori
Subject: Re: [Qemu-devel] Anyone seeing huge slowdown launching qemu with Linux 2.6.35?
Date: Wed, 04 Aug 2010 09:22:22 -0500
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.11) Gecko/20100713 Lightning/1.0b1 Thunderbird/3.0.6

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.

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.

Regards,

Anthony Liguori

Linuxboot.bin can work out where to map it so it won't be in any
memory either being used or the target for the copy.

--
                        Gleb.




reply via email to

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