Message ID | 20201123141435.2726558-31-pbonzini@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | cleanup qemu_init and make sense of command line processing | expand |
On Mon, 23 Nov 2020 09:14:29 -0500 Paolo Bonzini <pbonzini@redhat.com> wrote: > Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Igor Mammedov <imammedo@redhat.com> > --- > hw/core/machine.c | 24 ++++++++++++++++++++++++ > include/sysemu/sysemu.h | 1 + > softmmu/vl.c | 24 ------------------------ > 3 files changed, 25 insertions(+), 24 deletions(-) > > diff --git a/hw/core/machine.c b/hw/core/machine.c > index a5cfbcc7cb..745531c9d9 100644 > --- a/hw/core/machine.c > +++ b/hw/core/machine.c > @@ -1166,6 +1166,30 @@ void machine_run_board_init(MachineState *machine) > machine_class->init(machine); > } > > +static NotifierList machine_init_done_notifiers = > + NOTIFIER_LIST_INITIALIZER(machine_init_done_notifiers); > + > +bool machine_init_done; > + > +void qemu_add_machine_init_done_notifier(Notifier *notify) > +{ > + notifier_list_add(&machine_init_done_notifiers, notify); > + if (machine_init_done) { > + notify->notify(notify, NULL); > + } > +} > + > +void qemu_remove_machine_init_done_notifier(Notifier *notify) > +{ > + notifier_remove(notify); > +} > + > +void qemu_run_machine_init_done_notifiers(void) > +{ > + machine_init_done = true; > + notifier_list_notify(&machine_init_done_notifiers, NULL); > +} > + > static const TypeInfo machine_info = { > .name = TYPE_MACHINE, > .parent = TYPE_OBJECT, > diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h > index c94b2e7159..1b62deaf2b 100644 > --- a/include/sysemu/sysemu.h > +++ b/include/sysemu/sysemu.h > @@ -18,6 +18,7 @@ void qemu_remove_exit_notifier(Notifier *notify); > > extern bool machine_init_done; > > +void qemu_run_machine_init_done_notifiers(void); > void qemu_add_machine_init_done_notifier(Notifier *notify); > void qemu_remove_machine_init_done_notifier(Notifier *notify); > > diff --git a/softmmu/vl.c b/softmmu/vl.c > index 86ace29f98..7e13bb4a59 100644 > --- a/softmmu/vl.c > +++ b/softmmu/vl.c > @@ -204,9 +204,6 @@ bool qemu_uuid_set; > static NotifierList exit_notifiers = > NOTIFIER_LIST_INITIALIZER(exit_notifiers); > > -static NotifierList machine_init_done_notifiers = > - NOTIFIER_LIST_INITIALIZER(machine_init_done_notifiers); > - > uint32_t xen_domid; > enum xen_mode xen_mode = XEN_EMULATE; > bool xen_domid_restrict; > @@ -2432,27 +2429,6 @@ static void qemu_unlink_pidfile(Notifier *n, void *data) > } > } > > -bool machine_init_done; > - > -void qemu_add_machine_init_done_notifier(Notifier *notify) > -{ > - notifier_list_add(&machine_init_done_notifiers, notify); > - if (machine_init_done) { > - notify->notify(notify, NULL); > - } > -} > - > -void qemu_remove_machine_init_done_notifier(Notifier *notify) > -{ > - notifier_remove(notify); > -} > - > -static void qemu_run_machine_init_done_notifiers(void) > -{ > - machine_init_done = true; > - notifier_list_notify(&machine_init_done_notifiers, NULL); > -} > - > static const QEMUOption *lookup_opt(int argc, char **argv, > const char **poptarg, int *poptind) > {
diff --git a/hw/core/machine.c b/hw/core/machine.c index a5cfbcc7cb..745531c9d9 100644 --- a/hw/core/machine.c +++ b/hw/core/machine.c @@ -1166,6 +1166,30 @@ void machine_run_board_init(MachineState *machine) machine_class->init(machine); } +static NotifierList machine_init_done_notifiers = + NOTIFIER_LIST_INITIALIZER(machine_init_done_notifiers); + +bool machine_init_done; + +void qemu_add_machine_init_done_notifier(Notifier *notify) +{ + notifier_list_add(&machine_init_done_notifiers, notify); + if (machine_init_done) { + notify->notify(notify, NULL); + } +} + +void qemu_remove_machine_init_done_notifier(Notifier *notify) +{ + notifier_remove(notify); +} + +void qemu_run_machine_init_done_notifiers(void) +{ + machine_init_done = true; + notifier_list_notify(&machine_init_done_notifiers, NULL); +} + static const TypeInfo machine_info = { .name = TYPE_MACHINE, .parent = TYPE_OBJECT, diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h index c94b2e7159..1b62deaf2b 100644 --- a/include/sysemu/sysemu.h +++ b/include/sysemu/sysemu.h @@ -18,6 +18,7 @@ void qemu_remove_exit_notifier(Notifier *notify); extern bool machine_init_done; +void qemu_run_machine_init_done_notifiers(void); void qemu_add_machine_init_done_notifier(Notifier *notify); void qemu_remove_machine_init_done_notifier(Notifier *notify); diff --git a/softmmu/vl.c b/softmmu/vl.c index 86ace29f98..7e13bb4a59 100644 --- a/softmmu/vl.c +++ b/softmmu/vl.c @@ -204,9 +204,6 @@ bool qemu_uuid_set; static NotifierList exit_notifiers = NOTIFIER_LIST_INITIALIZER(exit_notifiers); -static NotifierList machine_init_done_notifiers = - NOTIFIER_LIST_INITIALIZER(machine_init_done_notifiers); - uint32_t xen_domid; enum xen_mode xen_mode = XEN_EMULATE; bool xen_domid_restrict; @@ -2432,27 +2429,6 @@ static void qemu_unlink_pidfile(Notifier *n, void *data) } } -bool machine_init_done; - -void qemu_add_machine_init_done_notifier(Notifier *notify) -{ - notifier_list_add(&machine_init_done_notifiers, notify); - if (machine_init_done) { - notify->notify(notify, NULL); - } -} - -void qemu_remove_machine_init_done_notifier(Notifier *notify) -{ - notifier_remove(notify); -} - -static void qemu_run_machine_init_done_notifiers(void) -{ - machine_init_done = true; - notifier_list_notify(&machine_init_done_notifiers, NULL); -} - static const QEMUOption *lookup_opt(int argc, char **argv, const char **poptarg, int *poptind) {
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> --- hw/core/machine.c | 24 ++++++++++++++++++++++++ include/sysemu/sysemu.h | 1 + softmmu/vl.c | 24 ------------------------ 3 files changed, 25 insertions(+), 24 deletions(-)