[openib-general] [PATCH] Missing check for atomic_dec in ib_post_send_mad

Sean Hefty mshefty at ichips.intel.com
Tue Nov 2 09:50:51 PST 2004


On Mon, 1 Nov 2004 17:40:56 -0800 (PST)
Krishna Kumar <krkumar at us.ibm.com> wrote:

> I agree on the race between the threads, and this is something that I
> had considered as a separate problem (but now it comes back to haunt
> me :-).

These sort of race conditions was something that I gave careful
attention to when updating the code.  That doesn't mean that I didn't
miss something, and I appreciate that you're willing to review these for
correctness.
 
> An easier solution for this problem is to make sure that whoever
> gets the agent (ib_mad_recv_done_handler) validate the mad_agent
> before calling us. Basically find_mad_agent can hold a refcnt
> on the agent. Is that correct ?

This is correct.  After find_mad_agent is called, the code takes a
reference on the mad_agent.  I think this is in the portion of code from
one of your patches.  Moving the reference inside find_mad_agent is a
minor restructuring of the code.  If we do move the reference, I think
it makes sense to move the locking inside that routine as well.



More information about the general mailing list