On Wed, Jul 22, 2015 at 12:04:41PM -0400, Laine Stump wrote: > If a pci address had a function number out of range, the error message > would be: > > Insufficient specification for PCI address > > This was due to an unnecessary call to virDevicePCIAddressIsValid() > during parse of the pci address - we will anyway check for validity of > the PCI address later on. > > With that extra check removed, the error message is the much more useful: > > Invalid PCI address 0000:02:06.8. function must be <= 7 >
That error is reported by virDomainPCIAddressValidate, called when we
validate and assign guest PCI addresses.
Other code paths do not have that protection. After this patch, we
happily parse:
<hostdev mode='subsystem' type='pci' managed='yes'>
<source>
<address domain='0x0000' bus='0x02' slot='0x00' function='0x9'/>
</source>
</hostdev>
A vague error message (and refusing to continue with invalid data)
is better than no error, I think we should keep the error here.
> This resolves:
>
> https://bugzilla.redhat.com/show_bug.cgi?id=1004596
> ---
> src/conf/device_conf.c | 7 +------
> 1 file changed, 1 insertion(+), 6 deletions(-)
>
> diff --git a/src/conf/device_conf.c b/src/conf/device_conf.c
> index e7b7957..09a7019 100644
> --- a/src/conf/device_conf.c
> +++ b/src/conf/device_conf.c
> @@ -1,7 +1,7 @@
> /*
> * device_conf.c: device XML handling
> *
> - * Copyright (C) 2006-2012 Red Hat, Inc.
> + * Copyright (C) 2006-2015 Red Hat, Inc.
Oh no, this file was unprotected for almost three years.
Jan
signature.asc
Description: Digital signature
-- libvir-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/libvir-list
