def run_test(self): """ Start test, Creat a cgroup to create snapshot. """ modules = utils_cgroup.CgroupModules(self.cgroup_dir) modules.init(['cpuset']) self.cgroup = utils_cgroup.Cgroup('cpuset', None) self.cgroup.initialize(modules) self.cgroup_index = self.cgroup.mk_cgroup(cgroup=self.cgroup_name) # Before use the cpu, set it to be enable if self.cpu_status < 1: utils_misc.set_cpu_status(self.cpu_num, True) self.cgroup.set_property("cpuset.cpus", self.cpu_num, self.cgroup_index, check=False) self.cgroup.set_property("cpuset.mems", 0, self.cgroup_index, check=False) self.td0 = threading.Thread(target=self.cgroup.cgexec, args=(self.cgroup_name, "virsh", "dump %s %s" % (self.vm_name, self.dump_file))) self.td1 = None if self.twice_execute: self.td1 = threading.Thread(target=self.cgroup.cgexec, args=(self.cgroup_name, "virsh", "dump %s %s" % (self.vm_name, self.dump_file1))) self.td1.start() self.td0.start()
def run_test(self): """ Start test, clone a guest in a cgroup """ if virsh.domain_exists(self.vm_new_name): raise error.TestNAError("'%s' already exists! Please" " select another domain name!" % self.vm_new_name) if os.path.exists(self.new_image_file): os.remove(self.new_image_file) modules = utils_cgroup.CgroupModules(self.cgroup_dir) modules.init(['cpuset']) self.cgroup = utils_cgroup.Cgroup('cpuset', None) self.cgroup.initialize(modules) self.cgroup_index = self.cgroup.mk_cgroup(cgroup=self.cgroup_name) # Before use the cpu, set it to be enable if self.cpu_status < 1: utils_misc.set_cpu_status(self.cpu_num, True) self.cgroup.set_property("cpuset.cpus", self.cpu_num, self.cgroup_index, check=False) self.cgroup.set_property("cpuset.mems", 0, self.cgroup_index, check=False) self.td0 = threading.Thread( target=self.cgroup.cgexec, args=(self.cgroup_name, "virt-clone", "-o %s -n %s --force --file %s" % (self.vm_name, self.vm_new_name, self.new_image_file))) self.td1 = None if self.twice_execute: self.vm_new_name1 = self.vm_new_name + "1" self.new_image_file1 = self.new_image_file + "1" self.td1 = threading.Thread( target=self.cgroup.cgexec, args=(self.cgroup_name, "virt-clone", "-o %s -n %s --force --file %s" % (self.vm_name, self.vm_new_name1, self.new_image_file1))) self.td1.start() self.td0.start() # Wait for virt-clone has been started time.sleep(30)