From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony Liguori Subject: Re: [Qemu-devel] [RFC v4 00/58] Memory API Date: Wed, 20 Jul 2011 07:12:38 -0500 Message-ID: <4E26C636.9010706@codemonkey.ws> References: <1310901265-32051-1-git-send-email-avi@redhat.com> <4E2581F4.5090004@codemonkey.ws> <4E25864A.10905@redhat.com> <4E2599BC.9070407@codemonkey.ws> <4E25AB37.2030808@redhat.com> <4E25AC5D.1030205@redhat.com> <4E25EE3A.8030007@codemonkey.ws> <4E264344.1080505@codemonkey.ws> <1311142251.5871.8.camel@lappy> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Avi Kivity , kvm@vger.kernel.org, qemu-devel@nongnu.org To: Sasha Levin Return-path: Received: from mail-yi0-f46.google.com ([209.85.218.46]:39097 "EHLO mail-yi0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751326Ab1GTMMl (ORCPT ); Wed, 20 Jul 2011 08:12:41 -0400 Received: by yia27 with SMTP id 27so61132yia.19 for ; Wed, 20 Jul 2011 05:12:41 -0700 (PDT) In-Reply-To: <1311142251.5871.8.camel@lappy> Sender: kvm-owner@vger.kernel.org List-ID: On 07/20/2011 01: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. I'm not really sure what you mean by that. Coalesced I/O is old. It predates the ioeventfd. I think using a pipe/socket makes a bit more sense. Regards, Anthony Liguori > > 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. >