diff options
| author | Dr. David Alan Gilbert <dgilbert@redhat.com> | 2018-06-20 16:39:46 +0100 |
|---|---|---|
| committer | Dr. David Alan Gilbert <dgilbert@redhat.com> | 2018-06-21 13:18:05 +0100 |
| commit | 8e8581e6b1b77e878520a2334f8e74b1001f1578 (patch) | |
| tree | dc922ea9ca2fd9341113e9c8a6fb16140730ef24 | |
| parent | 8c7c7ecbb1e5e9325b736906a4368b76a68d0eae (diff) | |
| download | focaccia-qemu-8e8581e6b1b77e878520a2334f8e74b1001f1578.tar.gz focaccia-qemu-8e8581e6b1b77e878520a2334f8e74b1001f1578.zip | |
hmp: add exit_preconfig
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> Message-Id: <20180620153947.30834-7-dgilbert@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
| -rw-r--r-- | hmp-commands.hx | 19 | ||||
| -rw-r--r-- | hmp.c | 8 | ||||
| -rw-r--r-- | hmp.h | 1 |
3 files changed, 28 insertions, 0 deletions
diff --git a/hmp-commands.hx b/hmp-commands.hx index 4acf6a3222..ba9cdb8800 100644 --- a/hmp-commands.hx +++ b/hmp-commands.hx @@ -58,6 +58,25 @@ 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 +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 + + { .name = "block_resize", .args_type = "device:B,size:o", .params = "device size", diff --git a/hmp.c b/hmp.c index f40d8279cf..f601099f90 100644 --- a/hmp.c +++ b/hmp.c @@ -1068,6 +1068,14 @@ 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); |