From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=41293 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OGuNp-0003Kb-Jc for qemu-devel@nongnu.org; Tue, 25 May 2010 09:41:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OGuHs-0000yZ-1Z for qemu-devel@nongnu.org; Tue, 25 May 2010 09:35:17 -0400 Received: from mail-gw0-f45.google.com ([74.125.83.45]:59144) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OGuHr-0000yP-VY for qemu-devel@nongnu.org; Tue, 25 May 2010 09:35:16 -0400 Received: by gwb11 with SMTP id 11so37910gwb.4 for ; Tue, 25 May 2010 06:35:15 -0700 (PDT) Message-ID: <4BFBD20E.5060207@codemonkey.ws> Date: Tue, 25 May 2010 08:35:10 -0500 From: Anthony Liguori MIME-Version: 1.0 Subject: Re: [Qemu-devel] [RFC PATCH 1/1] ceph/rbd block driver for qemu-kvm References: <20100519192222.GD61706@ncolin.muc.de> <4BF5A9D2.5080609@codemonkey.ws> <4BF91937.2070801@redhat.com> <4BFBAE46.5050801@redhat.com> <4BFBB3C1.9020905@redhat.com> <4BFBCFAC.9070807@codemonkey.ws> <4BFBD13C.60605@redhat.com> In-Reply-To: <4BFBD13C.60605@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Avi Kivity Cc: Kevin Wolf , kvm@vger.kernel.org, qemu-devel@nongnu.org, Blue Swirl , ceph-devel@vger.kernel.org, Christian Brunner On 05/25/2010 08:31 AM, Avi Kivity wrote: >> A protocol based mechanism has the advantage of being more robust in >> the face of poorly written block backends so if it's possible to make >> it perform as well as a plugin, it's a preferable approach. > > May be hard due to difficulty of exposing guest memory. If someone did a series to add plugins, I would expect a very strong argument as to why a shared memory mechanism was not possible or at least plausible. I'm not sure I understand why shared memory is such a bad thing wrt KVM. Can you elaborate? Is it simply a matter of fork()? >> >> Plugins that just expose chunks of QEMU internal state directly (like >> BlockDriver) are a really bad idea IMHO. > > Also, we don't want to expose all of the qemu API. We should default > the visibility attribute to "hidden" and expose only select functions, > perhaps under their own interface. And no inlines. Yeah, if we did plugins, this would be a key requirement. Regards, Anthony Liguori