irdma_alloc_pd(9)
π irdma_alloc_pd(9) π
okay so you found yourself in the Kernel API Manual (yes, that's the manual name, we're fancy here β¨) and you clicked on irdma_alloc_pd. bestie, you're in the right place β grab a strawberry π, this one's actually short and sweet.
πΈ NAME πΈ
irdma_alloc_pd β allocate protection domain
like, literally what it says on the tin. it allocates a protection domain. no cap.
β¨ SYNOPSIS β¨
int irdma_alloc_pd (struct ib_pd *pd , struct ib_udata *udata );
(please do not come for me about the spacing, that's genuinely how it's written π I keep the facts, I don't touch the characters)
π ARGUMENTS π
pdβ the PD pointer. your protection domain, your main character π that's the thing you're allocating.udataβ user data. yes, that's the whole description. short queen energy, we love a one-liner π«Ά
π₯ SEE ALSO π₯
okay so this is where it gets real. this page is not a solo act, it's a whole friend group, and I'm not leaving a single one of them out. if you want the full lore, look at the kernel file ./drivers/infiniband/hw/irdma/verbs.c and then go meet the rest of the squad:
irdma_query_device(9), irdma_query_port(9), irdma_disassociate_ucontext(9), irdma_mmap(9), irdma_alloc_push_page(9), irdma_alloc_ucontext(9), irdma_dealloc_ucontext(9), irdma_dealloc_pd(9), irdma_get_pbl(9), irdma_clean_cqes(9), _irdma_destroy_qp(9), irdma_destroy_qp(9), irdma_setup_virt_qp(9), irdma_setup_umode_qp(9), irdma_setup_kmode_qp(9)
irdma_create_qp(9), irdma_query_qp(9), irdma_query_pkey(9), irdma_modify_qp_roce(9), irdma_modify_qp(9), irdma_srq_free_rsrc(9), irdma_cq_free_rsrc(9), irdma_free_cqbuf(9), irdma_process_resize_list(9), irdma_destroy_srq(9), irdma_destroy_cq(9), irdma_resize_cq(9)
irdma_srq_event(9), irdma_modify_srq(9), irdma_create_srq(9), irdma_query_srq(9), irdma_create_cq(9), irdma_get_mr_access(9), irdma_free_stag(9), irdma_create_stag(9), irdma_next_pbl_addr(9), irdma_copy_user_pgaddrs(9), irdma_check_mem_contiguous(9), irdma_check_mr_contiguous(9)
irdma_setup_pbles(9), irdma_handle_q_mem(9), irdma_hw_alloc_mw(9), irdma_alloc_mw(9), irdma_dealloc_mw(9), irdma_hw_alloc_stag(9), irdma_alloc_mr(9), irdma_set_page(9), irdma_map_mr_sg(9), irdma_hwreg_mr(9), irdma_reg_user_mr(9), irdma_reg_phys_mr(9), irdma_get_dma_mr(9), irdma_del_memlist(9), irdma_dereg_mr(9)
irdma_post_send(9), irdma_post_srq_recv(9), irdma_post_recv(9), irdma_flush_err_to_ib_wc_status(9), irdma_process_cqe(9), irdma_poll_one(9), __irdma_poll_cq(9), irdma_poll_cq(9), irdma_req_notify_cq(9), irdma_alloc_hw_port_stats(9), irdma_get_hw_stats(9), irdma_query_gid(9)
mcast_list_add(9), mcast_list_del(9), mcast_list_lookup_ip(9), irdma_mcast_cqp_op(9), irdma_mcast_mac(9), irdma_attach_mcast(9), irdma_detach_mcast(9), irdma_ah_exists(9), irdma_destroy_ah(9), irdma_create_user_ah(9), irdma_create_ah(9), irdma_query_ah(9)
irdma_init_roce_device(9), irdma_init_iw_device(9), irdma_init_rdma_device(9), irdma_port_ibevent(9), irdma_ib_unregister_device(9), irdma_ib_register_device(9), irdma_ib_dealloc_device(9)
like I said. every single one. iykyk π¦
and that's the whole page bestie π go allocate that protection domain, you're gonna slay β this little love letter came from ./drivers/infiniband/hw/irdma, dated October 2026, and yes it's called irdma_alloc_pd(9), the one and only π
β¨
π¦ 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