rdma_restrack_begin_del(9)
π rdma_restrack_begin_del π
okay so we're in the Kernel API Manual, bestie β welcome to the resource-tracking corner of the kernel, it's giving very backstage-pass energy π
β¨ NAME β¨
rdma_restrack_begin_del β invalidates the object from the resource tracking database, but preserves its index in the array π lowkey the whole personality of this function is "you're dead to me but you keep your seat".
And here's the part you actually need to know, no cap: since this keeps the index in the array until rdma_restrack_commit_del() gets called, if rdma_restrack_add() is called in between with an old QP ID, it can result in an untracked QP ππ like. that's the trap. that's the vibe check failing.
πΈ SYNOPSIS πΈ
void rdma_restrack_begin_del (struct rdma_restrack_entry *res );
π¦ ARGUMENTS π¦
resβ resource entry π (that's the struct of the thing you're starting to delete, mwah)
β SEE ALSO β
Kernel file ./drivers/infiniband/core/restrack.c β go read it, iykyk πβ¨ and while you're at it, the whole friend group:
rdma_restrack_init(9)rdma_restrack_clean(9)rdma_restrack_count(9)rdma_restrack_attach_task(9)rdma_restrack_set_name(9)rdma_restrack_parent_name(9)rdma_restrack_new(9)rdma_restrack_add(9)rdma_restrack_abort_del(9)rdma_restrack_get_byid(9)rdma_restrack_sync(9)rdma_restrack_del(9)rdma_restrack_commit_del(9)
π reminder for the girlies: begin_del is not the whole delete. it's the beginning. don't be out here acting like the index is free when it literally is not π«Ά
that's the whole page, bestie β brought to you straight outta ./drivers/infiniband/core, dated October 2026, in all its Kernel API Manual glory ππ slay, go track some resources 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