------- Comment From <email address hidden> 2018-04-27 16:54 EDT-------
I was told to write a small documentation describing what happens without the two patches mentioned in my comment #20.
We basically lose the ability to hotplug/unplug CPUs into virtual machines. Considering that blk-mq enqueue tasks using 'for_each_present_cpu()' (that iterates over CPUs in systems that don't support CPU hotplug - refer to those patches for technical details) we can also have problems if tasks are scheduled to CPUs present but not online.
So I suggest to *not* run VMs with extra CPUs to be hotplugged later, like:
-smp 8,sockets=1,cores=2,threads=8,maxcpus=16
or
<vcpu placement='static' current='8'>16</vcpu>
If we want a guest with 16 CPUs it's better to define it beforehand, for instance:
------- Comment From <email address hidden> 2018-04-27 16:54 EDT-------
I was told to write a small documentation describing what happens without the two patches mentioned in my comment #20.
We basically lose the ability to hotplug/unplug CPUs into virtual machines. Considering that blk-mq enqueue tasks using 'for_each_ present_ cpu()' (that iterates over CPUs in systems that don't support CPU hotplug - refer to those patches for technical details) we can also have problems if tasks are scheduled to CPUs present but not online.
So I suggest to *not* run VMs with extra CPUs to be hotplugged later, like:
-smp 8,sockets= 1,cores= 2,threads= 8,maxcpus= 16
or
<vcpu placement='static' current= '8'>16< /vcpu>
If we want a guest with 16 CPUs it's better to define it beforehand, for instance:
-smp 16,sockets= 1,cores= 2,threads= 8
or
<vcpu placement= 'static' >16</vcpu>