On Fri, Feb 16, 2018 at 17:28:02 +0100, Andrea Bolognani wrote:
There's no need to perform checks before conversion, we can
just go try and check the results later on.
Signed-off-by: Andrea Bolognani <abologna(a)redhat.com>
---
src/qemu/qemu_command.c | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index 2291bf5da..a44a1b2d2 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -2725,13 +2725,8 @@ qemuBuildControllerDevStr(const virDomainDef *domainDef,
break;
case VIR_DOMAIN_CONTROLLER_TYPE_PCI: {
- const virDomainPCIControllerOpts *pciopts;
- const char *modelName = NULL;
-
- pciopts = &def->opts.pciopts;
- if (def->model != VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT &&
- def->model != VIR_DOMAIN_CONTROLLER_MODEL_PCI_LAST)
- modelName =
virDomainControllerPCIModelNameTypeToString(pciopts->modelName);
+ const virDomainPCIControllerOpts *pciopts = &def->opts.pciopts;
+ const char *modelName =
virDomainControllerPCIModelNameTypeToString(pciopts->modelName);
This is not equivalent. virDomainControllerPCIModelName implementation
actually defines a string for VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT so
it will not return NULL and the commit message does not explain why/if
it is actually okay.
/* Skip the implicit PHB for pSeries guests */
if (def->model == VIR_DOMAIN_CONTROLLER_MODEL_PCI_ROOT &&
@@ -2741,6 +2736,13 @@ qemuBuildControllerDevStr(const virDomainDef *domainDef,
goto done;
}
+ if (!modelName) {
+ virReportError(VIR_ERR_INTERNAL_ERROR,
+ _("Unknown virDomainControllerPCIModelName value:
%d"),
I think this was under discussion somewhere in this series.
+ pciopts->modelName);
+ return -1;
+ }
+
switch ((virDomainControllerModelPCI) def->model) {
case VIR_DOMAIN_CONTROLLER_MODEL_PCI_BRIDGE:
virBufferAsprintf(&buf, "%s,chassis_nr=%d,id=%s",
--
2.14.3
--
libvir-list mailing list
libvir-list(a)redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list