ib_enum_roce_netdev(9)
π¦ ib_enum_roce_netdev(9) β the kernel API manual page, bestie edition β¨
okay so this is a page from the Kernel API Manual, and it's about ib_enum_roce_netdev β yes the whole name, it's a mouthful, we deal π
πΈ NAME πΈ
ib_enum_roce_netdev β enumerate all RoCE ports
β¨ SYNOPSIS β¨
void ib_enum_roce_netdev (struct ib_device *ib_dev , roce_netdev_filter
filter , void *filter_cookie , roce_netdev_callback cb , void *cookie );
π ARGUMENTS π
ib_devβ the IB device we want to query. that's the one we're snooping on πfilterβ should we call the callback? literally the vibe check for each port, bestie.filter_cookieβ cookie passed to the filter πͺcbβ callback to call for each found RoCE port. one call per port, no crumbs.cookieβ cookie passed back to the callback πͺ (yes, a second cookie. we love a snack)
π DESCRIPTION π
So what this does: it enumerates all of the physical RoCE ports of ib_dev that are related to netdevice, and then calls cb on each device where the filter function returns non-zero. that's it. that's the whole thing. the filter gets a say, and if the filter says yes (non-zero = yes, slay), the callback gets invoked. no cap π«Ά
ngl, the filter-returns-non-zero gate is the whole personality of this function β no non-zero, no callback. periodt.
π₯ SEE ALSO π₯
the whole friend group, in order, plus where the code actually lives β kerning <cyan>Kernel file ./drivers/infiniband/core/device.c`:
rdma_dev_access_netns(9)rdma_dev_has_raw_cap(9)ib_device_put(9)_ib_alloc_device(9)ib_dealloc_device(9)ib_port_immutable_read(9)ib_register_device(9)ib_unregister_device(9)ib_unregister_device_and_put(9)ib_unregister_driver(9)ib_unregister_device_queued(9)ib_register_client(9)ib_unregister_client(9)ib_get_client_nl_info(9)ib_set_client_data(9)ib_register_event_handler(9)ib_unregister_event_handler(9)ib_query_port(9)ib_device_set_netdev(9)ib_query_netdev_port(9)ib_device_get_by_netdev(9)ib_enum_all_roce_netdevs(9)ib_device_enable_gid_updates(9)ib_device_disable_gid_updates(9)ib_query_pkey(9)ib_modify_device(9)ib_modify_port(9)ib_find_gid(9)ib_find_pkey(9)ib_get_net_dev_by_params(9)
and that's the page, bestie π it lives over in ./drivers/infiniband/core, the source dates to October 2026, and the version tag on this manual page is ib_enum_roce_netdev(9) β same as the title, iconic of it honestly. go forth and enumerate responsibly π§ββοΈβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms