Bug 956608
| Summary: | Fail to detect all the disks in guest when boot VM with more then 40 usb-storage disks | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Sibiao Luo <sluo> | ||||||
| Component: | qemu-kvm | Assignee: | Gerd Hoffmann <kraxel> | ||||||
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Virtualization Bugs <virt-bugs> | ||||||
| Severity: | medium | Docs Contact: | |||||||
| Priority: | medium | ||||||||
| Version: | 7.0 | CC: | acathrow, chayang, hhuang, juzhang, kraxel, michen, mrezanin, qzhang, rhod, shuang, sluo, virt-maint, xfu | ||||||
| Target Milestone: | rc | ||||||||
| Target Release: | --- | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Whiteboard: | |||||||||
| Fixed In Version: | qemu-kvm-1.5.0-1.el7 | Doc Type: | Bug Fix | ||||||
| Doc Text: | Story Points: | --- | |||||||
| Clone Of: | Environment: | ||||||||
| Last Closed: | 2014-06-13 11:16:16 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: | |||||||
| Embargoed: | |||||||||
| Attachments: |
|
||||||||
|
Description
Sibiao Luo
2013-04-25 10:05:40 UTC
Created attachment 739784 [details]
guest dmesg log.
Created attachment 739786 [details]
the qtree info and qemu-kvm command line.
Tried the windos2012-64 that also hit the same issue, only can detect 40 disks in guest. most likaly also usb hubs nesting too deep. qemu 1.5 will verify this (commit c24e4aac3bd7dd6591e26b77985e5d3915ecbe4b). *** Bug 920108 has been marked as a duplicate of this bug. *** Build in qemu-kvm-1.5.0-1.el7 Still hit it on qemu-kvm-1.5.1-2.el7.x86_64. host info: 3.10.0-0.rc7.64.el7.x86_64 qemu-kvm-1.5.1-2.el7.x86_64 guest info: 3.10.0-0.rc7.64.el7.x86_64 Steps: the same to comment #0. Result: boot guest with more than 40 usb-storage disks(e.g: 42 ) using the companion controller (ich9-ehci-uhci.cfg), but guest only can detect 40 usb-storage disks. # ls -l /dev/sd* | wc -l 40 QEMU only has 40 disks from info usb. (qemu) info usb Device 0.1, Port 1, Speed 480 Mb/s, Product QEMU USB MSD Device 0.2, Port 2, Speed 480 Mb/s, Product QEMU USB MSD Device 0.3, Port 3, Speed 480 Mb/s, Product QEMU USB MSD Device 0.4, Port 4, Speed 480 Mb/s, Product QEMU USB MSD Device 0.5, Port 5, Speed 480 Mb/s, Product QEMU USB MSD Device 0.1, Port 6, Speed 12 Mb/s, Product QEMU USB Hub Device 0.2, Port 6.1, Speed 12 Mb/s, Product QEMU USB MSD Device 0.3, Port 6.2, Speed 12 Mb/s, Product QEMU USB MSD Device 0.4, Port 6.3, Speed 12 Mb/s, Product QEMU USB MSD Device 0.5, Port 6.4, Speed 12 Mb/s, Product QEMU USB MSD Device 0.6, Port 6.5, Speed 12 Mb/s, Product QEMU USB MSD Device 0.7, Port 6.6, Speed 12 Mb/s, Product QEMU USB MSD Device 0.8, Port 6.7, Speed 12 Mb/s, Product QEMU USB MSD Device 0.9, Port 6.8, Speed 12 Mb/s, Product QEMU USB Hub Device 0.11, Port 6.8.1, Speed 12 Mb/s, Product QEMU USB MSD Device 0.12, Port 6.8.2, Speed 12 Mb/s, Product QEMU USB MSD Device 0.13, Port 6.8.3, Speed 12 Mb/s, Product QEMU USB MSD Device 0.14, Port 6.8.4, Speed 12 Mb/s, Product QEMU USB MSD Device 0.17, Port 6.8.5, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.6, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.7, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8, Speed 12 Mb/s, Product QEMU USB Hub Device 0.0, Port 6.8.8.1, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.2, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.3, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.4, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.5, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.6, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.7, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8, Speed 12 Mb/s, Product QEMU USB Hub Device 0.0, Port 6.8.8.8.1, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8.2, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8.3, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8.4, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8.5, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8.6, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8.7, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8.8, Speed 12 Mb/s, Product QEMU USB Hub Device 0.0, Port 6.8.8.8.8.1, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8.8.2, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8.8.3, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8.8.4, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8.8.5, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8.8.6, Speed 12 Mb/s, Product QEMU USB MSD Device 0.0, Port 6.8.8.8.8.7, Speed 12 Mb/s, Product QEMU USB MSD (qemu) Base on above, re-assign it again. please correct me if mistake. Best Regards, sluo please add the exact command line to the bug. (In reply to Gerd Hoffmann from comment #8) > please add the exact command line to the bug. please refer to attachment 739786 [details] for qemu-kvm command line and info qtree. and the attachment 739784 [details] for guest dmesg log. Best Regards, sluo Doesn't match what I see in testing. qemu refuses to start with "qemu-system-x86_64: -device usb-storage,drive=usbstick-41,removable=on: usb hub chain too deep" for me, which is the expected behavior. Please double-check. (In reply to Gerd Hoffmann from comment #10) > Doesn't match what I see in testing. qemu refuses to start with > "qemu-system-x86_64: -device usb-storage,drive=usbstick-41,removable=on: usb > hub chain too deep" for me, which is the expected behavior. Please > double-check. yes, retried it again, just expected result now. host info: 3.10.0-0.rc7.64.el7.x86_64 qemu-kvm-1.5.1-2.el7.x86_64 guest info: 3.10.0-0.rc7.64.el7.x86_64 If i start 42 usb-storage, qemu will quit with prompt that usb hub chain too deep. QEMU 1.5.1 monitor - type 'help' for more information (qemu) qemu-kvm: -device usb-storage,drive=drive-usb-0-41,id=usb-0-41,removable=on: usb hub chain too deep qemu-kvm: -device usb-storage,drive=drive-usb-0-41,id=usb-0-41,removable=on: Device initialization failed. qemu-kvm: -device usb-storage,drive=drive-usb-0-41,id=usb-0-41,removable=on: Failed to initialize USB device 'usb-hub' qemu-kvm: -device usb-storage,drive=drive-usb-0-42,id=usb-0-42,removable=on: Error: tried to attach usb device QEMU USB MSD to a bus with no free ports qemu-kvm: -device usb-storage,drive=drive-usb-0-42,id=usb-0-42,removable=on: Device initialization failed. qemu-kvm: -device usb-storage,drive=drive-usb-0-42,id=usb-0-42,removable=on: Device 'usb-storage' could not be initialized /etc/qemu-ifdown: could not launch network script If i start 41 usb-storage, guest can boot up successfully and all the 41 usb-storage can be detected in guest correctly. # ls -l /dev/sd* | wc -l 41 Base on above, this issue has been fixed correctly, So please ignore comment #7. According to comment11, back to ON_QA status. Verify this issue on qemu-kvm-1.5.3-30.el7.x86_64 with the same comment #0 and comment #10. QEMU will give a warning message that usb hub chain too deep when boot guest with more than 41 usb-storage. If boot guest with 40 usb-storage that can boot up successfully without any problem, and all the 40 usb-storage disk can be detected in guest correctly. host info: # uname -r && rpm -q qemu-kvm 3.10.0-64.el7.x86_64 qemu-kvm-1.5.3-30.el7.x86_64 guest info: 3.10.0-64.el7.x86_64 e.g: Warning: option deprecated, use lost_tick_policy property of kvm-pit instead. QEMU 1.5.3 monitor - type 'help' for more information (qemu) qemu-kvm: -device usb-storage,drive=drive-usb-0-41,id=usb-0-41,removable=on: usb hub chain too deep qemu-kvm: -device usb-storage,drive=drive-usb-0-41,id=usb-0-41,removable=on: Device initialization failed. qemu-kvm: -device usb-storage,drive=drive-usb-0-41,id=usb-0-41,removable=on: Failed to initialize USB device 'usb-hub' (/usr/libexec/qemu-kvm:24332): SpiceWorker-Warning **: red_worker.c:11464:dev_destroy_primary_surface: double destroy of primary surface (/usr/libexec/qemu-kvm:24332): SpiceWorker-Warning **: red_worker.c:9650:red_create_surface: condition `surface->context.canvas' reached (qemu) Base on above, this issue has been fixed successfully, move to VERIFIED status. Best Regards, sluo This request was resolved in Red Hat Enterprise Linux 7.0. Contact your manager or support representative in case you have further questions about the request. |