From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:50219) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QjVdt-0004Ga-UH for qemu-devel@nongnu.org; Wed, 20 Jul 2011 08:12:48 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QjVdr-0004hp-FT for qemu-devel@nongnu.org; Wed, 20 Jul 2011 08:12:45 -0400 Received: from mail-yi0-f45.google.com ([209.85.218.45]:39353) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QjVdr-0004ha-2p for qemu-devel@nongnu.org; Wed, 20 Jul 2011 08:12:43 -0400 Received: by yia25 with SMTP id 25so69241yia.4 for ; Wed, 20 Jul 2011 05:12:41 -0700 (PDT) Message-ID: <4E26C636.9010706@codemonkey.ws> Date: Wed, 20 Jul 2011 07:12:38 -0500 From: Anthony Liguori MIME-Version: 1.0 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> In-Reply-To: <1311142251.5871.8.camel@lappy> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [RFC v4 00/58] Memory API List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Sasha Levin Cc: Avi Kivity , kvm@vger.kernel.org, qemu-devel@nongnu.org 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. >