vl: preconfig and loadvm are mutually exclusive

Just like -incoming.  Later we will add support for "-incoming defer
-preconfig", because there are cases (Xen, block layer) that want
to look at RUNSTATE_INMIGRATE.  -loadvm will remain mutually exclusive
with preconfig; the plan is to just do loadvm in the monitor, since
the user is already going to interact with it for preconfiguration.

Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Paolo Bonzini 2020-10-21 10:19:08 -04:00
parent 58c91595a7
commit 90285ec8bb

View file

@ -124,6 +124,7 @@ static const char *mem_path;
static const char *boot_order;
static const char *boot_once;
static const char *incoming;
static const char *loadvm;
enum vga_retrace_method vga_retrace_method = VGA_RETRACE_DUMB;
int display_opengl;
const char* keyboard_layout = NULL;
@ -2894,6 +2895,11 @@ static void qemu_validate_options(void)
}
}
if (loadvm && !preconfig_exit_requested) {
error_report("'preconfig' and 'loadvm' options are "
"mutually exclusive");
exit(EXIT_FAILURE);
}
if (incoming && !preconfig_exit_requested) {
error_report("'preconfig' and 'incoming' options are "
"mutually exclusive");
@ -3176,7 +3182,6 @@ void qemu_init(int argc, char **argv, char **envp)
QemuOptsList *olist;
int optind;
const char *optarg;
const char *loadvm = NULL;
MachineClass *machine_class;
const char *vga_model = NULL;
bool userconfig = true;