mirror of https://gitee.com/openkylin/libvirt.git
qemu: Error out if the bitmap for pinning is all clear
For both "live" and "config" changes of vcpupin and emulatorpin, an all clear bitmap doesn't make sense, and it can just cause corruptions. E.g (similar for emulatorpin). % virsh vcpupin hame 0 8,^8 --config % virsh vcpupin hame VCPU: CPU Affinity ---------------------------------- 0: 1: 0-63 2: 0-63 3: 0-63 % virsh dumpxml hame | grep cpuset <vcpupin vcpu='0' cpuset=''/> % virsh start hame error: Failed to start domain hame error: An error occurred, but the cause is unknown
This commit is contained in:
parent
1acfc171da
commit
fd1432c7ae
|
@ -3873,6 +3873,12 @@ qemuDomainPinVcpuFlags(virDomainPtr dom,
|
|||
if (!pcpumap)
|
||||
goto cleanup;
|
||||
|
||||
if (virBitmapIsAllClear(pcpumap)) {
|
||||
virReportError(VIR_ERR_INVALID_ARG, "%s",
|
||||
_("Empty cpu list for pinning"));
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
/* pinning to all physical cpus means resetting,
|
||||
* so check if we can reset setting.
|
||||
*/
|
||||
|
@ -4142,6 +4148,12 @@ qemuDomainPinEmulator(virDomainPtr dom,
|
|||
if (!pcpumap)
|
||||
goto cleanup;
|
||||
|
||||
if (virBitmapIsAllClear(pcpumap)) {
|
||||
virReportError(VIR_ERR_INVALID_ARG, "%s",
|
||||
_("Empty cpu list for pinning"));
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
/* pinning to all physical cpus means resetting,
|
||||
* so check if we can reset setting.
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue