Yes, I checked the libvirt code and found that the strtoul function is used to do the hexadecimal conversion, thank you for your reply :)


yaohua.wu@zstack.io
 
From£º YaoHua Wu
Date£º 2020-12-08 16:14
To£º libvirt-users
Subject£º Cannot passthrough usb with bus number and device number
Sometimes, qemu cannot find correct usb device number
Reproduce steps:
1¡¢lsusb
Bus 001 Device 011: ID 090c:1000
1¡¢prepare usb device attach xml
<hostdev managed="yes" mode="subsystem" type="usb">
    <source>
        <vendor id="0x090c" />
        <product id="0x1000" />
        <address bus='001' device='011'/>
    </source><address bus="1" port="1" type="usb" />
</hostdev>
2¡¢virsh attach-device vm usb.xml
error: internal error: Did not find USB device 090c:1000 bus:1 device 9

Question:
why the device number returned in qemu's error report is not what I wrote in xml£¬
what I mean is that if my dev number is really wrong, the returned error should also be the number I wrote£¬
commonly when using dongle

Look forward to your reply

yaohua.wu