From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52638) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bEfXM-00024T-JQ for qemu-devel@nongnu.org; Sun, 19 Jun 2016 12:25:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bEfXH-0002Va-Jt for qemu-devel@nongnu.org; Sun, 19 Jun 2016 12:25:28 -0400 Received: from mx1.redhat.com ([209.132.183.28]:34031) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bEfXH-0002VU-E9 for qemu-devel@nongnu.org; Sun, 19 Jun 2016 12:25:23 -0400 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id A4DBC85365 for ; Sun, 19 Jun 2016 16:25:22 +0000 (UTC) References: <1466022773-8965-1-git-send-email-ehabkost@redhat.com> <1466022773-8965-7-git-send-email-ehabkost@redhat.com> From: Marcel Apfelbaum Message-ID: <5766C76F.3000207@redhat.com> Date: Sun, 19 Jun 2016 19:25:19 +0300 MIME-Version: 1.0 In-Reply-To: <1466022773-8965-7-git-send-email-ehabkost@redhat.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 06/10] machine: Add machine_register_compat_props() function List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eduardo Habkost , qemu-devel@nongnu.org, Markus Armbruster Cc: Paolo Bonzini , Igor Mammedov On 06/15/2016 11:32 PM, Eduardo Habkost wrote: > Move the compat_props handling to core machine code. > > Signed-off-by: Eduardo Habkost > --- > hw/core/machine.c | 16 ++++++++++++++++ > include/hw/boards.h | 1 + > vl.c | 9 ++------- > 3 files changed, 19 insertions(+), 7 deletions(-) > > diff --git a/hw/core/machine.c b/hw/core/machine.c > index ccdd5fa..754a054 100644 > --- a/hw/core/machine.c > +++ b/hw/core/machine.c > @@ -580,6 +580,22 @@ static void machine_class_finalize(ObjectClass *klass, void *data) > } > } > > +void machine_register_compat_props(MachineState *machine) > +{ > + MachineClass *mc = MACHINE_GET_CLASS(machine); > + int i; > + GlobalProperty *p; > + > + if (!mc->compat_props) { > + return; > + } > + > + for (i = 0; i < mc->compat_props->len; i++) { > + p = g_array_index(mc->compat_props, GlobalProperty *, i); > + qdev_prop_register_global(p); > + } > +} > + > static const TypeInfo machine_info = { > .name = TYPE_MACHINE, > .parent = TYPE_OBJECT, > diff --git a/include/hw/boards.h b/include/hw/boards.h > index d268bd0..ee71dc0 100644 > --- a/include/hw/boards.h > +++ b/include/hw/boards.h > @@ -40,6 +40,7 @@ int machine_kvm_shadow_mem(MachineState *machine); > int machine_phandle_start(MachineState *machine); > bool machine_dump_guest_core(MachineState *machine); > bool machine_mem_merge(MachineState *machine); > +void machine_register_compat_props(MachineState *machine); > > /** > * CPUArchId: > diff --git a/vl.c b/vl.c > index d88ddba..86d53ca 100644 > --- a/vl.c > +++ b/vl.c > @@ -4483,13 +4483,8 @@ int main(int argc, char **argv, char **envp) > exit (i == 1 ? 1 : 0); > } > > - if (machine_class->compat_props) { > - GlobalProperty *p; > - for (i = 0; i < machine_class->compat_props->len; i++) { > - p = g_array_index(machine_class->compat_props, GlobalProperty *, i); > - qdev_prop_register_global(p); > - } > - } > + machine_register_compat_props(current_machine); > + > qemu_opts_foreach(qemu_find_opts("global"), > global_init_func, NULL, &err); > if (err) { > Reviewed-by: Marcel Apfelbaum Thanks, Marcel