irdma_setup_virt_qp(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… irdma_setup_virt_qp(9) β€” the Kernel API Manual one, bestie

okay so real talk, this is a page from the Kernel API Manual, and it's about irdma_setup_virt_qp. It's short. It's sweet. It does one (1) thing and honestly? Respect. ✨


🌸 NAME 🌸

irdma_setup_virt_qp β€” setup for allocation of virtual qp πŸ¦‹

πŸŽ€ SYNOPSIS πŸŽ€

void irdma_setup_virt_qp (struct irdma_device *iwdev , struct irdma_qp
*iwqp , struct irdma_qp_init_info *init_info );

no cap, that's the whole signature. void return, three args, zero drama. πŸ’…

πŸ’– ARGUMENTS πŸ’–

  • iwdev β€” the irdma device. it's giving "the whole personality of the hardware." πŸ‘‘
  • iwqp β€” qp ptr. yes, a pointer to the qp. iconic, brief, exactly what it says. ⭐
  • init_info β€” initialize info to return. so this one's the output-ish one, it's where the info goes on the way back out. 🫢

🌈 SEE ALSO 🌈

first off, the kernel file lives at ./drivers/infiniband/hw/irdma/verbs.c β€” that's the home base, go say hi. 🏠

and then the friend group. it's a big friend group. like huge. grab a snack πŸ“:

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_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. big friend group. iykyk. 🧚


no warnings, no exit statuses, no environment variables on this one β€” it's literally just "here's the device, here's the qp, here's where the init info goes." clean. minimal. ate. πŸ”₯

and that's the page, bestie, that's the whole thing πŸ’œ β€” sourced from ./drivers/infiniband/hw/irdma, dated October 2026, and yes the header says irdma_setup_virt_qp(9) all three times because the manpage gods love a callback. πŸŽ€βœ¨πŸŒΈ

πŸ“¦ where this page comes from