irdma_sc_cq_create(9)
π irdma_sc_cq_create(9) β the Kernel API Manual page, but make it make sense π
okay bestie, so this is irdma_sc_cq_create(9) out of the Kernel API Manual, and no cap, the name kinda tells you everything: it creates a completion q. that's it, that's the vibe. this page is giving "one function, four arguments, and then a whole extended family in SEE ALSO" energy, and we're gonna get through all of it together. grab a π, let's go.
β¨ NAME β¨
irdma_sc_cq_create β create completion q π
like literally. it creates a completion queue. "cq" = completion q, iykyk.
πΈ SYNOPSIS πΈ
int irdma_sc_cq_create (struct irdma_sc_cq *cq , u64 scratch , bool check_overflow , bool post_sq );
it returns an int, it takes four things, and yes we're listing every single one of them below because that's what we do here. π«Ά
π¦ ARGUMENTS π¦
cqβ the cq struct itself. the actual completion-queue-shaped thing you're handing over. main character energy, honestly πscratchβ au64that gets saved, and it's saved so it can be used during cqp completion. that's its whole job. it's the little note you pass yourself later πcheck_overflowβ a flag for the overflow check. it's abool, it's a flag, it's checking overflow, that's the whole arc β¨post_sqβ a flag for cqp db to ring. yes, those are the words. no, we're not renaming them.post_sq, cqp db, ring β all of that stays exactly as written π
π SEE ALSO π
first up, the file itself, because context is everything:
- Kernel file
./drivers/infiniband/hw/irdma/ctrl.c
and then the rest of the family. literally EVERYONE shows up to this party, so here they all are, in the order the page gives them, no cap β not one single one dropped, because we do not do that here π€:
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_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_cqp_poll_registers(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)
ngl, if you read all 131 of those you're a legend and i'm obsessed with you π«Ά note thatcfg_fpm_value_gen_3(9)andcqp_sds_wqe_fill(9)andsc_vsi_update_stats(9)lowkey forgot theirdma_prefix β that's just how they're written, we don't fix what isn't ours π
πΈ okay that's the whole page, bestie. no details lost, no flags invented. this one lives under ./drivers/infiniband/hw/irdma, dated October 2026, and the manual names it irdma_sc_cq_create(9) β so next time you see a completion q appear out of nowhere, you know exactly who did it. periodt. πβ¨π
π¦ 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