qemu requires that the topology equals to the maximum vcpu count.
Document this along with the API to set maximum vcpu count and the XML
element.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=
1426220
virtual CPU provided to the guest. Three non-zero values have to be
given for <code>sockets</code>, <code>cores</code>, and
<code>threads</code>: total number of CPU sockets, number of cores per
- socket, and number of threads per core, respectively.</dd>
+ socket, and number of threads per core, respectively. Hypervisors may
+ require that the maximum number of vCPUs specified by the
+ <code>cpus</code> element equals to the number of vcpus resulting
+ from the topology.</dd>
<dt><code>feature</code></dt>
<dd>The <code>cpu</code> element can contain zero or more
* CPU limit is altered; generally, this value must be less than or
* equal to virConnectGetMaxVcpus(). Otherwise, this call affects the
* current virtual CPU limit, which must be less than or equal to the
- * maximum limit.
+ * maximum limit. Note that hypervisors may not allow changing the maximum
+ * vcpu count if processor topology is specified.
*
* If @flags includes VIR_DOMAIN_VCPU_GUEST, then the state of processors is
* modified inside the guest instead of the hypervisor. This flag can only
The I<--maximum> flag controls the maximum number of virtual cpus that can
be hot-plugged the next time the domain is booted. As such, it must only be
used with the I<--config> flag, and not with the I<--live> or the I<--current>
-flag.
+flag. Note that it may not be possible to change the maximum vcpu count if
+the processor topology is specified for the guest.
=item B<setvcpu> I<domain> I<vcpulist> [I<--enable>] | [I<--disable>]
[[I<--live>] [I<--config>] | [I<--current>]]