Skip to content

no IBV_SEND_INLINE thus memory registration required on QLogic/Intel HCA

Yann Droneaud linux-rdma 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest3 patches 6 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/3man: rdma_post_*(): memory region is optional only with IBV_SEND_INLINE.man/rdma_post_send.3 man/rdma_post_ud_send.3 man/rdma_post_write.3+3 -31 reply
2/3adds rdma_query_qp() function.include/rdma/rdma_cma.h src/cma.c src/librdmacm.map+41 -00 replies
3/3examples: use IBV_SEND_INLINE if supportedexamples/rdma_client.c examples/rdma_server.c examples/rdma_xclient.c +1 more+107 -300 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH librdmacm 0/3] no IBV_SEND_INLINE thus memory registration required on QLogic/Intel HCA

While doing some tests, I've found that rdma_client failed on my QLogic/Intel QLE7340 / QLE7342 HCA:

    # rdma_client
    rdma_client: start
    rdma_post_send 22
    rdma_client: end -1

I had a deeper look on the examples and found that max_inline_data was returned as 0, thus IBV_SEND_INLINE is not available and memory must be registered to provide a valid lkey in WR.

[BTW, having registered the memory and still use IBV_SEND_INLINE was OK,
that should be an error, isn't it ?]

Please find some patches to
- document IBV_SEND_INLINE and memory registration,
- add a query function to check max_inline_data on QP created by cma,
- fix the examples to not use IBV_SEND_INLINE if max_inline_data is less than expected.

Yann Droneaud (3):
man: rdma_post_*(): memory region is optional only with
IBV_SEND_INLINE.
adds rdma_query_qp() function.
examples: use IBV_SEND_INLINE if supported

 examples/rdma_client.c  | 25 +++++++++++++++++++------
 examples/rdma_server.c  | 31 +++++++++++++++++++++++++------
 examples/rdma_xclient.c | 42 ++++++++++++++++++++++++++++++++++--------
 examples/rdma_xserver.c | 39 +++++++++++++++++++++++++++++----------
 include/rdma/rdma_cma.h | 16 ++++++++++++++++
 man/rdma_post_send.3    |  2 +-
 man/rdma_post_ud_send.3 |  2 +-
 man/rdma_post_write.3   |  2 +-
 src/cma.c               | 24 ++++++++++++++++++++++++
 src/librdmacm.map       |  1 +
 10 files changed, 151 insertions(+), 33 deletions(-)
Signature · 6 lines
1.8.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html