On 2019/02/17 13:17, Rin Okuyama wrote:
Module Name: src
Committed By: rin
Date: Sun Feb 17 04:17:31 UTC 2019
Modified Files:
src/sys/dev/usb: usbdi.c
Log Message:
Fix system freeze when USB NICs with multiple outstanding transfers
are detached from xhci(4) or ehci(4), that enable up_serialise for
bulk transfers.
The cause of problem is that usbd_ar_pipe() waits xfers of
USBD_NOT_STARTED to be removed, although underlying upm_abort
functions do not remove such queues, as reported by "sc dying".
Therefore, remove xfers of USBD_NOT_STARTED when pipe is closed.
Sorry,
pipe is closed
---> pipe is aborted
to be exact.
Patch provided by Nick Hudson.
To generate a diff of this commit:
cvs rdiff -u -r1.181 -r1.182 src/sys/dev/usb/usbdi.c