Re: Possible OHCI driver bug ?

Alan Stern <[email protected]>
Newsgroups gmane.linux.usb.devel
Message-ID <[email protected]>
On Thu, 25 Oct 2007, Anantha Subramanyam wrote:

> > > Since the tick_before condition always returns true, this 
> > 'ed' is never
> > > removed for processing and hence the timeout. For trying 
> > out the above
> > > condition was changed to :
> > >             if (tick == ed->tick)) {    
> > > skip_ed:
> > >                 last = &ed->ed_next;
> > >                 continue;
> > >             }
> > 
> > No, don't do that!  You are replacing something wrong with something 
> > else even more wrong.
> > 
> Just curious about why this would be wrong. Thought the objective of
> this test was to just ensure that the tick value at this interrupt was
> later than ed->tick. Considering that tick is always increasing
> sequentially wouldn't this test suffice.

It would if ed->tick were set correctly to begin with.  You also need
to change start_ed_unlink() from:

	ed->tick = ohci_frame_no(ohci) + 1;

to:

	ed->tick = ohci_frame_no(ohci);

However I agree in general that eliminating tick_before() entirely 
would be a good idea.

Alan Stern


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.