[Users] RDMA WRITE operation using kernel verbs.

Paul Grun grun at cray.com
Mon Dec 9 10:52:20 PST 2013


This kind of behavior (polling on last byte) is common practice among s/w developers, but you should be forewarned that the specifications DO NOT guarantee ordered placement of bytes into memory.  Based on most existing h/w implementations today it tends to work out, but you should NOT rely on one particular byte to indicate that all preceding bytes have been written correctly.

A much better approach is to use RDMA Write w/ IMMED, which consumes a receive resource and creates a completion.
-Paul

From: users-bounces at lists.openfabrics.org [mailto:users-bounces at lists.openfabrics.org] On Behalf Of jagadeesh kumar
Sent: Friday, December 06, 2013 4:05 AM
To: users at lists.openfabrics.org
Subject: [Users] RDMA WRITE operation using kernel verbs.

Hi all,

       I am learning RDMA_WRITE operation using OFED Verbs(Kernel space).
As RDMA_WRITE operation will not generate completion entry on Responder side,
I am following the technique like polling on the last byte of receive buffer.

Steps i followed are:
1. kmalloc is used for memory allocation,
2. ib_reg_phys_mr is used for memory registration,
3. RDMA WRITE is requested on initiator side and the completion entry is success,
4. Responder is polling on last byte of receive buffer to be set,
but Responder is not able to find the buffer updation and stuck in infinite loop.

Please help me in solving the above mentioned problem. Let me know if
something is missed.

     The same approach i.e. polling on last byte of receive buffer works for me in
user space(uverbs) RDMA_WRITE operation.

My host machine is running Linux kernel 2.6.18.

Any reference or web links will be useful.

Thanks & Regards
Jagadeesh.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/users/attachments/20131209/2223c2bf/attachment.html>


More information about the Users mailing list