On Thu, 10 Jan 2013, Laurent Pinchart wrote: > Hi Josh, > > On Tuesday 08 January 2013 11:03:22 Josh Boyer wrote: > > On Tue, Jan 08, 2013 at 10:51:20AM -0500, Alan Stern wrote: > > > On Mon, 7 Jan 2013, Josh Boyer wrote: > > > > Hi, > > > > > > > > We've had a few reports in Fedora of users hitting the WARN_ONCE in > > > > drivers/usb/core/urb.c that prints a warning about a usb_submit_urb > > > > being called on an active URB. One of them[1] is from the ums_realtek > > > > driver and the other[2] is from the uvcvideo driver. However, I noticed > > > > that in both instances it seems the devices were coming back from what I > > > > think is autosuspend. > > > > > > > > I didn't immediately find any similar reports, and to my rather > > > > inexperienced eyes the drivers didn't seem to be doing anything clearly > > > > wrong. I'm wondering if anyone has some possible ideas for debugging > > > > and whether or not this might be a general issue? > > > > > > I don't see anything wrong either. > > > > > > Can you ask the users to collect a usbmon trace covering the period > > > when the problem occurs? > > > > I'll certainly ask. I'm not particularly hopeful for great results though, > > as the problems seem to be rather intermittent. > > > > Thanks for taking a look. > > I've never heard of such problems with the uvcvideo driver, and I don't see Such problems could have existed silently. The new kernel calls WARN_ONCE but otherwise treats the error the same as the old kernels. > anything wrong with the code at first sight. The driver only submits URBs when > starting the video capture (at that point no URB should be in flight) or in > the URB completion handler (by definition the URB has completed then). > > I've had a quick look at the trace posted at > https://bugzilla.redhat.com/show_bug.cgi?id=879462 but usbmon only shows URBs > that are successfully submitted. I'm not sure what useful information I could > get from the trace. As Ming Lei pointed out, we would have to combine the dmesg information with the usbmon trace. The WARN_ONCE and usbmon both provide the URB's address, so we could tell if that URB really was still pending when the WARN_ONCE was triggered. We also might be able to tell (by looking at the URB's contents) what piece of code had submitted it the first time. Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html