irdma_cqp_poll_registers(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’« irdma_cqp_poll_registers β€” the Kernel API Manual, section 9, bestie πŸ’«

okay so picture this: you're deep in the kernel, you're in Kernel API Manual territory, section 9, and you just need to poll the cqp registers. That's it. That's the whole assignment. And this lil function? She does exactly that. No notes. πŸ’…


🌸 NAME 🌸

irdma_cqp_poll_registers β€” poll cqp registers, bestie. literally what it says on the tin. ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

int irdma_cqp_poll_registers (struct irdma_sc_cqp *cqp , u32 tail , u32
count );

πŸŽ€ ARGUMENTS πŸŽ€

  • cqp β€” the struct for cqp hw, aka the whole vibe of the hardware-side cqp object. she's the main character of this call, fr fr. πŸ‘‘
  • tail β€” the wqtail register value. yes, exactly that. the tail. 🐾
  • count β€” how many times to try for completion. like, your patience budget. your attempt allowance. use it wisely. 😭

πŸ”₯ SEE ALSO πŸ”₯

First thing's first β€” the source file lives at Kernel file ./drivers/infiniband/hw/irdma/ctrl.c, so go say hi to her when you get a sec. 🫢

And now… the friend group. The whole entire extended friend group. Not me listing every single one, because every single one matters and I would never skip a bestie. πŸ’–

irdma_get_qp_from_list(9), irdma_sc_suspend_resume_qps(9), irdma_change_l2params(9), irdma_qp_rem_qos(9), irdma_qp_add_qos(9), irdma_sc_pd_init(9), irdma_sc_add_arp_cache_entry(9), irdma_sc_del_arp_cache_entry(9), irdma_sc_manage_apbvt_entry(9), irdma_sc_manage_qhash_table_entry(9), irdma_sc_qp_init(9), irdma_sc_srq_init(9), irdma_sc_srq_create(9), irdma_sc_srq_modify(9), irdma_sc_srq_destroy(9), irdma_sc_qp_create(9), irdma_sc_qp_modify(9), irdma_sc_qp_destroy(9), irdma_sc_get_encoded_ird_size(9), irdma_sc_qp_setctx_roce_gen_2(9), irdma_sc_get_encoded_ird_size_gen_3(9), irdma_sc_qp_setctx_roce_gen_3(9), irdma_sc_add_local_mac_entry(9), irdma_sc_del_local_mac_entry(9), irdma_sc_qp_setctx(9), irdma_sc_alloc_stag(9), irdma_sc_mr_reg_non_shared(9), irdma_sc_dealloc_stag(9), irdma_sc_mw_alloc(9), irdma_sc_mr_fast_register(9), irdma_sc_gen_rts_ae(9), irdma_sc_send_lsmm(9), irdma_sc_send_rtt(9), irdma_iwarp_opcode(9), irdma_locate_mpa(9), irdma_bld_termhdr_ctrl(9), irdma_bld_termhdr_ddp_rdma(9), irdma_bld_terminate_hdr(9), irdma_terminate_send_fin(9), irdma_terminate_connection(9), irdma_terminate_received(9), irdma_sc_vsi_init(9), irdma_get_stats_idx(9), irdma_hw_stats_init_gen1(9), irdma_vsi_stats_init(9), irdma_vsi_stats_free(9), irdma_get_encoded_wqe_size(9), irdma_sc_gather_stats(9), irdma_sc_manage_stats_inst(9), irdma_sc_set_up_map(9), irdma_sc_manage_ws_node(9), irdma_sc_qp_flush_wqes(9), irdma_sc_gen_ae(9), irdma_sc_manage_push_page(9), irdma_sc_suspend_qp(9), irdma_sc_resume_qp(9), irdma_sc_cq_init(9), irdma_sc_cq_create(9), irdma_sc_cq_destroy(9), irdma_sc_cq_resize(9), irdma_sc_cq_modify(9), irdma_sc_get_decoded_ird_size_gen_3(9), irdma_check_cqp_progress(9), irdma_get_cqp_reg_info(9), irdma_sc_cqp_def_cmpl_ae_handler(9), irdma_sc_cqp_cleanup_handler(9), irdma_sc_decode_fpm_commit(9), irdma_sc_parse_fpm_commit_buf(9), irdma_sc_decode_fpm_query(9), irdma_sc_parse_fpm_query_buf(9), irdma_sc_cqp_init(9), irdma_sc_cqp_create(9), irdma_sc_cqp_post_sq(9), irdma_sc_cqp_get_next_send_wqe_idx(9), irdma_sc_cqp_destroy(9), irdma_sc_ccq_arm(9), irdma_sc_process_def_cmpl(9), irdma_sc_process_ooo_cmpl(9), irdma_sc_ccq_get_cqe_info(9), irdma_sc_poll_for_cqp_op_done(9), irdma_sc_manage_hmc_pm_func_table(9), irdma_sc_commit_fpm_val_done(9), irdma_sc_commit_fpm_val(9), irdma_sc_query_fpm_val_done(9), irdma_sc_query_fpm_val(9), irdma_sc_ceq_init(9), irdma_sc_ceq_create(9), irdma_sc_cceq_create_done(9), irdma_sc_cceq_destroy_done(9), irdma_sc_cceq_create(9), irdma_sc_ceq_destroy(9), irdma_sc_process_ceq(9), irdma_sc_cleanup_ceqes(9), irdma_sc_aeq_init(9), irdma_sc_aeq_create(9), irdma_sc_aeq_destroy(9), irdma_sc_get_next_aeqe(9), irdma_sc_repost_aeq_entries(9), irdma_sc_ccq_init(9), irdma_sc_ccq_create_done(9), irdma_sc_ccq_create(9), irdma_sc_ccq_destroy(9), irdma_sc_init_iw_hmc(9), irdma_set_loc_mem(9), irdma_sc_cfg_iw_fpm(9), cqp_sds_wqe_fill(9), irdma_update_pe_sds(9), irdma_update_sds_noccq(9), irdma_sc_static_hmc_pages_allocated(9), irdma_cqp_ring_full(9), irdma_est_sd(9), irdma_sc_query_rdma_features(9), irdma_get_rdma_features(9), irdma_get_rsrc_mem_config(9), irdma_cfg_sd_mem(9), irdma_get_objs_pages(9), irdma_set_host_hmc_rsrc_gen_3(9), irdma_verify_commit_fpm_gen_3(9), irdma_set_loc_hmc_rsrc_gen_3(9), cfg_fpm_value_gen_3(9), irdma_cfg_fpm_val(9), irdma_exec_cqp_cmd(9), irdma_process_cqp_cmd(9), irdma_process_bh(9), irdma_cfg_aeq(9), sc_vsi_update_stats(9), irdma_wait_pe_ready(9), irdma_sc_dev_init(9), irdma_stat_val(9), irdma_stat_delta(9), irdma_update_stats(9)

not a single one dropped. we don't do that here. πŸ™ˆπŸ’œ

okay that's the whole page, ily, go poll those registers responsibly. 🌈⭐

and for the cute sign-off: this one comes from ./drivers/infiniband/hw/irdma, dated October 2026, and she answers to irdma_cqp_poll_registers(9). periodt. πŸ’…πŸŽ€

πŸ“¦ where this page comes from