Re: [PATCH 4/6] hyperv: implement domainGetMaxVcpus

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/12/20 12:51 PM, Matt Coleman wrote:
Co-authored-by: Sri Ramanujam <sramanujam@xxxxxxxxx>
Signed-off-by: Matt Coleman <matt@xxxxxxxxx>
---
  src/hyperv/hyperv_driver.c | 16 ++++++++++++++++
  1 file changed, 16 insertions(+)

diff --git a/src/hyperv/hyperv_driver.c b/src/hyperv/hyperv_driver.c
index 3c436d9465..0e35f18430 100644
--- a/src/hyperv/hyperv_driver.c
+++ b/src/hyperv/hyperv_driver.c
@@ -42,6 +42,11 @@
VIR_LOG_INIT("hyperv.hyperv_driver"); +/*
+ * Forward declarations
+ */
+static int hypervDomainIsActive(virDomainPtr domain);
+

I'm not a big fan of these declarations, because changing one place requires changing the other. Although in this case it doesn't matter really, because this declaration won't change as it's derived from public API. Anyway, might be worth shifting things around ..

  /*
   * WMI utility functions
   *
@@ -1184,6 +1189,16 @@ hypervDomainGetVcpus(virDomainPtr domain,
  }
+static int
+hypervDomainGetMaxVcpus(virDomainPtr dom)
+{
+    if (hypervDomainIsActive(dom))
+        return hypervDomainGetVcpusFlags(dom, (VIR_DOMAIN_VCPU_LIVE | VIR_DOMAIN_VCPU_MAXIMUM));
+    else
+        return hypervConnectGetMaxVcpus(dom->conn, NULL);
+}


.. eg push this a bit further - after the hypervDomainIsActive() is implemented.

+
+
  static char *
  hypervDomainGetXMLDesc(virDomainPtr domain, unsigned int flags)
  {
@@ -1983,6 +1998,7 @@ static virHypervisorDriver hypervHypervisorDriver = {
      .domainGetState = hypervDomainGetState, /* 0.9.5 */
      .domainGetVcpusFlags = hypervDomainGetVcpusFlags, /* 6.10.0 */
      .domainGetVcpus = hypervDomainGetVcpus, /* 6.10.0 */
+    .domainGetMaxVcpus = hypervDomainGetMaxVcpus, /* 6.10.0 */
      .domainGetXMLDesc = hypervDomainGetXMLDesc, /* 0.9.5 */
      .connectListDefinedDomains = hypervConnectListDefinedDomains, /* 0.9.5 */
      .connectNumOfDefinedDomains = hypervConnectNumOfDefinedDomains, /* 0.9.5 */


Michal




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux