Re: Kernel OOPS in usb_submit_urb in drivers/usb/core/urb.c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


On Fri, 27 Jul 2012, Damjan wrote:

> >> Maybe I read the kernel OOPS wrong. Was &ep->desc NULL or not?
> >
> > It's hard to tell from the information in the oops.  You'd have to get
> > an assembly listing of usb_submit_urb() and figure out what source code
> > statement corresponds to offset 0x75 in the object code.
> >
> > Why did you originally think the problem was in the usb_endpoint_type
> > function call?
> 
> I used gdb, I compile my own kernels so that was not hard. I just had 
> to recompile that file with debug symbols (-g).
> It said the problems is in the usb_endpoint_type(const struct 
> usb_endpoint_descriptor *epd)
> inline function that only does epd->bmAttributes
> 
> Also when I added the check for a NULL &ep->desc just before the call 
> to usb_endpoint_type I no longer got an OOPS, so that confirmed to me 
> that &ep->desc is NULL
> Maybe I can log the ep pointer, and something else in that case?

Good idea.  You could add something like:

	WARN_ON(&ep->desc == NULL);

That would log all the information you should need.  Also, it will help
if you enable CONFIG_FRAME_POINTER and CONFIG_USB_DEBUG.

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


B and H Foto and Electronics Corp.

[Linux Media]     [Video for Linux]     [Linux Input]     [Linux Audio Users]     [Photo]     [Yosemite News]    [Yosemite Photos]    [Free Online Dating]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]     [More Archives]

Add to Google Powered by Linux