irdma_alloc_mr(9)
π irdma_alloc_mr(9)
okay so bestie, welcome to another episode of the Linux kernel API manual β this one's irdma_alloc_mr, straight out of the Kernel API Manual, and it's literally the function that registers a stag for fast memory registration. it's giving "my memory but make it registered" energy β¨
πΈ NAME
irdma_alloc_mr β register stag for fast memory registration π
π¦ SYNOPSIS
struct ib_mr * irdma_alloc_mr (struct ib_pd *pd , enum ib_mr_type
mr_type , u32 max_num_sg );
no cap, that's the whole signature. three args, one struct ib_mr * coming back at you π«Ά
β¨ ARGUMENTS
pdβ the ibpd pointer π like, your protection domain, the whole vibe container for this memory regionmr_typeβ memory for stag registration β this is where you tell it what kind of stag situation we're doingmax_num_sgβ max number of pages π the ceiling on how many pages you're bringing to this party
π₯ SEE ALSO
the kernel file lives at ./drivers/infiniband/hw/irdma/verbs.c and honestly it's the main character of this whole saga β go read it if you're nosy (iykyk) π
and here's the entire friend group, nobody left behind, periodt:
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_alloc_pd(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_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)
bestie note: that list is LONG long. it's giving "linked list of doom" but every single one is a real page, so go off π
okay that's the whole page, mwah π this one came from ./drivers/infiniband/hw/irdma, dated October 2026, and it's filed under irdma_alloc_mr(9) β slay, go register some stag, you absolute icon ππ
π¦ 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