irdma_create_user_ah(9)
π irdma_create_user_ah(9) β bestie edition π
okay so hi!! you're looking at a page from the Kernel API Manual, and the star of the show is irdma_create_user_ah(9). pull up a chair, grab a strawberry π, and let's get into it.
β¨ NAME β¨
irdma_create_user_ah β create user address handle π
like, it makes an address handle. for a user. that's the whole vibe.
πΈ SYNOPSIS πΈ
int irdma_create_user_ah (struct ib_ah *ibah , struct rdma_ah_init_attr
*attr , struct ib_udata *udata );
three args in, an int out. classic. no cap. π
π¦ ARGUMENTS π¦
ibahβ the address handle itself. the main character, literally. πattrβ the address handle's attributes. all the ~details~ that describe it. β¨udataβ User data. yes, that's exactly as much as the page tells us, and we are not gonna speculate. π
π₯ DESCRIPTION π₯
returns 0 on success, error otherwise. that's it, that's the whole description, and honestly? iconic minimalism. slay. πβ¨
so like β call it, check your return value: got 0? amazing, you ate. got an error? that's your sign, bestie, go check what went wrong.
fr fr do NOT skip the return value check. it's giving "trust me bro" energy if you do. π
π SEE ALSO π
the source lives in the kernel file ./drivers/infiniband/hw/irdma/verbs.c, and here's the whole friend group β every single one of them, no one left behind π«Ά:
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_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_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. the whole crew. π
and that's the page, bestie!! πβ¨ go forth and create those user address handles responsibly. iykyk π§
mwah π β this one's from ./drivers/infiniband/hw/irdma, dated October 2026, and it goes out to irdma_create_user_ah(9) itself. see u in the next manpage ππ¦
π¦ 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