"Dr. David Alan Gilbert (git)" <dgilb...@redhat.com> writes:
> From: "Dr. David Alan Gilbert" <dgilb...@redhat.com> > > Add the exit_preconfig command to return to normality. > > Signed-off-by: Dr. David Alan Gilbert <dgilb...@redhat.com> > Reviewed-by: Peter Xu <pet...@redhat.com> > Reviewed-by: Igor Mammedov <imamm...@redhat.com> > --- > hmp-commands.hx | 15 +++++++++++++++ > hmp.c | 7 +++++++ > hmp.h | 1 + > 3 files changed, 23 insertions(+) > > diff --git a/hmp-commands.hx b/hmp-commands.hx > index dc82ed526f..40e2f6ca08 100644 > --- a/hmp-commands.hx > +++ b/hmp-commands.hx > @@ -55,6 +55,21 @@ STEXI > @item q or quit > @findex quit > Quit the emulator. > +ETEXI > + > + { > + .name = "exit_preconfig", > + .args_type = "", > + .params = "", > + .help = "exit the preconfig state", > + .cmd = hmp_exit_preconfig, > + .flags = "p", > + }, > + > +STEXI > +@item exit_preconfig > +@findex exit_preconfig > +Exit the preconfig state This is awfully terse. Suggest to steal from the QMP documentation in misc.json: # This command makes QEMU exit the preconfig state and proceed with # VM initialization using configuration data provided on the command line # and via the QMP monitor during the preconfig state. The command is only # available during the preconfig state (i.e. when the --preconfig command # line option was in use). > ETEXI > > { > diff --git a/hmp.c b/hmp.c > index ef93f4878b..c7be6ed394 100644 > --- a/hmp.c > +++ b/hmp.c > @@ -1065,6 +1065,13 @@ void hmp_system_powerdown(Monitor *mon, const QDict > *qdict) > qmp_system_powerdown(NULL); > } > > +void hmp_exit_preconfig(Monitor *mon, const QDict *qdict) > +{ > + Error *err = NULL; > + qmp_exit_preconfig(&err); > + hmp_handle_error(mon, &err); > +} > + Blank line between declaration and statements, please. > void hmp_cpu(Monitor *mon, const QDict *qdict) > { > int64_t cpu_index; > diff --git a/hmp.h b/hmp.h > index 20f27439d3..33354f1bdd 100644 > --- a/hmp.h > +++ b/hmp.h > @@ -44,6 +44,7 @@ void hmp_quit(Monitor *mon, const QDict *qdict); > void hmp_stop(Monitor *mon, const QDict *qdict); > void hmp_system_reset(Monitor *mon, const QDict *qdict); > void hmp_system_powerdown(Monitor *mon, const QDict *qdict); > +void hmp_exit_preconfig(Monitor *mon, const QDict *qdict); > void hmp_cpu(Monitor *mon, const QDict *qdict); > void hmp_memsave(Monitor *mon, const QDict *qdict); > void hmp_pmemsave(Monitor *mon, const QDict *qdict);