From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54907) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z7QBw-0006jM-2Z for qemu-devel@nongnu.org; Tue, 23 Jun 2015 11:32:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Z7QBr-0004No-15 for qemu-devel@nongnu.org; Tue, 23 Jun 2015 11:32:52 -0400 Received: from mx1.redhat.com ([209.132.183.28]:53151) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z7QBq-0004Ng-ST for qemu-devel@nongnu.org; Tue, 23 Jun 2015 11:32:46 -0400 Date: Tue, 23 Jun 2015 17:32:42 +0200 From: "Michael S. Tsirkin" Message-ID: <20150623173048-mutt-send-email-mst@redhat.com> References: <1433790460-30679-1-git-send-email-ehabkost@redhat.com> <20150608201835.GM3525@orkuz.home> <558951C0.3050806@suse.de> <20150623150828.GD3134@thinpad.lan.raisama.net> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline In-Reply-To: <20150623150828.GD3134@thinpad.lan.raisama.net> Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH 0/2] target-i386: "custom" CPU model + script to dump existing CPU models List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eduardo Habkost Cc: mimu@linux.vnet.ibm.com, qemu-devel@nongnu.org, Alexander Graf , borntraeger@de.ibm.com, Igor Mammedov , Paolo Bonzini , Jiri Denemark , Andreas =?iso-8859-1?Q?F=E4rber?= , rth@twiddle.net On Tue, Jun 23, 2015 at 12:08:28PM -0300, Eduardo Habkost wrote: > On Tue, Jun 23, 2015 at 02:32:00PM +0200, Andreas F=E4rber wrote: > > Am 08.06.2015 um 22:18 schrieb Jiri Denemark: > > >> To help libvirt in the transition, a x86-cpu-model-dump script is = provided, > > >> that will generate a config file that can be loaded using -readcon= fig, based on > > >> the -cpu and -machine options provided in the command-line. > > >=20 > > > Thanks Eduardo, I never was a big fan of moving (or copying) all th= e CPU > > > configuration data to libvirt, but now I think it actually makes se= nse. > > > We already have a partial copy of CPU model definitions in libvirt > > > anyway, but as QEMU changes some CPU models in some machine types (= and > > > libvirt does not do that) we have no real control over the guest CP= U > > > configuration. While what we really want is full control to enforce > > > stable guest ABI. > >=20 > > That sounds like FUD to me. Any concrete data points where QEMU does = not > > have a stable ABI for x86 CPUs? That's what we have the pc*-x.y machi= nes > > for. >=20 > What Jiri is saying that the CPUs change depending on -mmachine, not > that the ABI is broken by a given machine. >=20 > The problem here is that libvirt needs to provide CPU models whose > runnability does not depend on the machine-type. If users have a VM tha= t > is running in a host and the VM machine-type changes, How does it change, and why? > the VM should be > still runnable in that host. QEMU doesn't provide that, our CPU models > may change when we introduce new machine-types, so we are giving them a > mechanism that allows libvirt to implement the policy they need. I don't mind wrt CPU specifically, but we absolutely do change guest ABI in many ways when we change machine types. > --=20 > Eduardo