On Mon, 2018-02-19 at 16:06 +0100, Peter Krempa wrote:
> 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.
The result doesn't change because the PCIE_ROOT case in the switch
statement immediately following the conversion does nothing but
error out, which makes whether or not modelName is NULL irrelevant.
I can add the explanation above to the commit message if you want.
--
Andrea Bolognani / Red Hat / Virtualization