From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52155) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1btsjX-0006bN-GM for qemu-devel@nongnu.org; Tue, 11 Oct 2016 04:48:31 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1btsj0-0002HQ-RJ for qemu-devel@nongnu.org; Tue, 11 Oct 2016 04:48:22 -0400 Received: from mx1.redhat.com ([209.132.183.28]:39740) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1btsj0-0002GP-Gl for qemu-devel@nongnu.org; Tue, 11 Oct 2016 04:47:50 -0400 References: <20161005130657.3399-1-rkrcmar@redhat.com> <20161005130657.3399-8-rkrcmar@redhat.com> <20161006145142.GR3877@thinpad.lan.raisama.net> <20161006183130-mutt-send-email-mst@kernel.org> <20161006155525.GB19924@potion> <20161010174603.GG22870@thinpad.lan.raisama.net> <46f7ffae-e906-825a-a60b-32cdf2c27e1f@redhat.com> <20161011082318.GB14917@redhat.com> From: Paolo Bonzini Message-ID: Date: Tue, 11 Oct 2016 10:47:43 +0200 MIME-Version: 1.0 In-Reply-To: <20161011082318.GB14917@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] Deprecating old machine-types (was Re: [PATCH v4 7/8] intel_iommu: keep buggy EIM enabled in 2.7 machine type) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Daniel P. Berrange" Cc: Eduardo Habkost , =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= , Igor Mammedov , Richard Henderson , qemu-devel@nongnu.org, Peter Xu , "Michael S. Tsirkin" On 11/10/2016 10:23, Daniel P. Berrange wrote: > On Tue, Oct 11, 2016 at 09:36:29AM +0200, Paolo Bonzini wrote: >> >> >> On 10/10/2016 19:46, Eduardo Habkost wrote: >>> I don't think we have a plan, but I would support deprecating and >>> removing very old machine-types. The question is: how old is too >>> old? >>> >>> For reference, the commits and dates when each machine-type was >>> added are below: >>> >>> machine commit commit date release release date >>> pc-0.10 e8b2a1c6 Jul 8 2009 v0.11.0 Sep 22 2009 >>> pc-0.13 95747581 Jul 22 2009 v0.12.0 Dec 19 2009 >>> pc-0.12 2cae6f5e Jan 8 2010 v0.13.0 Oct 14 2010 >>> pc-0.13 d76fa62d Feb 15 2010 v0.13.0 Oct 14 2010 >>> pc-0.14 b903a0f7 Nov 11 2010 v0.14.0 Feb 16 2011 >>> pc-0.15 ce01a508 Dec 18 2011 v1.1.0 Jun 1 2012 >>> pc-1.0 19857e62 Nov 7 2011 v1.0 Dec 1 2011 >>> pc-1.1 382b3a68 Feb 21 2012 v1.1.0 Jun 1 2012 >>> pc-1.2 f1dacf1c Jun 11 2012 v1.2.0 Sep 5 2012 >>> pc-1.3 f4306941 Sep 13 2012 v1.3.0 Dec 3 2012 >> >> Anything before pc-1.3 has issues with migration due to the introduction >> of the memory API. Basically, 0xf0000-0xfffff is not migrated >> correctly, and the result is that rebooting after migration causes the >> guest to crash. So that could be a reasonable place to draw the line at. > > That is a one-off special case - I think it would be desirable to come up > with a general rule we can follow indefinitely, which we can apply at the > start of each release cycle to purge old stuff. > > If we wanted to pick pc-1.3 as the starting point and generalize it, we > choose declare we'll support machine types for 4 years. Or we could do > it in terms of number of releases - eg we'll support the last N releases > (for 3/releases per year cadence, that'd be N == 12) I don't know, it's already boring to create a new machine every time... I would hate to have to remove one or more machine types every three months. Consider that adding new machine types will hardly introduce bugs; what causes bugs is removing them. Paolo