diff --git a/tools/virsh.c b/tools/virsh.c index 92faffc02c..e04c9fcae6 100644 --- a/tools/virsh.c +++ b/tools/virsh.c @@ -3062,8 +3062,13 @@ cmdVcpupin(vshControl *ctl, const vshCmd *cmd) /* 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) { diff --git a/tools/virsh.pod b/tools/virsh.pod index b90f37eab7..e7dcd41d82 100644 --- a/tools/virsh.pod +++ b/tools/virsh.pod @@ -836,6 +836,8 @@ Pin domain VCPUs to host physical CPUs. The I number must be provided and I 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.