On Mon, 02 Mar 2015 14:57:21 +0100 Andreas Färber <afaer...@suse.de> wrote:
> > int configure_accelerator(MachineState *ms) > > { > > - const char *p; > > + const char *p, *name; > > char buf[10]; > > int ret; > > bool accel_initialised = false; > > bool init_failed = false; > > AccelClass *acc = NULL; > > + ObjectClass *oc; > > + bool probe_mode = false; > > > > p = qemu_opt_get(qemu_get_machine_opts(), "accel"); > > if (p == NULL) { > > - /* Use the default "accelerator", tcg */ > > - p = "tcg"; > > + oc = (ObjectClass *) MACHINE_GET_CLASS(current_machine); > > + name = object_class_get_name(oc); > > + probe_mode = !strcmp(name, "none" TYPE_MACHINE_SUFFIX); > > + if (probe_mode) { > > + /* Use these accelerators in probe mode, tcg should be last */ > > + p = probe_mode_accels; > > + } else { > > + /* Use the default "accelerator", tcg */ > > + p = "tcg"; > > + } > > } > > Can't we instead use an explicit ,accel=probe or ,accel=auto? > That would then obsolete the next patch. How would you express the following with the accel=<pseudo-accel> approach? -probe -machine s390-ccw,accel=kvm Using machine "none" as default with tcg as last accelerator initialized should not break anything. -M none The return code of configure_accelerator() is ignored anyway. Thanks, Michael