[libvirt] [PATCH] hostdev: display leading zeros of USB vendor/product id's in error messages
John Ferlan
jferlan at redhat.com
Thu Aug 3 00:40:48 UTC 2017
On 07/28/2017 04:33 AM, Chen Hanxiao wrote:
> From: Chen Hanxiao <chenhanxiao at gmail.com>
>
> Many vendor id's and product id's have leading zeros.
> Show them in error messages.
>
> Signed-off-by: Chen Hanxiao <chenhanxiao at gmail.com>
> ---
> src/util/virhostdev.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
Looking at some other examples...
if (usbsrc->vendor) {
virBufferAsprintf(buf, "<vendor id='0x%.4x'/>\n", usbsrc->vendor);
virBufferAsprintf(buf, "<product id='0x%.4x'/>\n", usbsrc->product);
and
if (usbdev->vendor >= 0)
virBufferAsprintf(buf, " vendor='0x%04X'", usbdev->vendor);
if (usbdev->product >= 0)
virBufferAsprintf(buf, " product='0x%04X'", usbdev->product);
Perhaps the best thing to do is be consistent with all of them... Could
take a bit of searching, but cscope's egrep is pretty good w/
"vendor.*%.*x" (and X).
There's also a usage in libxl_conf, where "%x:%x" is used. So it may be
best to find all possible print's of vendor and make them all consistent.
John
> diff --git a/src/util/virhostdev.c b/src/util/virhostdev.c
> index 579563c..0e6b5a3 100644
> --- a/src/util/virhostdev.c
> +++ b/src/util/virhostdev.c
> @@ -1390,7 +1390,7 @@ virHostdevFindUSBDevice(virDomainHostdevDefPtr hostdev,
> } else if (!autoAddress) {
> goto out;
> } else {
> - VIR_INFO("USB device %x:%x could not be found at previous"
> + VIR_INFO("USB device %04x:%04x could not be found at previous"
> " address (bus:%u device:%u)",
> vendor, product, bus, device);
> }
> @@ -1418,12 +1418,12 @@ virHostdevFindUSBDevice(virDomainHostdevDefPtr hostdev,
> } else if (rc > 1) {
> if (autoAddress) {
> virReportError(VIR_ERR_OPERATION_FAILED,
> - _("Multiple USB devices for %x:%x were found,"
> + _("Multiple USB devices for %04x:%04x were found,"
> " but none of them is at bus:%u device:%u"),
> vendor, product, bus, device);
> } else {
> virReportError(VIR_ERR_OPERATION_FAILED,
> - _("Multiple USB devices for %x:%x, "
> + _("Multiple USB devices for %04x:%04x, "
> "use <address> to specify one"),
> vendor, product);
> }
> @@ -1435,7 +1435,7 @@ virHostdevFindUSBDevice(virDomainHostdevDefPtr hostdev,
> usbsrc->autoAddress = true;
>
> if (autoAddress) {
> - VIR_INFO("USB device %x:%x found at bus:%u device:%u (moved"
> + VIR_INFO("USB device %04x:%04x found at bus:%u device:%u (moved"
> " from bus:%u device:%u)",
> vendor, product,
> usbsrc->bus, usbsrc->device,
>
More information about the libvir-list
mailing list