From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55368) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UtZ2N-00083q-H0 for qemu-devel@nongnu.org; Mon, 01 Jul 2013 04:00:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UtZ2L-0000C5-JM for qemu-devel@nongnu.org; Mon, 01 Jul 2013 04:00:39 -0400 Received: from mail-wg0-x230.google.com ([2a00:1450:400c:c00::230]:43526) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UtZ2L-0000Bu-AY for qemu-devel@nongnu.org; Mon, 01 Jul 2013 04:00:37 -0400 Received: by mail-wg0-f48.google.com with SMTP id f11so3381043wgh.3 for ; Mon, 01 Jul 2013 01:00:36 -0700 (PDT) Date: Mon, 1 Jul 2013 10:00:33 +0200 From: Stefan Hajnoczi Message-ID: <20130701080033.GA7105@stefanha-thinkpad.redhat.com> References: <1371576844-28743-1-git-send-email-mjt@msgid.tls.msk.ru> <51D04EA6.6020806@suse.de> <51D05090.40304@msgid.tls.msk.ru> <51D06198.6090100@msgid.tls.msk.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <51D06198.6090100@msgid.tls.msk.ru> Subject: Re: [Qemu-devel] [RFC PATCH 0/4] per-object libraries List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: Paolo Bonzini , Anthony Liguori , Michael Tokarev , Andreas =?iso-8859-1?Q?F=E4rber?= , qemu-devel@nongnu.org On Sun, Jun 30, 2013 at 08:49:28PM +0400, Michael Tokarev wrote: > 30.06.2013 19:51, Peter Maydell wrote: > > On 30 June 2013 16:36, Michael Tokarev wrote: > >> I don't understand. I for one like to see a plugins system used in qemu, > >> and except of the build system everything else is easy (and even nice, > >> there's even no need to load all plugins at startup as was initially > >> suggested). But for this to work, we really need to separate libs > >> used only by plugins from the main lot, -- or else there's just no > >> reason to build plugins in the first place. > > > > So, why do we want to build things as plugins? Neither of the > > cover letters to your two patch series nor Anthony's wiki page > > on modules actually give the rationale. > > I just updated the wiki page a bit (which is at > http://wiki.qemu.org/Features/Modules btw). > > The main rationale so far is to allow separate packaging of separate > features for downstreams, to reduce the need to install all dependent > libraries/packages. This is more than just a small packaging clean-up. It makes the difference between shipping and not shipping niche features. For features like Ceph, Sheepdog, etc the majority of downstream users may be against the dependency. So the QEMU package gets built without these features! Modules allow downstreams to cleanly package QEMU features and users can decide which features/dependencies they wish to bring in. For anyone jumping into the thread here: modules are not a stable ABI and out-of-tree modules will not be supported in any way. Stefan