From: Peter Krempa <pkrempa(a)redhat.com>
Historically when the code was in 'qemuHostdevPreparePCIDevicesCheckSupport'
the function returned bools. Later it was refactored and moved to
'qemuDomainPrepareHostdevPCI' the return values were not changed.
Thus the function now returned '-1', 'false', and 'true'. Callers
checked for '-1' only so the few cases forbidding legacy device
passthrough were no longer causing fatal errors.
Fixes: 3b87709c768480e085556e06bd8d08f62270d42d
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
src/qemu/qemu_domain.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
index 52da234343..73869fcfac 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
@@ -9945,28 +9945,28 @@ qemuDomainPrepareHostdevPCI(virDomainHostdevDef *hostdev,
if (!supportsPassthroughVFIO) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
_("host doesn't support VFIO PCI
passthrough"));
- return false;
+ return -1;
}
break;
case VIR_DEVICE_HOSTDEV_PCI_DRIVER_NAME_KVM:
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
_("host doesn't support legacy PCI passthrough"));
- return false;
+ return -1;
case VIR_DEVICE_HOSTDEV_PCI_DRIVER_NAME_XEN:
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("QEMU does not support device assignment mode
'%1$s'"),
virDeviceHostdevPCIDriverNameTypeToString(*driverName));
- return false;
+ return -1;
default:
case VIR_DEVICE_HOSTDEV_PCI_DRIVER_NAME_LAST:
virReportEnumRangeError(virDeviceHostdevPCIDriverName, *driverName);
- break;
+ return -1;
}
- return true;
+ return 0;
}
--
2.49.0