Re: Kernel oops on usbhid_submit_report (updates)

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

 



On Sat, 18 Aug 2012, Amit wrote:

> Amit <amit.uttam@...> writes:
> 
> > I am getting the following kernel oops (http://paste.debian.net/182812/)
> > sporadically. Kernel version is 3.2.14.
> > 
> > Code basically does the following:
> > 
> >  ioctl(fd,HIDIOCSUSAGES, &ref_multi_u);
> >  ioctl(fd,HIDIOCSREPORT, &rep_info_u);
> > 
> > Here are some notes:
> > 
> >  1. Happens in implement() function called by hid_output_report.
> >  2. Did an ftrace and found the HIDIOCSREPORT call takes 5.3ms to
> >  complete. Is it suppose to take this long?
> >  3. Very hard to reproduce. Seems to me like a race condition?
> 
> 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.)

>  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.

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


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux