[Qemu-devel] [PATCH v3 6/7] hmp: add exit_preconfig

Dr. David Alan Gilbert (git) posted 7 patches 7 years, 8 months ago
There is a newer version of this series
[Qemu-devel] [PATCH v3 6/7] hmp: add exit_preconfig
Posted by Dr. David Alan Gilbert (git) 7 years, 8 months ago
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>

Add the exit_preconfig command to return to normality.

Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@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
 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);
+}
+
 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);
-- 
2.17.0


Re: [Qemu-devel] [PATCH v3 6/7] hmp: add exit_preconfig
Posted by Markus Armbruster 7 years, 8 months ago
"Dr. David Alan Gilbert (git)" <dgilbert@redhat.com> writes:

> From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
>
> Add the exit_preconfig command to return to normality.
>
> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
> Reviewed-by: Peter Xu <peterx@redhat.com>
> Reviewed-by: Igor Mammedov <imammedo@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);

Re: [Qemu-devel] [PATCH v3 6/7] hmp: add exit_preconfig
Posted by Dr. David Alan Gilbert 7 years, 8 months ago
* Markus Armbruster (armbru@redhat.com) wrote:
> "Dr. David Alan Gilbert (git)" <dgilbert@redhat.com> writes:
> 
> > From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
> >
> > Add the exit_preconfig command to return to normality.
> >
> > Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
> > Reviewed-by: Peter Xu <peterx@redhat.com>
> > Reviewed-by: Igor Mammedov <imammedo@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).

Changed.

> >  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.

Added.

Dave

> >  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);
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK