From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=49268 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q2RCV-0005UA-Rh for qemu-devel@nongnu.org; Wed, 23 Mar 2011 12:46:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q2RCU-0007RL-A5 for qemu-devel@nongnu.org; Wed, 23 Mar 2011 12:46:27 -0400 Received: from mx1.redhat.com ([209.132.183.28]:12984) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q2RCT-0007Qx-TI for qemu-devel@nongnu.org; Wed, 23 Mar 2011 12:46:26 -0400 From: Juan Quintela In-Reply-To: <4D8A1C68.6050506@codemonkey.ws> (Anthony Liguori's message of "Wed, 23 Mar 2011 11:14:32 -0500") References: <1300839376-22520-1-git-send-email-aliguori@us.ibm.com> <1300839376-22520-12-git-send-email-aliguori@us.ibm.com> <4D89EABE.50204@codemonkey.ws> <4D8A0947.5080809@codemonkey.ws> <4D8A1C68.6050506@codemonkey.ws> Date: Wed, 23 Mar 2011 17:44:43 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Subject: [Qemu-devel] Re: [PATCH 11/11] test-vmstate: add test case to verify we don't change VMState Reply-To: quintela@redhat.com List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: Peter Maydell , qemu-devel@nongnu.org, Jan Kiszka Anthony Liguori wrote: > On 03/23/2011 10:26 AM, Juan Quintela wrote: >> Anthony Liguori wrote: >>> On 03/23/2011 09:17 AM, Juan Quintela wrote: >>>> Anthony Liguori wrote: >> Once told that, I think that doing a big schema is just wrong, we should >> do an schema for device (or at least for architecture). And no >> hardcoded names (as they are today). It is just trivial to run it for >> x86_64-softmmu/i386-softmmu (the things that should work nowadays). >> >> That way, downstreams can use it for its own "minimal machines". > > I agree, we ought to try to make this schema more consumable. But > some of that is that the schema needs to describe types in a more > meaningful way as there's a lot of weird types right now. I have no clue about qdicts, but it is as easy as: - add a new field that gives the "order", if this is not possible - add a new qdict from order -> name it is not rockets science. I am looking at your patch right now, but my experience with glib, q* and json is inexistant, so I go slowwwwww. >>>> Whatever schema we have should be good enough to allow: >>>> - describe me this blob that contains the state for this device. >>> Schema for VMState is different than what's used for this test case >>> here. I agree, it's a harder problem than just what's being spit out >>> here :-) >> It should be the same IMHO, it will not complicate anything here, and >> just make it more useful. > > Yeah, it will tremendously complicate things because QDict's don't > preserve order. It's all fixable but why wait to have something > that's incredibly useful in tree? see above. >>>> eepro100 at least is missing. Althought I would vote to just change the >>>> eepro100 "naming" to always use eepro100 or similar, and remove the >>>> current hack of having to change the vmstate->name for each different >>>> device. >>> I just ran into eepro100 and my head nearly exploded. >> Being there, know the feeling. >> >>> I set the name to be eepro100-base and then just added that once. A >>> better solution would be to separate out the fields such that we can >>> have a bunch of VMStateDescriptions that all use the same fields. >>> >>> I think we ought to merge VMStateDescription into DeviceInfo. For >>> compatibility, we probably need a vmstate_alias name since the device >>> names don't always map 1-1 with the qdev names. But this should >>> eliminate the problem of reusing VMStateDescriptions for multiple >>> devices. >> Agreed with that. > > Once we settle on the unit tests, I can look at writing some scripts > to do this. I think that we need to improve the code that you sent, but I agree that we can go by parts. Later, Juan.