Re: ehci_hcd: fatal error, HC died with usbaudio

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

 



On Fri, 2 Apr 2010, Nate Case wrote:

> > Maybe reuse of the sitd in sitd_complete() needs to be delayed in the 
> > same way that reuse of the itd in itd_complete() is, via 
> > free_cached_itd_list().
> 
> I didn't know what I was doing honestly, but I attempted to try this
> today also.  In short, I added a cached_sitd_list to the ehci_hcd and
> changed the index field of struct ehci_sitd to be an array like in
> struct ehci_itd.  Next, I went through and tried to make the sitd
> functions more like the itd functions with respect to the itd list
> usage.  I probably made all kinds of horrible mistakes, because I ended
> up getting errors like this:
> 
> [   33.830348] ehci_hcd 0000:07:0c.1: request bf1f49c0 would overflow (65523+16>
> 2048)

Come to think of it, let's start by testing whether the problem goes 
away when sitd's are never deallocated.  Let's just leak them.

For this, all you have to do is change the line

	list_move(&sitd->sitd_list, &stream->free_list);

near the end of sitd_complete() to

	list_del(&sitd->sitd_list);

If you still get fatal errors after making that change, then the 
problem has a different cause.

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