[libvirt] [PATCH] docs: Document limitation of maximum vcpu count used with <topology>

Peter Krempa posted 1 patch 7 years ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/0d3cff18bd5e2be63a251a105ce5d63feeee6760.1491314724.git.pkrempa@redhat.com
docs/formatdomain.html.in | 5 ++++-
src/libvirt-domain.c      | 3 ++-
tools/virsh.pod           | 3 ++-
3 files changed, 8 insertions(+), 3 deletions(-)
[libvirt] [PATCH] docs: Document limitation of maximum vcpu count used with <topology>
Posted by Peter Krempa 7 years ago
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
---
 docs/formatdomain.html.in | 5 ++++-
 src/libvirt-domain.c      | 3 ++-
 tools/virsh.pod           | 3 ++-
 3 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
index aae5e9c07..b1e38f00e 100644
--- a/docs/formatdomain.html.in
+++ b/docs/formatdomain.html.in
@@ -1401,7 +1401,10 @@
         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
diff --git a/src/libvirt-domain.c b/src/libvirt-domain.c
index 4670c54e5..310b91b37 100644
--- a/src/libvirt-domain.c
+++ b/src/libvirt-domain.c
@@ -7010,7 +7010,8 @@ virDomainSetVcpus(virDomainPtr domain, unsigned int nvcpus)
  * 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
diff --git a/tools/virsh.pod b/tools/virsh.pod
index 9a52d6716..d1030808a 100644
--- a/tools/virsh.pod
+++ b/tools/virsh.pod
@@ -2477,7 +2477,8 @@ marked as hotpluggable.
 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>]]
-- 
2.12.2

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH] docs: Document limitation of maximum vcpu count used with <topology>
Posted by Michal Privoznik 7 years ago
On 04/04/2017 04:05 PM, Peter Krempa wrote:
> 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
> ---
>  docs/formatdomain.html.in | 5 ++++-
>  src/libvirt-domain.c      | 3 ++-
>  tools/virsh.pod           | 3 ++-
>  3 files changed, 8 insertions(+), 3 deletions(-)

ACK

Michal

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list