On Mon, 2007-05-07 at 07:12 -0700, Roland Dreier wrote:
> > When the system is busy it may happen that the command actually
>  > completed but it took more than the specified timeout till the
>  > task executing the command was actually given CPU time. This test
>  > checks that the completion is really missing before failing.
> 
>  > +  if (!wait_for_completion_timeout(&context->done, 
> msecs_to_jiffies(timeout)))
>  > +          if (!context->done.done) {
>  > +                  err = -EBUSY;
>  > +                  goto out;
>  > +          }
> 
> This seems more like a bug in wait_for_completion_timeout().  Anyway,
> it's definitely not OK to poke inside the definition of struct
> completion in driver code, so we need to find a different way to solve
> this.
> 
I agree that wait_for_completion_timeout() would better give an
indication of this special case but it does not. The only we can now of
such a situation is by poking into done or poking into the EQ which is
worst.


> BTW the same completion handling code is in mthca -- is this also a
> problem there?
> 
We saw this with the mthca port for connectx.

>  - R.
> 
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to