On Wednesday 09 February 2005 11:39 am, Brian Murphy wrote: > David Brownell wrote: > > >But, rather than just logging a KERN_CRIT error, the better fix would > >be to just do what ehci-hcd.c::unlink_async() does and stick that QH > >at the end of the reclaim queue, in QH_STATE_UNLINK_WAIT. In fact, > >can you try just calling unlink_async() there, to see if that behaves? > >Instead of start_unlink_async(). If that works, I'd like to see if > >this could still get into 2.6.11 ... > > > > > > > Did you mean something like this?
Yes, does that work OK for you? - Dave > --- linux-2.6.11-rc3.orig/drivers/usb/host/ehci-q.c 2005-02-05 > 10:41:57.000000000 +0100 > +++ linux-2.6.11-rc3/drivers/usb/host/ehci-q.c 2005-02-09 > 20:31:40.000000000 +0100 > @@ -267,6 +267,7 @@ > } > > static void start_unlink_async (struct ehci_hcd *ehci, struct ehci_qh *qh); > +static void unlink_async (struct ehci_hcd *ehci, struct ehci_qh *qh); > > static void intr_deschedule (struct ehci_hcd *ehci, struct ehci_qh *qh); > static int qh_schedule (struct ehci_hcd *ehci, struct ehci_qh *qh); > @@ -430,7 +431,7 @@ > intr_deschedule (ehci, qh); > (void) qh_schedule (ehci, qh); > } else > - start_unlink_async (ehci, qh); > + unlink_async (ehci, qh); > break; > /* otherwise, unlink already started */ > } > > or should the if still be there? This seems correct. > > /Brian > ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ [email protected] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
