From f38fe82fc62926b6868fea3f89aff80adb22affb Mon Sep 17 00:00:00 2001 From: "Daniel P. Berrange" Date: Tue, 2 Oct 2012 11:10:34 +0100 Subject: Move libvirt specific cgroups setup code out of nova.virt.disk.api The nova.virt.disk.api module contains code that is generically reusable for any hypervisor. Thus the 'bind' method should not contain Libvirt LXC specific cgroups code Change-Id: I919b74c2c4af8ba05b1005ea93d2164be69612ba Signed-off-by: Daniel P. Berrange --- nova/virt/disk/api.py | 7 ------- nova/virt/libvirt/driver.py | 7 +++++++ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/nova/virt/disk/api.py b/nova/virt/disk/api.py index 529f231af..e71faad70 100644 --- a/nova/virt/disk/api.py +++ b/nova/virt/disk/api.py @@ -157,13 +157,6 @@ def bind(src, target, instance_name): utils.execute('touch', target, run_as_root=True) utils.execute('mount', '-o', 'bind', src, target, run_as_root=True) - s = os.stat(src) - cgroup_info = "b %s:%s rwm\n" % (os.major(s.st_rdev), - os.minor(s.st_rdev)) - cgroups_path = ("/sys/fs/cgroup/devices/libvirt/lxc/" - "%s/devices.allow" % instance_name) - utils.execute('tee', cgroups_path, - process_input=cgroup_info, run_as_root=True) def unbind(target): diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py index 9483055aa..79845a0ca 100644 --- a/nova/virt/libvirt/driver.py +++ b/nova/virt/libvirt/driver.py @@ -742,6 +742,13 @@ class LibvirtDriver(driver.ComputeDriver): if lxc_container_target: disk.bind(lxc_host_volume, lxc_container_target, instance_name) + s = os.stat(lxc_host_volume) + cgroup_info = "b %s:%s rwm\n" % (os.major(s.st_rdev), + os.minor(s.st_rdev)) + cgroups_path = ("/sys/fs/cgroup/devices/libvirt/lxc/" + "%s/devices.allow" % instance_name) + utils.execute('tee', cgroups_path, + process_input=cgroup_info, run_as_root=True) @exception.wrap_exception() def _detach_lxc_volume(self, xml, virt_dom, instance_name): -- cgit