VirtualBox

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)

smartcard_reader_wireshark_guest.pcapng (2.9 KB ) - added by Cochimetl 4 years ago.
Wireshark recording on guest
smartcard_reader_wireshark_host.pcapng (5.7 KB ) - added by Cochimetl 4 years ago.
Wireshark recording on host

Download all attachments as: .zip

Change History (4)

by Cochimetl, 4 years ago

Wireshark recording on guest

by Cochimetl, 4 years ago

Wireshark recording on host

comment:1 by aeichner, 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 Cochimetl, 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?

Note: See TracTickets for help on using tickets.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy