RDMA_GET_RECV_COMP(3)
β¨ RDMA_GET_RECV_COMP(3) β¨
okay so bestie, welcome to the librdmacm programmer's manual π this one's about rdma_get_recv_comp and it is literally the girl who fetches your finished receive requests for you. no cap.
πΈ NAME πΈ
rdma_get_recv_comp β retrieves a completed receive request. that's it, that's the job π
π SYNOPSIS π
#include <rdma/rdma_verbs.h>
int rdma_get_recv_comp (struct rdma_cm_id *id, struct ibv_wc *wc);
look at her. two params. serving c declarations. iconic β¨
π¦ ARGUMENTS π¦
idβ a reference to a communication identifier to check for completions. like, the little ID card of the thing you're vibe-checking πwcβ a reference to a work completion structure to fill in. she's empty when you hand her over, and she gets β¨filledβ¨ bestie π«Ά
π DESCRIPTION π
Retrieves a completed work request for a receive operation. the way that it justβ¦ hands you the finished thing π
Info about the completed request comes back through the wc parameter, and the wr_id is set to the context of the request. so you always know which one it was, no mystery boxes fr fr
For the deets on the work completion structure itself, go peek at ibv_poll_cq. she has the lore π
π RETURN VALUE π
Returns the number of returned completions β that's 0 or 1 β on success, or -1 on error. π
If an error happens, errno will be set to indicate the failure reason. so like, always check errno, she's not being dramatic, she's being honest π
β NOTES β
This calls polls the receive completion queue associated with an rdma_cm_id. yes, the original says "calls polls" and we are respectfully preserving that typo, periodt π
If a completion is not found, the call blocks until a request completes. like, fully sits there and waits. main character energy but make it patient π§
This call should only be used onrdma_cm_id's that do not share CQs with otherrdma_cm_id's, and that maintain separate CQs for sends and receive completions. do not skip this one bestie, it's giving real consequences π
π SEE ALSO π
rdma_cm(7)ibv_poll_cq(3)rdma_get_send_comp(3)rdma_post_send(3)rdma_post_read(3)rdma_post_write(3)
the whole friend group, go say hi π«Ά
and that's the page!! librdmacm, dated 2010-07-19 β she's been slaying since 2010 and honestly? still ate. bye bestie, go poll that CQ πβ¨π¦
π¦ where this page comes from
- alpine 3.24: rdma-core-doc 61.0-r0 Β· GPL-2.0-only OR BSD-2-Clause
- arch rolling: rdma-core 65.0-1 Β· GPL-2.0-or-later OR LicenseRef-OpenIB.org-BSD-MIT AND GPL-2.0-or-later OR LicenseRef-OpenIB.org-BSD-FreeBSD AND GPL-2.0-or-later OR LicenseRef-Intel-BSD-3-Clause AND GPL-2.0-or-later OR LicenseRef-PathScale-BSD-Patent-License AND CC0-1.0 AND MIT AND BSD-2-Clause AND CPL-1.0 OR BSD-2-Clause OR GPL-2.0-or-later
- centos-stream 10: rdma-core-devel 62.0-3.el10 Β· GPLv2 or BSD
- centos-stream 9: rdma-core-devel 61.0-3.el9 Β· GPLv2 or BSD
- centos-stream 9: rdma-core-devel 61.0-3.el9 Β· GPLv2 or BSD
- debian bookworm: librdmacm-dev 44.0-2 Β· BSD-MIT OR GPL-2.0-only
- debian trixie: librdmacm-dev 56.1-1 Β· BSD-MIT OR GPL-2.0-only
- fedora 43: rdma-core-devel 58.0-4.fc43 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- fedora 43: rdma-core-devel 58.0-4.fc43 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- fedora 44: rdma-core-devel 61.0-2.fc44 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- fedora 44: rdma-core-devel 61.0-2.fc44 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- fedora 44: rdma-core-devel 61.1^20260812git975bdaf-1.fc44 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- fedora 44: rdma-core-devel 61.1^20260812git975bdaf-1.fc44 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- freebsd 14.5: base 14.5
- freebsd 15.1: base 15.1
- nixos 26.05: rdma-core 62.0
- nixpkgs unstable: rdma-core 65.0
- opensuse-leap 16.0: rdma-core-devel 56.1-160000.2.2 Β· BSD-2-Clause OR GPL-2.0-only
- opensuse-leap 16.0: rdma-core-devel 56.1-160000.2.2 Β· BSD-2-Clause OR GPL-2.0-only
- opensuse-leap 16.0: rdma-core-devel 56.1-160000.2.2 Β· BSD-2-Clause OR GPL-2.0-only
- opensuse-leap 16.0: rdma-core-devel 56.1-160000.2.2 Β· BSD-2-Clause OR GPL-2.0-only
- ubuntu jammy: librdmacm-dev 39.0-1 Β· BSD-MIT OR GPL-2.0-only
- ubuntu noble: librdmacm-dev 50.0-2build2 Β· BSD-MIT OR GPL-2.0-only
- ubuntu noble: librdmacm-dev 50.0-2ubuntu0.2 Β· BSD-MIT OR GPL-2.0-only
- ubuntu questing: librdmacm-dev 56.1-1ubuntu1
- ubuntu resolute: librdmacm-dev 61.0-2ubuntu3 Β· BSD-MIT OR GPL-2.0-only
- ubuntu stonking: librdmacm-dev 64.0-1ubuntu1 Β· BSD-MIT OR GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms