machine: move UP defaults to class_base_init
authorPaolo Bonzini <pbonzini@redhat.com>
Wed, 21 Oct 2020 11:23:49 +0000 (07:23 -0400)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 26 Oct 2020 11:08:40 +0000 (07:08 -0400)
Clean up vl.c, default min/max/default_cpus to uniprocessor
directly in the QOM class initialization code.

Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
hw/core/machine.c
softmmu/vl.c

index 7a0b263cdab2f0e22e2f30fbe0e64f543b0fa0a6..57463ad77af4ffe2dc35bd51396b7b819045c1bf 100644 (file)
@@ -853,8 +853,12 @@ static void machine_class_init(ObjectClass *oc, void *data)
 
 static void machine_class_base_init(ObjectClass *oc, void *data)
 {
+    MachineClass *mc = MACHINE_CLASS(oc);
+    mc->max_cpus = mc->max_cpus ?: 1;
+    mc->min_cpus = mc->min_cpus ?: 1;
+    mc->default_cpus = mc->default_cpus ?: 1;
+
     if (!object_class_is_abstract(oc)) {
-        MachineClass *mc = MACHINE_CLASS(oc);
         const char *cname = object_class_get_name(oc);
         assert(g_str_has_suffix(cname, TYPE_MACHINE_SUFFIX));
         mc->name = g_strndup(cname,
index 09b033ff734f9dda0a3d81b9a1e8209ab463aec9..9b67ea300ee42cde657afee98225b5552fd2195c 100644 (file)
@@ -3970,11 +3970,6 @@ void qemu_init(int argc, char **argv, char **envp)
         exit(0);
     }
 
-    /* machine_class: default to UP */
-    machine_class->max_cpus = machine_class->max_cpus ?: 1;
-    machine_class->min_cpus = machine_class->min_cpus ?: 1;
-    machine_class->default_cpus = machine_class->default_cpus ?: 1;
-
     /* default to machine_class->default_cpus */
     current_machine->smp.cpus = machine_class->default_cpus;
     current_machine->smp.max_cpus = machine_class->default_cpus;