From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MGD2e-0006xf-Rk for qemu-devel@nongnu.org; Mon, 15 Jun 2009 10:20:09 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MGD2a-0006vk-T2 for qemu-devel@nongnu.org; Mon, 15 Jun 2009 10:20:08 -0400 Received: from [199.232.76.173] (port=60723 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MGD2Z-0006vQ-UE for qemu-devel@nongnu.org; Mon, 15 Jun 2009 10:20:03 -0400 Received: from mail-gx0-f207.google.com ([209.85.217.207]:62940) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MGD2Z-0003kC-LB for qemu-devel@nongnu.org; Mon, 15 Jun 2009 10:20:03 -0400 Received: by gxk3 with SMTP id 3so17781915gxk.10 for ; Mon, 15 Jun 2009 07:20:03 -0700 (PDT) Message-ID: <4A365890.1050106@codemonkey.ws> Date: Mon, 15 Jun 2009 09:20:00 -0500 From: Anthony Liguori MIME-Version: 1.0 Subject: Re: Configuration vs. compat hints [was Re: [Qemu-devel] [PATCHv3 03/13] qemu: add routines to manage PCI capabilities] References: <20090610145540.GI19375@poweredge.glommer> <20090610150129.GC28601@redhat.com> <200906101624.30659.paul@codesourcery.com> <20090610174301.GC7416@shareable.org> <20090610182227.GN28601@redhat.com> <20090610192702.GH7416@shareable.org> <1244796209.16425.20.camel@blaa> <4A326C7E.3020309@codemonkey.ws> <1244822007.30522.68.camel@blaa> <4A327E87.6080005@codemonkey.ws> <1244825333.26769.20.camel@blaa> <4A34ADA9.80709@redhat.com> <1245056955.6891.33.camel@blaa> <4A36314A.8040206@redhat.com> <4A364316.5070402@codemonkey.ws> <1245074447.3222.53.camel@blaa> In-Reply-To: <1245074447.3222.53.camel@blaa> 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: Mark McLoughlin Cc: Carsten Otte , kvm@vger.kernel.org, "Michael S. Tsirkin" , Glauber Costa , Rusty Russell , qemu-devel@nongnu.org, virtualization@lists.linux-foundation.org, Blue Swirl , Christian Borntraeger , Avi Kivity , Paul Brook Mark McLoughlin wrote: > On Mon, 2009-06-15 at 07:48 -0500, Anthony Liguori wrote: > >>> Eventually the >>> default configuration becomes increasingly unusable and you need a new >>> baseline. You must still be able to fall back to the old baseline for >>> older guests. I don't think games with configuration files can hide >>> that. >>> >> -M pc1 >> -M pc2 >> >> etc. >> >> This is pretty easy to maintain with config files. >> > > I think this would be reasonable, but it is essentially just a version > number which you objected to on the basis that it would make > cherry-picking harder for distros. > It doesn't have to be pc1, pc2. It could be pc-with-usb or pc-with-balloon. If a distro cherry picks in such a way that their pc is not a standard QEMU pc, they would add a new PC type that's specific to their distro. > One thing that would be nice with this '-M pc1' thing would be to retain > '-M pc' as a symlink to the latest version. We'd also need a way to read > the symlink too, so that you can query what the current latest version > is and use that in future. > Another option is an explicit -M default which always uses the default machine for the architecture. Likewise, we would need a way to query what the default machine was for an architecture. > How would this machine type version relate to e.g. changing the default > PCI class of virtio-blk? Would we bump the version number of all machine > types can use virtio-blk? > You would introduce a new machine type. For instance, pc-virtio-class-other. The names don't have to look like that, I'm just doing that to make a point. This may mean that you end up with dozens of machine types but you preserve compatibility, which is a good thing. Of course, the flip side is that you make preserving the machine config the duty of the user and we don't maintain compatible machine types. This won't work without a proper config file though so for now, we're stuck maintaining machine types. Regards, Anthony Liguori