[virt-tools-list] [PATCH 1/2] details: the bus, device values of USB device is decimal rather than hex
Guannan Ren
gren at redhat.com
Tue Apr 23 13:30:34 UTC 2013
Although the code in lookup_nodedev() is general to deal with
hostdev, it has to seperate USB device from PCI device there.
For PCI device, the domain/bus/slot/function is hex.
For USB device, the bus/device is decimal.
This fix makes the label use hostdev pretty_name:
+------------------------------------------------------+
| Physical USB Device |
| Device: 006:032 RSA RSA SecureID (R) Authenticator |
---
virtManager/details.py | 24 +++++++++++++++---------
1 file changed, 15 insertions(+), 9 deletions(-)
diff --git a/virtManager/details.py b/virtManager/details.py
index cd18aa8..f43fefe 100644
--- a/virtManager/details.py
+++ b/virtManager/details.py
@@ -270,19 +270,25 @@ def lookup_nodedev(vmmconn, hostdev):
return None
return getattr(node, attr)
- devtype = hostdev.type
- vendor_id = hostdev.vendor or -1
- product_id = hostdev.product or -1
- device = intify(hostdev.device, True)
- bus = intify(hostdev.bus, True)
- domain = intify(hostdev.domain, True)
- func = intify(hostdev.function, True)
- slot = intify(hostdev.slot, True)
+ devtype = hostdev.type
found_dev = None
+ vendor_id = product_id = bus = device = \
+ domain = slot = function = None
+
# For USB we want a device, not a bus
if devtype == 'usb':
- devtype = 'usb_device'
+ devtype = 'usb_device'
+ vendor_id = hostdev.vendor or -1
+ product_id = hostdev.product or -1
+ bus = intify(hostdev.bus)
+ device = intify(hostdev.device)
+
+ elif devtype == 'pci':
+ domain = intify(hostdev.domain, True)
+ bus = intify(hostdev.bus, True)
+ slot = intify(hostdev.slot, True)
+ func = intify(hostdev.function, True)
devs = vmmconn.get_nodedevs(devtype, None)
for dev in devs:
--
1.8.1.4
More information about the virt-tools-list
mailing list