On 07/20/2011 09:10 AM, Sasha Levin wrote:
On Tue, 2011-07-19 at 21:53 -0500, Anthony Liguori wrote:
>  QEMU does use it and it's quite important.  Coalesced MMIO is really
>  about write caching MMIO exits.  It only works with devices that have
>  registers where writing has no side effects.  Moreover, it only really
>  works well when there are lots and lots of writes to these registers
>  simultaneously.
>
>  Couple that with the fact that the buffer is a fixed size and it's
>  really not flexible enough to be useful for a wide variety of devices.
>
>  But for VGA planar mode writes, it works wonders.  It would be terrible
>  to totally lose it.  That said, I'm not at all convinced it's useful for
>  much other than VGA planar mode.

Why was the coalesced approach taken in the first place? When I tried
using it for VGA in /tools/kvm it just seemed to me like a builtin
virtio-memory transport.

Thats why I think planar VGA would be fine if we deprecate coalesced
mmio in favor of either socket ioeventfds or a new virtio-memory device.


virtio is guest visible. coealesced mmio is transparent to the guest. socket ioeventds also do coalescing, but they are more expensive to synchronize - you have to poll the socket whenever a synchronization event happens.

--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to