| Summary: | virt-manager doesn't notice new USB device plugged into previously used port | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | lnie <lnie> | ||||||||
| Component: | virt-manager | Assignee: | Cole Robinson <crobinso> | ||||||||
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||||
| Severity: | unspecified | Docs Contact: | |||||||||
| Priority: | unspecified | ||||||||||
| Version: | 25 | CC: | berrange, crobinso, lnie, virt-maint | ||||||||
| Target Milestone: | --- | ||||||||||
| Target Release: | --- | ||||||||||
| Hardware: | Unspecified | ||||||||||
| OS: | Unspecified | ||||||||||
| Whiteboard: | |||||||||||
| Fixed In Version: | virt-manager-1.4.1-1.fc25 | Doc Type: | If docs needed, set a value | ||||||||
| Doc Text: | Story Points: | --- | |||||||||
| Clone Of: | Environment: | ||||||||||
| Last Closed: | 2017-03-17 18:51:20 UTC | Type: | Bug | ||||||||
| Regression: | --- | Mount Type: | --- | ||||||||
| Documentation: | --- | CRM: | |||||||||
| Verified Versions: | Category: | --- | |||||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||||
| Attachments: |
|
||||||||||
Created attachment 1214856 [details]
journal
Can you run virt-manager --debug, reproduce the issue, and attach the full text output? Created attachment 1234945 [details]
debug output
Seems that the issue is: virt-manager will only remember the usb when you first try to add a usb The reproduce steps: 1)insert usb A, 2)click the "Add Hardware",and click "usb Host device" 3)click "cancel" 4)unplug usb A and insert usb B and repeat step2,you will find that usbA is there instead of usbB If you insert usb A,then unplug it and insert usb B,and try to add it,you will find that usb B is there,even if you unplug it,and insert usb A. Thanks for the report, I can reproduce. The issue is that while the both USB devices end up with the same libvirt nodedev name. This name is just a convenience identifier, which for usb devices is the string usb_$bus_$port F25 virt-manager checks nodedev uniqueness by this name field, and only refreshes the list occasionally, like when launching the addhardware wizard. What happens is, the two different devices end up with the same nodedev name, we refresh the device list but since no names changed, we don't notice the new device, and advertise the old device data. Upstream virt-manager with f25 libvirt actually doesn't have this problem, because we use the new libvirt nodedev event APIs, which asynchronously informs us when devices are added/removed, so we don't depend on name uniqueness. So the next release will 'fix' this. The old issue will still persist but IMO it's not worth the effort to fix in that case, since over time it will be less important. Setting to POST since this is fixed in git virt-manager-1.4.1-1.fc25 has been submitted as an update to Fedora 25. https://bodhi.fedoraproject.org/updates/FEDORA-2017-8b8b4e1753 virt-manager-1.4.1-1.fc25 has been pushed to the Fedora 25 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-8b8b4e1753 virt-manager-1.4.1-1.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report. |
Created attachment 1214855 [details] screenshot Description of problem: please see the attached picture for more specific information,thanks. Version-Release number of selected component (if applicable): virt-manager-1.4.0-3.fc25.noarch How reproducible: always Steps to Reproduce: 1.Insert the Sandisk usb stick to the host machine's usb port, 2.plug out it and insert the Kingston usb 3.Try to add the Kingston usb to the virtual machine using virt-manager Actual results: Expected results: Additional info: