On Thu, May 08, 2014 at 09:26:36AM +0100, Peter Maydell wrote: > On 7 May 2014 23:20, Andreas Färber <afaer...@suse.de> wrote: > > Am 07.05.2014 23:48, schrieb Peter Maydell: > >> This is confusing. What is max_cpus > > > > Specified via -smp, defaults to actual CPUs. > > I thought that was smp_cpus ...
smp_cpus is the first argument to -smp. max_cpus is the "maxcpus" option of -smp. > > >> and why do we not > >> just set max_cpus = machine->max_cpus ? > > > > For the PC, machine->max_cpus specifies the technical (APIC/ACPI/...) > > upper limit, whereas -smp limits it to saner values. > > > > If you think KVM, then many machines today will have less than the > > maximum number of CPUs and you may want to run multiple VMs and you may > > not want their vCPUs competing too much for existing CPUs, so a limit > > makes sense. > > That would imply that we want > max_cpus = MIN(command_line_max_cpus, machine->max_cpus); Please don't do this. If the maxcpus value from the command-line is not supported, QEMU should abort instead of silently ignoring the value provided by the user. -- Eduardo