vcpupin: add reset option to virsh vcpupin command

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>
This commit is contained in:
Taku Izumi 2011-06-10 15:39:38 +09:00 committed by Wen Congyang
parent 2903534a30
commit c4a8ca71b1
2 changed files with 8 additions and 1 deletions

View File

@ -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) {

View File

@ -836,6 +836,8 @@ Pin domain VCPUs to host physical CPUs. The I<vcpu> number must be provided
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.