rvt_dereg_mr(9)
π rvt_dereg_mr β the "okay bye bestie" of memory regions πΈ
So this is a page from the Kernel API Manual (section 9, kernel-api manual, obvs) and it's all about unregistering and freeing a memory region. Lowkey iconic cleanup energy β¨
β¨ NAME β¨
rvt_dereg_mr β unregister and free a memory region π
Like, you're done with this MR, so you free it. That's the whole vibe. Periodt.
β¨ SYNOPSIS β¨
int rvt_dereg_mr (struct ib_mr *ibmr , struct ib_udata *udata );
It takes two things and gives you back an int. Cute, simple, no cap π
π«Ά ARGUMENTS π«Ά
ibmrβ the memory region that's getting freed. This is the main character of the whole operation πudataβ literally unused by the driver. It's justβ¦ there. Present. Supporting cast energy π
πΈ DESCRIPTION πΈ
Quick lil heads-up bestie: this is the function that gets called to free up MRs that were created by rvt_get_dma_mr or rvt_reg_user_mr. So if one of those two made it, this is who cleans it up π§Ήβ¨
And the best part? It returns 0 on success. That's it. Zero. The good zero. π
π¦ SEE ALSO π¦
Kernel file ./drivers/infiniband/sw/rdmavt/mr.c β plus the whole friend group, go say hi:
rvt_driver_mr_init(9)rvt_mr_exit(9)rvt_alloc_lkey(9)rvt_free_lkey(9)rvt_get_dma_mr(9)rvt_reg_user_mr(9)rvt_dereg_clean_qp_cb(9)rvt_dereg_clean_qps(9)rvt_check_refs(9)rvt_mr_has_lkey(9)rvt_ss_has_lkey(9)rvt_alloc_mr(9)rvt_set_page(9)rvt_map_mr_sg(9)rvt_fast_reg_mr(9)rvt_invalidate_rkey(9)rvt_sge_adjacent(9)rvt_lkey_ok(9)rvt_rkey_ok(9)
ngl the whole crew is listed, so if you're lost in the MR sauce, just start clicking through these π΅οΈββοΈ
π the cute sign-off π
Source & version: ./drivers/infiniband/sw/rdmavt β dated October 2026 ποΈβ¨ and it's all filed under rvt_dereg_mr(9), mwah π go free those memory regions responsibly bestie ππ
π¦ 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