From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony Liguori Subject: Re: [Qemu-devel] [RFC PATCH 1/1] ceph/rbd block driver for qemu-kvm Date: Tue, 25 May 2010 08:35:10 -0500 Message-ID: <4BFBD20E.5060207@codemonkey.ws> 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> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Kevin Wolf , Blue Swirl , ceph-devel@vger.kernel.org, Christian Brunner , kvm@vger.kernel.org, qemu-devel@nongnu.org To: Avi Kivity Return-path: In-Reply-To: <4BFBD13C.60605@redhat.com> Sender: ceph-devel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org 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