mirror of https://gitee.com/openkylin/libvirt.git
domain_conf: move pci-root/pcie-root address check to domain_validate.c
Reviewed-by: Michal Privoznik <mprivozn@redhat.com> Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
This commit is contained in:
parent
4fa54581d0
commit
5f91f4c4e3
|
@ -10825,12 +10825,6 @@ virDomainControllerDefParseXML(virDomainXMLOptionPtr xmlopt,
|
|||
case VIR_DOMAIN_CONTROLLER_MODEL_PCI_ROOT:
|
||||
case VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT: {
|
||||
unsigned long long bytes;
|
||||
if (def->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE) {
|
||||
virReportError(VIR_ERR_XML_ERROR, "%s",
|
||||
_("pci-root and pcie-root controllers should not "
|
||||
"have an address"));
|
||||
return NULL;
|
||||
}
|
||||
if ((rc = virParseScaledValue("./pcihole64", NULL,
|
||||
ctxt, &bytes, 1024,
|
||||
1024ULL * ULONG_MAX, false)) < 0)
|
||||
|
|
|
@ -525,6 +525,16 @@ virDomainControllerDefValidate(const virDomainControllerDef *controller)
|
|||
if (controller->type == VIR_DOMAIN_CONTROLLER_TYPE_PCI) {
|
||||
const virDomainPCIControllerOpts *opts = &controller->opts.pciopts;
|
||||
|
||||
if (controller->model == VIR_DOMAIN_CONTROLLER_MODEL_PCI_ROOT ||
|
||||
controller->model == VIR_DOMAIN_CONTROLLER_MODEL_PCIE_ROOT) {
|
||||
if (controller->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE) {
|
||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
|
||||
_("pci-root and pcie-root controllers "
|
||||
"should not have an address"));
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
if (controller->idx > 255) {
|
||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
|
||||
_("PCI controller index %d too high, maximum is 255"),
|
||||
|
|
|
@ -1 +1 @@
|
|||
XML error: pci-root and pcie-root controllers should not have an address
|
||||
unsupported configuration: pci-root and pcie-root controllers should not have an address
|
||||
|
|
Loading…
Reference in New Issue