On Sat, Nov 24, 2018 at 10:25:52AM +0100, Lorenzo Bianconi wrote: > > During removal of usb dongle, noticed many unhandled rx urb > > below. This this patch, make it possible and early completion > > of the rx tasklet. > > > > mt76x2u 1-3.4.3.1.2:1.0: rx urb failed: -71 > > mt76x2u 1-3.4.3.1.2:1.0: rx urb failed: -71 > > mt76x2u 1-3.4.3.1.2:1.0: rx urb failed: -71 > > mt76x2u 1-3.4.3.1.2:1.0: rx urb failed: -71 If problem here is just printing errors, I think we are ok. If problem is some hung or infinity loop, it should be fixed. > Hi Eduardo, > > I think EPROTO is a more general error (it is not strictly related to > device removal) > and it could happen even during normal operation. In this case I guess we should > reinsert the urb to usb-core. Some (out of tree) usb host drivers returns EPROTO all the time in some error conditions. On rt2x00 resubmitting urb resulted in infinity loop: https://marc.info/?t=153375128700002&r=1&w=2 Fix I proposed for that was counting EPROTO errors and mark device as removed if 10 of them happened in row: https://marc.info/?l=linux-wireless&m=153441755529960&w=2 Thanks Stanislaw