IBND_ITER_NODES(3)
π IBND_ITER_NODES π
okay bestie, gather round, because we're talking about ibnd_iter_nodes and ibnd_iter_nodes_type from the OpenIB Programmer's Manual. these two are your little fabric-cruising besties from <infiniband/ibnetdisc.h> and honestly? they're giving β¨effortlessβ¨.
πΈ NAME πΈ
ibnd_iter_nodes, ibnd_iter_nodes_type β hand me a fabric object and a function, and I will iterate over the nodes in that fabric for you. no cap. π¦
π SYNOPSIS π
#include <infiniband/ibnetdisc.h>
void ibnd_iter_nodes(ibnd_fabric_t *fabric, ibnd_iter_func_t func, void *user_data)
void ibnd_iter_nodes_type(ibnd_fabric_t *fabric, ibnd_iter_func_t func, ibnd_node_type_t type, void *user_data)
β¨ DESCRIPTION β¨
so. ibnd_iter_nodes() walks through all the nodes in the fabric and calls "func" on them. that's it, that's the whole vibe. every single node gets the function treatment. π
ibnd_iter_nodes_type() is literally the same thing, except it limits the iteration to only the nodes with the specified type. so if you don't want the whole crowd, you get to be picky. main character energy tbh. π
π«Ά RETURN VALUE π«Ά
ibnd_iter_nodes(), ibnd_iter_nodes_type() β NONE
yeah. nothing. no return value. they just do the thing and dip. π (that's NONE in all caps, fr fr, that's exactly what the page says.)
π AUTHORS π
Ira Weiny <weiny2@llnl.gov>
π§ a quick vibe check: this page is from the OpenIB manual, dated July 25, 2008. yes bestie, 2008 β she's vintage and she's still iconic. π
and that's the whole page!! go forth and iterate, you absolute legend. πβ
π¦ 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: libibnetdisc-dev 44.0-2 Β· BSD-MIT OR GPL-2.0-only
- debian trixie: libibnetdisc-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: libibnetdisc-dev 39.0-1 Β· BSD-MIT OR GPL-2.0-only
- ubuntu noble: libibnetdisc-dev 50.0-2build2 Β· BSD-MIT OR GPL-2.0-only
- ubuntu noble: libibnetdisc-dev 50.0-2ubuntu0.2 Β· BSD-MIT OR GPL-2.0-only
- ubuntu questing: libibnetdisc-dev 56.1-1ubuntu1
- ubuntu resolute: libibnetdisc-dev 61.0-2ubuntu3 Β· BSD-MIT OR GPL-2.0-only
- ubuntu stonking: libibnetdisc-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