rdma_replace_ah_attr(9)
π rdma_replace_ah_attr (kernel API manual, bestie edition) β¨
okay so welcome to the rdma_replace_ah_attr(9) page, aka the Kernel API Manual glow-up for one very specific little function π
πΈ NAME πΈ
rdma_replace_ah_attr β replace a valid ah_attr with a new one. literally that's the whole gig π
π¦ SYNOPSIS π¦
void rdma_replace_ah_attr(struct rdma_ah_attr *old, const struct rdma_ah_attr *new);
β¨ ARGUMENTS β¨
oldβ pointer to the existingah_attr, the one that's getting swapped out π it's assumed to be valid or zero'd, no cap. don't come at it with garbage, it's not built for that πnewβ pointer to the newah_attr. the fresh one. the main character arriving π«Ά
π DESCRIPTION π
so here's the tea β rdma_replace_ah_attr first releases any reference in the old ah_attr β but only if the old ah_attr is valid, okay? no reference, nothing to release, we move on π§
after that it copies the new attribute over and holds the reference to the replaced ah_attr. so like... old one gets its reference dropped, new one gets copied in and the reference is kept. that's the whole flow, iconic behavior honestly π
π SEE ALSO π
the kernel file is ./drivers/infiniband/core/verbs.c and here's the whole friend group, all of them, every single one, i'm not skipping anybody π
__ib_alloc_pd(9)ib_dealloc_pd_user(9)rdma_copy_ah_attr(9)rdma_move_ah_attr(9)rdma_create_ah(9)rdma_create_user_ah(9)rdma_move_grh_sgid_attr(9)rdma_destroy_ah_attr(9)ib_create_srq_user(9)ib_create_qp_user(9)ib_resolve_eth_dmac(9)ib_modify_qp_with_udata(9)ib_alloc_mr(9)ib_alloc_mr_integrity(9)ib_alloc_xrcd_user(9)ib_dealloc_xrcd_user(9)ib_create_wq(9)ib_destroy_wq_user(9)ib_map_mr_sg_pi(9)ib_map_mr_sg(9)ib_sg_to_pages(9)ib_drain_sq(9)ib_drain_rq(9)ib_drain_qp(9)rdma_alloc_hw_stats_struct(9)rdma_free_hw_stats_struct(9)
bestie reminder π«Ά old must be valid or zero'd. that's a stated assumption, not a suggestion, okay? iykyk π
k bye, that's the page π this came from ./drivers/infiniband/core and it's dated October 2026, so like, put that in your calendar or whatever πβ stay hydrated, go touch some kernel code π
π¦ 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