From 6b95452212f3446376e2e45d68281551e24f766b Mon Sep 17 00:00:00 2001 From: Cole Robinson Date: Thu, 13 Jan 2011 14:23:34 -0500 Subject: [PATCH] details: Apply default VCPU pinning changes to running VM --- src/virtManager/details.py | 17 +++++++++++++++-- src/vmm-details.glade | 2 +- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/src/virtManager/details.py b/src/virtManager/details.py index 745ff3f49..6839f0a0f 100644 --- a/src/virtManager/details.py +++ b/src/virtManager/details.py @@ -1591,8 +1591,9 @@ class vmmDetails(vmmGObjectUI): (sockets, cores, threads)] ret = self._change_config_helper(define_funcs, define_args, - self.vm.hotplug_vcpus, - (vcpus,)) + [self.vm.hotplug_vcpus, + self.config_vcpu_pin_cpuset], + [(vcpus,), (cpuset,)]) if ret: self._cpu_copy_host = False @@ -1619,6 +1620,18 @@ class vmmDetails(vmmGObjectUI): self._refresh_runtime_pinning() + def config_vcpu_pin_cpuset(self, cpuset): + conn = self.vm.get_connection() + vcpu_list = self.window.get_widget("config-vcpu-list") + vcpu_model = vcpu_list.get_model() + + if self.vm.vcpu_pinning() == cpuset: + return + + pinlist = virtinst.Guest.cpuset_str_to_tuple(conn.vmm, cpuset) + for row in vcpu_model: + vcpu_num = row[0] + self.vm.pin_vcpu(int(vcpu_num), pinlist) # Memory def config_memory_apply(self): diff --git a/src/vmm-details.glade b/src/vmm-details.glade index 93c6dbd2a..c8c3ea6fe 100644 --- a/src/vmm-details.glade +++ b/src/vmm-details.glade @@ -2394,7 +2394,7 @@ I/O: True 1 - Initial _pinning: + Default _pinning: True config-vcpupin