From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:36725) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W0wUv-0005Ea-0i for qemu-devel@nongnu.org; Wed, 08 Jan 2014 12:00:57 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W0wUn-0000gx-8t for qemu-devel@nongnu.org; Wed, 08 Jan 2014 12:00:52 -0500 Received: from mx1.redhat.com ([209.132.183.28]:15022) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W0wUm-0000gk-AG for qemu-devel@nongnu.org; Wed, 08 Jan 2014 12:00:44 -0500 Date: Wed, 8 Jan 2014 18:00:27 +0100 From: Igor Mammedov Message-ID: <20140108180027.3863087b@nial.usersys.redhat.com> In-Reply-To: <52CD80A5.8070900@suse.de> References: <1389197382-25085-1-git-send-email-imammedo@redhat.com> <52CD7BBF.3030202@redhat.com> <52CD80A5.8070900@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [RFC 0/5] -object/object-add support custom location and 2nd stage initialization List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Andreas =?ISO-8859-1?B?RuRyYmVy?= Cc: stefanha@redhat.com, sw@weilnetz.de, mjt@tls.msk.ru, qemu-devel@nongnu.org, lcapitulino@redhat.com, blauwirbel@gmail.com, aliguori@amazon.com, Paolo Bonzini , rth@twiddle.net On Wed, 08 Jan 2014 17:45:25 +0100 Andreas F=E4rber wrote: > Am 08.01.2014 17:24, schrieb Paolo Bonzini: > > Il 08/01/2014 17:09, Igor Mammedov ha scritto: > >> Adds optional interfaces that objects could implement if > >> they need to: > >> 1. perform an additional initialization after object properties are = set > >> 2. be placed not in '/objects' container > >> > >> Series depends on 2 PULL requests in flight from Andreas & Luiz > >> with fixes for QOM interfaces and object-add monitor/QMP command. > >> Git tree for testing: > >> https://github.com/imammedo/qemu/commits/extend-object-add > >> > >> Igor Mammedov (5): > >> object_add: consolidate error handling > >> add optional 2nd stage initialization to > >> -object/object-add/object_add commands > >> virtio_rng: use object_realize interface instead of calling backend > >> API > >> vl.c: -object: handle duplicate 'id' properly > >> -object/object-add: use custom default object location if provided > >> > >> backends/rng.c | 17 ++++++- > >> hw/virtio/virtio-rng.c | 15 ++++--- > >> include/qom/object_interfaces.h | 96 ++++++++++++++++++++++++++++++= +++++++++ > >> include/sysemu/rng.h | 11 ----- > >> qmp.c | 30 +++++++++--- > >> qom/Makefile.objs | 1 + > >> qom/object_interfaces.c | 57 +++++++++++++++++++++++ > >> vl.c | 21 ++++++++- > >> 8 files changed, 220 insertions(+), 28 deletions(-) > >> create mode 100644 include/qom/object_interfaces.h > >> create mode 100644 qom/object_interfaces.c > >> > >=20 > > Thanks Igor! I like very much patches 1-4 (though I'm thinking that we > > need some style conventions for interfaces). I think patch 5 adds more > > complexity than we need, but I'm open to discussion. >=20 > Hm, I have doubts about the use of "realize" here. So far that is only > implemented for devices, patches for bus still pending my review, and > for those we don't want that to be handled by -object or object-add but > recursive realization as part of machine initialization, allowing > interaction via qom-set before. It that's different for backends, can we > maybe pick a name different from "realize"? Any suggestions? >=20 > Andreas >=20