Opened 4 years ago
Last modified 4 years ago
#19946 new defect
interrupt transfers stop working
| Reported by: | Cochimetl | Owned by: | |
|---|---|---|---|
| Component: | USB | Version: | VirtualBox 6.1.10 |
| Keywords: | Cc: | ||
| Guest type: | Windows | Host type: | Linux |
Description
After forwarding a SCM Microsystems, Inc. SCR331 SmartCard Reader USB device to the guest, it can at first be used normally. If it isn't used for a few seconds (no cards are inserted or removed, no interrupt responses are sent), interrupt handling stops working for the device. The reader can still be accessed (for example, if a card is inserted certutil can still read it), but further interrupts don't reach the guest (if no card was inserted, newly inserted cards are not noticed).
Running wireshark on both host and guest shows that on both host and guest an interrupt in request is sent out and after 5 seconds a response from the device is received. After that, the guest has no further traffic, but on the host, a SET FEATURE request is sent and a response received.
I have also seen this problem on an older modified virtualbox verion 5.1.38. I was unable to use wireshark in this configuration, but observed that in qemu-usb in file hcd-xhci.c, in function xhci_process_comands, in a switch on TBRType type, it falls into CR_STOP_ENDPOINT.
Attachments (2)
Change History (4)
by , 4 years ago
| Attachment: | smartcard_reader_wireshark_guest.pcapng added |
|---|
by , 4 years ago
| Attachment: | smartcard_reader_wireshark_host.pcapng added |
|---|
Wireshark recording on host
comment:1 by , 4 years ago
Please try the latest 6.1 testbuild from here. It contains a USB fix clearing the remote wakeup capability from the passed through USB device.
comment:2 by , 4 years ago
I can confirm that under 6.1.15, the problem is fixed. Could you tell me which commit/commits the mentioned USB fix is in?


Wireshark recording on guest