irdma_remove_pd_bp(9)
π
irdma_remove_pd_bp β kernel API manual, but make it make sense β¨
okay so bestie, welcome to irdma_remove_pd_bp(9) π this is a kernel API manual page (section 9, iykyk) and honestly? she's a little cleanup queen. let's get into it π«Ά
πΈ NAME πΈ
irdma_remove_pd_bp β the girl whose whole job is removing a backing page from a page descriptor. that's it. that's the vibe π
β¨ SYNOPSIS β¨
int irdma_remove_pd_bp (struct irdma_sc_dev *dev , struct irdma_hmc_info
*hmc_info , u32 idx );
she takes three things and returns an int, no cap π₯
π¦ ARGUMENTS π¦
devβ pointer to our HW structure, aka the hardware bestie herself πhmc_infoβ pointer to the HMC configuration information structure, all the config deets live here πidxβ the page index, literally just which page we're talking about β
π DESCRIPTION π
the way that this function does exactly three things, in order, periodt:
- marks the entry in the
pdtable (that's for paged address mode) or in thesdtable (that's for direct address mode) as invalid π - writes to the register
PMPDINVto invalidate the backing page in FV cache π₯ - decrements the ref count for the
pd_entryπ
and the assumptions (yes, plural, but there's one entry, don't come for me π):
- the caller can deallocate the memory used by backing storage after this function returns. so like, after. not before. after π«Ά
π SEE ALSO π
kernel file ./drivers/infiniband/hw/irdma/hmc.c β the source of truth, go read her:
irdma_find_sd_index_limit(9)irdma_find_pd_index_limit(9)irdma_set_sd_entry(9)irdma_clr_sd_entry(9)irdma_invalidate_pf_hmc_pd(9)irdma_hmc_sd_one(9)irdma_hmc_sd_grp(9)irdma_hmc_finish_add_sd_reg(9)irdma_sc_create_hmc_obj(9)irdma_finish_del_sd_reg(9)irdma_sc_del_hmc_obj(9)irdma_add_sd_table_entry(9)irdma_add_pd_table_entry(9)irdma_prep_remove_sd_bp(9)irdma_prep_remove_pd_page(9)
ngl bestie, the whole backing-storage deallocation thing is a real caveat, not a vibe: only free that memory after irdma_remove_pd_bp hands control back to you. sequencing matters, fr fr π
and that's the page! she lives in ./drivers/infiniband/hw/irdma, dated October 2026, and she's part of the kernel API manual. mwah, go slay your HMC cleanup π
πππ¦πΈβ¨
π¦ 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