rdma_replace_ah_attr(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… 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 existing ah_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 new ah_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 πŸ’€


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