In the case of chassisNr (used to set chassis_nr of a pci-bridge controller), 0 is reserved for / used by the pci[e]-root bus. In the base of busNr, a value of 0 would mean that the root bus had no places available to plug in new buses, including the pxb itself (the documentation I wrote for pxb even noted the limit of busNr as 1.254). NB: oddly, the "chassis" attribute, which is used for pcie-root-port and pcie-switch-downstream-port *can* be set to 0, since it's the combination of {chassis, slot} that needs to be unique, not chassis by itself (and slot 0 of pcie-root is reserved, while pcie-*-port can use *only* slot 0). This resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1342962 --- docs/formatdomain.html.in | 2 +- src/conf/domain_conf.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in index d181ffa..88db3bc 100644 --- a/docs/formatdomain.html.in +++ b/docs/formatdomain.html.in @@ -3277,7 +3277,7 @@ control QEMU's "chassis_nr" option for the pci-bridge device (normally libvirt automatically sets this to the same value as the index attribute of the pci controller). If set, chassisNr - must be between 0 and 255. + must be between 1 and 255. </dd> <dt><code>chassis</code></dt> <dd> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 23ca236..9a6610b 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -8426,11 +8426,11 @@ virDomainControllerDefParseXML(xmlNodePtr node, chassisNr); goto error; } - if (def->opts.pciopts.chassisNr < 0 || + if (def->opts.pciopts.chassisNr < 1 || def->opts.pciopts.chassisNr > 255) { virReportError(VIR_ERR_XML_ERROR, _("PCI controller chassisNr '%s' out of range " - "- must be 0-255"), + "- must be 1-255"), chassisNr); goto error; } @@ -8477,11 +8477,11 @@ virDomainControllerDefParseXML(xmlNodePtr node, busNr); goto error; } - if (def->opts.pciopts.busNr < 0 || + if (def->opts.pciopts.busNr < 1 || def->opts.pciopts.busNr > 254) { virReportError(VIR_ERR_XML_ERROR, _("PCI controller busNr '%s' out of range " - "- must be 0-254"), + "- must be 1-254"), busNr); goto error; } -- 2.5.5 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list