
On Fri, Jun 10, 2011 at 03:39:38PM +0900, Taku Izumi wrote:
When resetting vcpupin setting, we have to specify all host physical cpus as a cpulist parameter of virsh vcpupin command. It's a little tedious.
This patch changes to allow to receive the special keyword 'r' as a cpulist parameter of virsh vcpupin command when resetting vcpupin setting.
If you set the following:
# virsh vcpupin VM 0 r
the vcpu0 will be pinned to all physical cpus.
Signed-off-by: Taku Izumi <izumi.taku@jp.fujitsu.com> --- tools/virsh.c | 7 ++++++- tools/virsh.pod | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-)
Index: libvirt/tools/virsh.c =================================================================== --- libvirt.orig/tools/virsh.c +++ libvirt/tools/virsh.c @@ -3010,8 +3010,13 @@ cmdVcpupin(vshControl *ctl, const vshCmd
/* Parse cpulist */ cur = cpulist; - if (*cur == 0) + if (*cur == 0) { goto parse_error; + } else if (*cur == 'r') { + for (cpu = 0; cpu < maxcpu; cpu++) + VIR_USE_CPU(cpumap, cpu); + *cur = 0; + }
while (*cur != 0) {
Index: libvirt/tools/virsh.pod =================================================================== --- libvirt.orig/tools/virsh.pod +++ libvirt/tools/virsh.pod @@ -797,6 +797,8 @@ Pin domain VCPUs to host physical CPUs. and I<cpulist> is a list of physical CPU numbers. Its syntax is a comma separated list and a special markup using '-' and '^' (ex. '0-4', '0-3,^2') can also be allowed. The '-' denotes the range and the '^' denotes exclusive. +If you want to reset vcpupin setting, that is, to pin vcpu all physical cpus, +simply specify 'r' as a cpulist. If I<--live> is specified, affect a running guest. If I<--config> is specified, affect the next boot of a persistent guest. If I<--current> is specified, affect the current guest state.
ACK, a simple usability improvement Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@veillard.com | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/