[ofa-general] RE: [PATCH] ib/mad: fix incorrect access to items on local_list

Sean Hefty sean.hefty at intel.com
Fri Nov 30 10:58:22 PST 2007


>Is this OK?  It means that some MADs may be processed after
>cancel_mads() has returned, which seems risky.  I don't know what ends
>up on the local_list but eg if this leads to completions after an
>agent is unregistered then it won't be good.

The mads on the local_list hold a reference on the agent.  The completions may
come after cancel_mads() return, but should be processed before the agent is
fully unregistered.  This shouldn't be any different than mads that are removed
from the local_list in local_completions(), which get missed by cancel_mads(),
but are still completed.

The mads on the wait_list are canceled, because we don't know how long it will
take them to complete, since they could have a fairly long timeout.  The mads on
the local_list are done, and are simply waiting for processing.

At least this was how I interpreted the code...

- Sean



More information about the general mailing list