[libvirt] [PATCH 3/3] qemu: Prohibit getting the numa parameters if mode is not strict

Osier Yang jyang at redhat.com
Fri May 24 09:08:29 UTC 2013


I don't see any reason to getting the numa parameters if mode is
not strict, as long as setNumaParameters doesn't allow to set
"nodeset" if the mode is not strict, and cpuset.mems only understand
"strict" mode.

Things could be changed if we support to get numa parameters with
libnuma one day, but let's prohibit it now.
---
 src/qemu/qemu_driver.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 3df26b8..9168072 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -7841,8 +7841,15 @@ qemuDomainGetNumaParameters(virDomainPtr dom,
 
     if (flags & VIR_DOMAIN_AFFECT_LIVE) {
         if (!virCgroupHasController(priv->cgroup, VIR_CGROUP_CONTROLLER_MEMORY)) {
-            virReportError(VIR_ERR_OPERATION_INVALID,
-                           "%s", _("cgroup memory controller is not mounted"));
+            virReportError(VIR_ERR_OPERATION_INVALID, "%s",
+                           _("cgroup memory controller is not mounted"));
+            goto cleanup;
+        }
+
+        if (vm->def->numatune.memory.mode != VIR_DOMAIN_NUMATUNE_MEM_STRICT) {
+            virReportError(VIR_ERR_OPERATION_INVALID, "%s",
+                           _("getting numa parameters of running domain is "
+                             "only valid for strict numa mode"));
             goto cleanup;
         }
     }
-- 
1.8.1.4




More information about the libvir-list mailing list