From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50620) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUb4c-0004Az-4W for qemu-devel@nongnu.org; Tue, 02 Aug 2016 10:53:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bUb4W-0008S4-Mt for qemu-devel@nongnu.org; Tue, 02 Aug 2016 10:53:37 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:44979) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUb4W-0008S0-DC for qemu-devel@nongnu.org; Tue, 02 Aug 2016 10:53:32 -0400 Received: from pps.filterd (m0098410.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.11/8.16.0.11) with SMTP id u72En4dc111949 for ; Tue, 2 Aug 2016 10:53:30 -0400 Received: from e06smtp07.uk.ibm.com (e06smtp07.uk.ibm.com [195.75.94.103]) by mx0a-001b2d01.pphosted.com with ESMTP id 24grry4v25-1 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT) for ; Tue, 02 Aug 2016 10:53:30 -0400 Received: from localhost by e06smtp07.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 2 Aug 2016 15:53:28 +0100 Received: from b06cxnps3075.portsmouth.uk.ibm.com (d06relay10.portsmouth.uk.ibm.com [9.149.109.195]) by d06dlp02.portsmouth.uk.ibm.com (Postfix) with ESMTP id D225C2190023 for ; Tue, 2 Aug 2016 15:52:52 +0100 (BST) Received: from d06av10.portsmouth.uk.ibm.com (d06av10.portsmouth.uk.ibm.com [9.149.37.251]) by b06cxnps3075.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id u72ErQw934209808 for ; Tue, 2 Aug 2016 14:53:26 GMT Received: from d06av10.portsmouth.uk.ibm.com (localhost [127.0.0.1]) by d06av10.portsmouth.uk.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id u72DrSX7032070 for ; Tue, 2 Aug 2016 07:53:28 -0600 Date: Tue, 2 Aug 2016 16:53:24 +0200 From: David Hildenbrand In-Reply-To: <20160802144959.GI3337@thinpad.lan.raisama.net> References: <1470139155-53900-1-git-send-email-dahi@linux.vnet.ibm.com> <1470139155-53900-2-git-send-email-dahi@linux.vnet.ibm.com> <20160802130432.GD3337@thinpad.lan.raisama.net> <20160802152330.119f6892@thinkpad-w530> <20160802140031.GF3337@thinpad.lan.raisama.net> <20160802162755.17ec8ada@thinkpad-w530> <20160802144959.GI3337@thinpad.lan.raisama.net> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Message-Id: <20160802165324.5cee58e0@thinkpad-w530> Subject: Re: [Qemu-devel] [Patch v1 01/29] qmp: details about CPU definitions in query-cpu-definitions List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eduardo Habkost Cc: qemu-devel@nongnu.org, jdenemar@redhat.com, imammedo@redhat.com, cornelia.huck@de.ibm.com, borntraeger@de.ibm.com, fiuczy@linux.vnet.ibm.com, mimu@linux.vnet.ibm.com > On Tue, Aug 02, 2016 at 04:27:55PM +0200, David Hildenbrand wrote: > [...] > > > > > > > > > > I believe in this case we don't need to make it optional: just > > > > > make the field always present and set it to "false" by default. > > > > > > > > That is true for x86, do you know about the other architectures (arm, ppc)? > > > > I'd like to avoid returning false information here for other architectures. > > > > > > As being "static" is not a fact about the existing code, but just > > > a guarantee about what the developers are going to do in the > > > future, static=false just means that the developers didn't make > > > any promises yet (so I don't think it would ever be false > > > information). > > > > > > In other words, I believe we can safely assume a CPU model is not > > > guaranteed to be static unless the maintainers decided to > > > explicitly document it as static (and change the data returned by > > > query-cpu-definitions). > > > > > > (I am assuming that changing it from "false" to "true" in a new > > > QEMU version won't be a problem for anybody.) > > > > > > > Hmm, if "static" means, the model will never be changed, but it was changed in > > the past, this sounds somewhat strange. I would rather say then "information > > is not available" == no guarantee. > > If the CPU model really changed in the past, I think it must be > always set to "false". > > But if it never changed in the past and we never made an explicit > decision about future guarantees, we can set it to "false" today, > and change it to "true" later (after we made a decision). > > > > > But if nobody else sees a problem with that, I can just set it to stable=false > > on all other architectures. > > I think it's OK, as long we set it to "true" only if it never > changed in the past. > That indeed is okay. So I'll change that for arm,ppc and x86 (static=false for all returned definitions). David