[openib-general] Re: [PATCH] ipoib_flush_paths

Michael S. Tsirkin mst at mellanox.co.il
Wed Apr 5 17:01:17 PDT 2006


Quoting r. Roland Dreier <rdreier at cisco.com>:
> Subject: Re: [PATCH] ipoib_flush_paths
> 
>     Michael> See what happens if you pass a stale id (query finished)
>     Michael> and a NULL query?
> 
> Ah, I see.  It can deal with a stale id or a NULL query, but both at
> once leads to a bad coincidence.  I guess that's not quite a bug in
> ib_sa_cancel_query(), although it might be nice if it dealt with NULL
> query pointers.
> 
> Well, at least this would lead to an instant crash as it is now.  Out
> of curiousity have you guys seen this actually happen?

Yes, I think we have.


By the way, I was thinking about SA queries, and I came to a conclusion
that we have an unfixable race at module unload: nothing I as the user of
SA do in my callback can ensure that my callback is not still running
when my module is unloaded.

The problem here is lack of explicit registration wth SA: I just push queries
so there's no time SA can flush its queues for me.

The only easy way out that I see is some kind of sa_flush function that
will flush MAD wqs, and ask all users to call that.
And I think we have the same bug in addr so this needs a flush function too.

Makes sense?

-- 
MST



More information about the general mailing list