UMAD_REGISTER(3)
π UMAD_REGISTER π
okay bestie, welcome to the umad_register page from the OpenIB Programmer's Manual β yes, that OpenIB, the one that lives in your 3 section and is about to make your whole MAD game make sense β¨
πΈ NAME πΈ
umad_register β registering the specified management class and version for a port, periodt π
π¦ SYNOPSIS π¦
#include <infiniband/umad.h>
int umad_register(int portid, int mgmt_class, int mgmt_version , uint8_t rmpp_version, long method_mask[16/sizeof(long)]);
like. look at that signature. she's giving exactly what she needs to give π«Ά
β¨ DESCRIPTION β¨
so here's the tea, bestie π
umad_register() registers the management class you picked, the management version you picked, and whether RMPP is being used β all for the port that the portid parameter is pointing at. literally all in one call, we love a multitasker π
now, the method_mask array is where the plot thickens:
- if you do pass in a
method_maskarray, you get registered as a replier (server) for every method that has its corresponding bit turned on in thatmethod_mask. iconic. main character energy. - if
method_maskisNULL, you get registered as a MAD client instead, which means the only MADs you'll ever receive are replies to the MADs you sent β aka solicited MADs. no unsolicited drop-ins in your DMs, ngl π
π RETURN VALUE π
on success, umad_register() hands you back a non-negative agent id number π (yes, an actual id, she came through).
on error, you get a negative value, and it means one of these:
-EINVALβ invalid port handle π-EPERMβ registration failed π
fr fr, check your return value. a negative number here is not a vibe.
π SEE ALSO π
iykyk, go read them next π
π AUTHOR π
Hal Rosenstock <halr@voltaire.com> β we stan a legend π«Άβ¨
and that's the whole page, bestie!! this one came straight outta the OpenIB crew, dated May 11, 2007, and it's filed under UMAD_REGISTER(3) in your manual β go forth and register responsibly π
πΈπ
π¦ 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: libibumad-dev 44.0-2 Β· BSD-MIT OR GPL-2.0-only
- debian trixie: libibumad-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
- 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: libibumad-dev 39.0-1 Β· BSD-MIT OR GPL-2.0-only
- ubuntu noble: libibumad-dev 50.0-2build2 Β· BSD-MIT OR GPL-2.0-only
- ubuntu noble: libibumad-dev 50.0-2ubuntu0.2 Β· BSD-MIT OR GPL-2.0-only
- ubuntu questing: libibumad-dev 56.1-1ubuntu1
- ubuntu resolute: libibumad-dev 61.0-2ubuntu3 Β· BSD-MIT OR GPL-2.0-only
- ubuntu stonking: libibumad-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