vl: move CHECKPOINT_INIT after preconfig
authorPaolo Bonzini <pbonzini@redhat.com>
Wed, 21 Oct 2020 11:19:34 +0000 (07:19 -0400)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 10 Dec 2020 17:15:13 +0000 (12:15 -0500)
Move CHECKPOINT_INIT right before the machine initialization is
completed.  Everything before is essentially an extension of
command line parsing.

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
hw/core/machine.c
softmmu/vl.c

index 5a65b9d88e2b59a1276823cada1a4e2671eda3ef..71a0e375abd7fe3a5fa4492d37f25aba0914d270 100644 (file)
@@ -1110,6 +1110,11 @@ void machine_run_board_init(MachineState *machine)
     ObjectClass *oc = object_class_by_name(machine->cpu_type);
     CPUClass *cc;
 
+    /* This checkpoint is required by replay to separate prior clock
+       reading from the other reads, because timer polling functions query
+       clock values from the log. */
+    replay_checkpoint(CHECKPOINT_INIT);
+
     if (machine->ram_memdev_id) {
         Object *o;
         o = object_resolve_path_type(machine->ram_memdev_id,
index 1a80a9a68d18576d8f6c39f1fbdb8d9001272b24..91ef21833bcedd37e30419eaf7f6c3c3f4860ddd 100644 (file)
@@ -4443,11 +4443,6 @@ void qemu_init(int argc, char **argv, char **envp)
     qemu_semihosting_connect_chardevs();
     qemu_semihosting_console_init();
 
-    /* This checkpoint is required by replay to separate prior clock
-       reading from the other reads, because timer polling functions query
-       clock values from the log. */
-    replay_checkpoint(CHECKPOINT_INIT);
-
     current_machine->boot_order = boot_order;
 
     /* parse features once if machine provides default cpu_type */