Description of problem:
The naming for USB hostdev differs from other device types.
usb hostdev from 'bus=1 device=1' -> name: usb_usb1
usb hostdev from 'bus=3 device=6' -> name: usb_3_6
So if the bus is 1, the device is named usb_usbX. If the bus is not 1, it is named usb_X_Y. Not sure if there are other variants.
Why not use usb_X_Y structure like the other hostdev devices like pci and scsi?
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Add a USB hostdev from bus 1 to a VM
2. Add a USB hostdev from bus != 1 to a VM
3. Check the names of the devices in the 'Host Devices' tab of the VM.
IIUC, buildVmUsbSlots() has always been like this, always adding USB_BUS.
That's internal naming we get from libvirt. usb_usb1 is the root hub and usb_1_X are devices in it. Nothing we can control
In 4.2 when running on el7.5 you'll get device aliases for consistent unique identification of devices if needed
Got it, thanks Michal!