mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
conf: Make switch statements more strict
When switching over the values in the virDomainControllerModelPCI enumeration, make sure the proper cast is in place so that the compiler can warn us when the coverage is not exaustive. For the same reason, remove the 'default' case from one of the existing switch statements.
This commit is contained in:
parent
50d3595390
commit
77edbf5127
@ -344,9 +344,9 @@ virDomainPCIAddressBusSetModel(virDomainPCIAddressBusPtr bus,
|
||||
bus->maxSlot = VIR_PCI_ADDRESS_SLOT_LAST;
|
||||
break;
|
||||
|
||||
default:
|
||||
case VIR_DOMAIN_CONTROLLER_MODEL_PCI_LAST:
|
||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||
_("Invalid PCI controller model %d"), model);
|
||||
"%s", _("PCI controller model was not set correctly"));
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
@ -8834,7 +8834,7 @@ virDomainControllerDefParseXML(xmlNodePtr node,
|
||||
break;
|
||||
}
|
||||
case VIR_DOMAIN_CONTROLLER_TYPE_PCI:
|
||||
switch (def->model) {
|
||||
switch ((virDomainControllerModelPCI) def->model) {
|
||||
case VIR_DOMAIN_CONTROLLER_MODEL_PCI_ROOT:
|
||||
case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: {
|
||||
unsigned long long bytes;
|
||||
@ -8859,6 +8859,16 @@ virDomainControllerDefParseXML(xmlNodePtr node,
|
||||
def->opts.pciopts.pcihole64 = true;
|
||||
def->opts.pciopts.pcihole64size = VIR_DIV_UP(bytes, 1024);
|
||||
}
|
||||
case VIR_DOMAIN_CONTROLLER_MODEL_PCI_BRIDGE:
|
||||
case VIR_DOMAIN_CONTROLLER_MODEL_DMI_TO_PCI_BRIDGE:
|
||||
case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT_PORT:
|
||||
case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_SWITCH_UPSTREAM_PORT:
|
||||
case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_SWITCH_DOWNSTREAM_PORT:
|
||||
case VIR_DOMAIN_CONTROLLER_MODEL_PCI_EXPANDER_BUS:
|
||||
case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_EXPANDER_BUS:
|
||||
case VIR_DOMAIN_CONTROLLER_MODEL_PCI_LAST:
|
||||
/* Other controller models don't require extra checks */
|
||||
break;
|
||||
}
|
||||
if (modelName &&
|
||||
(def->opts.pciopts.modelName
|
||||
|
Loading…
x
Reference in New Issue
Block a user