From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:34902) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RXbAJ-0002uI-I4 for qemu-devel@nongnu.org; Mon, 05 Dec 2011 11:13:16 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RXbAA-0006kE-OZ for qemu-devel@nongnu.org; Mon, 05 Dec 2011 11:13:15 -0500 Received: from mail-iy0-f173.google.com ([209.85.210.173]:38943) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RXbAA-0006k7-EK for qemu-devel@nongnu.org; Mon, 05 Dec 2011 11:13:06 -0500 Received: by iakk32 with SMTP id k32so10127551iak.4 for ; Mon, 05 Dec 2011 08:13:05 -0800 (PST) Message-ID: <4EDCED8E.5000707@codemonkey.ws> Date: Mon, 05 Dec 2011 10:13:02 -0600 From: Anthony Liguori MIME-Version: 1.0 References: <4ED98C06.5040405@codemonkey.ws> <4EDA3104.8030304@redhat.com> <4EDA95ED.6030706@codemonkey.ws> <4EDBDFC7.3090206@codemonkey.ws> <4EDC946A.3090702@redhat.com> <4EDCD6EA.7090500@codemonkey.ws> <4EDCE787.8070306@redhat.com> In-Reply-To: <4EDCE787.8070306@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v2 00/18] qom: dynamic properties and composition tree (v2) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: qemu-devel@nongnu.org On 12/05/2011 09:47 AM, Paolo Bonzini wrote: > On 12/05/2011 03:36 PM, Anthony Liguori wrote: >> No. A device is-a interface. Hopefully the above example will make it >> more clear. > > No, but I'm confident that there will be a sane way to access the list of > interfaces that you embed in the Object type. :) We definitely need to think through introspection. There are a few things we need to address with introspection: 0) What are all of the classes available 1) What are all of the classes/interfaces implemented by a type 2) What are all of the properties available in a class (0) and (1) just need QMP interfaces. It's very straight forward. (2) is a bit more tricky. You can instantiate a dummy object and introspect on the live object. Dynamic properties make that a bit challenging through. >> Maybe now is the right time to rename the legacy properties to all be >> prefixed with qdev-? That way we don't need to introduce two different >> types for a single property. > > Why do you need such a prefix? To avoid an all-at-once conversion. I don't want to break -device and maintaining string properties make it quite a bit easier to support -device. I'd like to leave the string properties in place until we have a good way to create objects via QMP. My rough thinking is that we keep -device around until 2.0. Regards, Anthony Liguori > > Paolo >