From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:39348) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SAQ0W-0001ZP-5Q for qemu-devel@nongnu.org; Wed, 21 Mar 2012 14:11:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SAQ0P-00008w-TI for qemu-devel@nongnu.org; Wed, 21 Mar 2012 14:11:35 -0400 Date: Wed, 21 Mar 2012 20:11:27 +0200 From: "Michael S. Tsirkin" Message-ID: <20120321181127.GA25168@redhat.com> References: <20120320004206.GB22089@truffala.fritz.box> <20120320101947.GA19542@truffala.fritz.box> <20120321112615.GA15090@stefanha-thinkpad.localdomain> <20120321130852.GC21467@redhat.com> <4F69E8E1.8050004@codemonkey.ws> <20120321151043.GA22707@redhat.com> <4F69F05B.5010500@codemonkey.ws> <20120321161155.GA23460@redhat.com> <4F6A014A.90704@codemonkey.ws> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4F6A014A.90704@codemonkey.ws> Subject: Re: [Qemu-devel] [PATCH] Remove PCI class code from virtio balloon device List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: qemu-trivial@nongnu.org, Stefan Hajnoczi , Rusty Russell , qemu-devel@nongnu.org On Wed, Mar 21, 2012 at 11:26:50AM -0500, Anthony Liguori wrote: > On 03/21/2012 11:11 AM, Michael S. Tsirkin wrote: > >On Wed, Mar 21, 2012 at 10:14:35AM -0500, Anthony Liguori wrote: > >>On 03/21/2012 10:10 AM, Michael S. Tsirkin wrote: > >>>On Wed, Mar 21, 2012 at 09:42:41AM -0500, Anthony Liguori wrote: > >>>>On 03/21/2012 08:08 AM, Michael S. Tsirkin wrote: > >>>>>On Wed, Mar 21, 2012 at 11:26:15AM +0000, Stefan Hajnoczi wrote: > >>>>>>On Tue, Mar 20, 2012 at 09:19:47PM +1100, David Gibson wrote: > >>>>>>Looking at hw/pc_piix.c there are QEMUMachine types for each QEMU > >>>>>>release. Legacy machine types (e.g. pc_machine_v0_14) have a > >>>>>>.compat_props array that can override qdev properties. > >>>>>> > >>>>>>Perhaps Michael Tsirkin or someone else can comment on how to wire up > >>>>>>hw/virtio-pci.c so that the class code can be overridden. > >>>>>> > >>>>>>Stefan > >>>>> > >>>>>afaik we already let users over-write it for some other pci devices, > >>>>>look there for examples. > >>>> > >>>> From hw/pc_piix.c: > >>>> > >>>> .name = "pc-0.10", > >>>> .desc = "Standard PC, qemu 0.10", > >>>> .init = pc_init_pci_no_kvmclock, > >>>> .max_cpus = 255, > >>>> .compat_props = (GlobalProperty[]) { > >>>> { > >>>> .driver = "virtio-blk-pci", > >>>> .property = "class", > >>>> .value = stringify(PCI_CLASS_STORAGE_OTHER), > >>>> },{ > >>>> > >>>>And from the earlier part of the thread, yes, it's imperative that > >>>>we do not change anything in the PCI configuration space for older > >>>>pc versions regardless of whether it may or may not work. > >>>> > >>>>Certain guests (like Windows) use a complex fingerprinting algorithm > >>>>to determine when hardware changes. It can be hard to detect in > >>>>simple testing because it's based on a threshold. > >>>> > >>>>Regards, > >>>> > >>>>Anthony Liguori > >>> > >>>Which reminds me - qemu sticks the release version in > >>>guest visible places like CPU version. > >>>This is wrong and causes windows guests to print messages > >>>about driver updates when you switch. > >>>We should find all these places and stop doing this. > >> > >>We could probably get away with doing a query/replace of > >>QEMU_VERSION with qemu_get_version(), make version a static variable > >>that defaults to QEMU_VERSION, and then provide a way for machines > >>to override it. > >> > >>Then pc-0.10 could report a version of 0.10. > >> > >>Regards, > >> > >>Anthony Liguori > > > >Frankly I don't see value in making it visible to the user, > >at all. We are just triggering windows reactivations > >without any user benefit. Why not return a fixed value there > >to avoid that? > > I don't see a problem making it fixed for 1.1, but for 1.0 and > older, we should expose what we were supposed to expose. > We need to fix the bug first, then we can change the behavior. > > Regards, > > Anthony Liguori > > > > >>>>> > >>>>> Makes sense to me.