[openib-general] [PATCH][1/7]ipoib performance patches -- remove ah_reap

Shirley Ma xma at us.ibm.com
Wed May 24 15:59:15 PDT 2006


Roland,

Roland Dreier <rdreier at cisco.com> wrote on 05/24/2006 03:01:01 PM:
>     Shirley> Compared to have a single thread handling AH, I don't
>     Shirley> think this atomic operation is expensive.
> 
> But freeing AHs is something that happens infrequently and can be done
> asynchronously.  You're replacing that cost with two atomic operations
> per send packet!

No, actually it didn't free during sending during my test.

>     Shirley> It is true for unicast, it has a reference count before
>     Shirley> ipoib_send(). I need to look at multicast.
> 
> But can you guarantee that the AH stays around until after the send
> completes (which could be an arbitrarily long delay)?
> 
>  - R.

I checked negih_add_path(), for unicast it is true always. See code below.

static void neigh_add_path(..)
{
...
        if (path->ah) {
                kref_get(&path->ah->ref);
                neigh->ah = path->ah;
            ipoib_send(dev, skb, path->ah... 
} 

Please correct me if I am wrong.

Thanks
Shirley Ma
IBM Linux Technology Center
15300 SW Koll Parkway
Beaverton, OR 97006-6063
Phone(Fax): (503) 578-7638




-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/general/attachments/20060524/2dfffdf8/attachment.html>


More information about the general mailing list