On Fri, Aug 17, 2012 at 10:04:24PM -0400, Alan Stern wrote:

[snip]

Thanks for the reply.

> > 
> > Some updates:
> > 
> > After running usbmon, I realized that the paging request address is the
> > address of the urb.
> 
> That doesn't make sense.  implement() shouldn't know anything about the
> address of any URBs.  (It should be able to access an URB's transfer
> buffer, but that's a different matter.)
> 

Check out the following output from the oops markup
(http://paste.debian.net/184443/). It isolates the
faulting instruction. Maybe it makes more sense to you?

> >  I think the urb gets deleted while the implement
> > function is going on.
> 
> If hid_output_report() gets passed the address of an URB then something
> has already gone wrong.
> 

Looking at the output of usbmon, the kernel re-uses URB addresses. Is it
possible that the urb is freed while the instruction is in
*implement()*?

Thanks,
Amit
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to