[openib-general] Re: [PATCH] [DAPL] [RFC] - remove duplicate disconnect event.

James Lentini jlentini at netapp.com
Thu Apr 6 14:04:28 PDT 2006



On Wed, 5 Apr 2006, Steve Wise wrote:

> James,
> 
> Running a 4 thread, 8 ep/thread dapltest (the last test in regress.sh),
> I was intermittently seeing a seg fault in dapltest.  This is running
> over the chelsio rnic using the iwarp branch.  After debugging I found
> out that dapltest was freeing an already freed endpoint due to it
> receiving duplicate disconnect events during test shutdown.  The code
> assumes it will get exactly one disconnect event for every endpoint
> (rightly so I guess).  
> 
> I tracked this down to the code in dapl_ep_disconnect() that generates
> its own disconnect event in certain circumstances.  I removed this and
> ran regress.sh over both mthca and cxgb3 with no problems.  
> 
> So my question to the dapl experts is: why is this code here?  

This is an artifact of some older verbs definitions. This code should 
have gone in the verbs specific portion of DAPL instead of the common 
code. 

I'll play around with this and see if there are any negative effects 
on IB.

> For our iwarp devices, it ends up sometimes generating duplicate 
> disconnect events.  I don't see why its needed.  If anyone can 
> explain the logic, that would be great.
> 
> With this patch and the previous patch the fixes dat_ep_free() to always
> free the endpoint, I'm able to run dapltest 1-6 over the chelsio rnic.
> As part of pulling in the iwarp support, I'd like the group to consider
> pulling in these patches that fix issues with udapl (once we agree on
> the final patches).  For now, I'll maintain these patches in the iwarp
> branch...



More information about the general mailing list