On 03/24/2011 06:56 PM, Zane Bitter wrote: > A couple of patches follow that start implementing a free list for buffers, > and cut down on copies within the Inifiniband driver. This is still very > much a work in progress, but I'd like to solicit comments on the general > direction. > > I was originally thinking that the iba driver should register memory in a > protection domain at the time of buffer allocation, but eventually realised > that it is much simpler to register them just before they are enqueued. At > the moment, any attempt to post the same buffer again while it is still in > the send queue will trigger a copy. It may be possible to avoid this, but it > appears to me that the memory protection domains must be tied to a > particular instance and that is problematic in the rrp case. > > Did we reach a consensus on whether locking is required on the free list or > if TLS is sufficient? >
Locking is required - allocation can happen in totemsrp_mcast in thread A while free can occur in message_handler_orf_token (via messages_free) in thread B. Regards -steve > thanks, > Zane. > > --- > > Zane Bitter (2): > Avoid malloc()s by keeping a list of free packet buffers > Avoid copying buffers where possible in the Infiniband driver > > > exec/Makefile.am | 2 + > exec/totembuf.c | 81 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++ > exec/totembuf.h | 13 +++++++++ > exec/totemiba.c | 67 ++++++++++++++++++++++++++------------------- > exec/totemudp.c | 11 ++++++- > 5 files changed, 143 insertions(+), 31 deletions(-) > create mode 100644 exec/totembuf.c > create mode 100644 exec/totembuf.h > > _______________________________________________ > Openais mailing list > [email protected] > https://lists.linux-foundation.org/mailman/listinfo/openais _______________________________________________ Openais mailing list [email protected] https://lists.linux-foundation.org/mailman/listinfo/openais
