]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemuSetupMemoryCgroup: Handle hard_limit properly
authorMichal Privoznik <mprivozn@redhat.com>
Tue, 20 Aug 2013 09:04:18 +0000 (11:04 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Tue, 20 Aug 2013 13:03:17 +0000 (15:03 +0200)
Since 16bcb3 we have a regression. The hard_limit is set
unconditionally. By default the limit is zero. Hence, if user hasn't
configured any, we set the zero in cgroup subsystem making the kernel
kill the corresponding qemu process immediately. The proper fix is to
set hard_limit iff user has configured any.

src/qemu/qemu_cgroup.c

index 9673e8e7e5b3a350b346910e842cb155ad369813..e27945e7cfe14a93e45d3d815d03fb99f93e2cd0 100644 (file)
@@ -428,7 +428,8 @@ qemuSetupMemoryCgroup(virDomainObjPtr vm)
         }
     }
 
-    if (virCgroupSetMemoryHardLimit(priv->cgroup, vm->def->mem.hard_limit) < 0)
+    if (vm->def->mem.hard_limit != 0 &&
+        virCgroupSetMemoryHardLimit(priv->cgroup, vm->def->mem.hard_limit) < 0)
         return -1;
 
     if (vm->def->mem.soft_limit != 0 &&