Roland,
Roland Dreier <[EMAIL PROTECTED]> 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
_______________________________________________ openib-general mailing list [email protected] http://openib.org/mailman/listinfo/openib-general
To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
