ib_req_notify_cq(9)
okay so we're in the Kernel API Manual, and the main character of this page is ib_req_notify_cq(9) β the call where you ask a CQ to hit you up with a completion notification. let's get into it bestie π
β¨ NAME β¨
ib_req_notify_cq β request completion notification on a CQ. that's the vibe, no cap.
πΈ SYNOPSIS πΈ
int ib_req_notify_cq (struct ib_cq *cq , enum ib_cq_notify_flags flags
);
π ARGUMENTS π
cqβ the CQ you want to generate an event for. it's giving main character energy.flagsβ must contain exactly one ofIB_CQ_SOLICITEDorIB_CQ_NEXT_COMPto request an event on the next solicited event or next work completion at any type, respectively.IB_CQ_REPORT_MISSED_EVENTSmay also be|ed in to request a hint about missed events, as described below. bestie, exactly one of those first two, okay? mandatory π
π₯ DESCRIPTION π₯
here's the return value tea, because this is literally the whole point:
- Return Value:
< 0β means an error occurred while requesting notification. π not slay. - Return Value:
== 0β means notification was requested successfully, and ifIB_CQ_REPORT_MISSED_EVENTSwas passed in, then no events were missed and it is safe to wait for another event. in this case it is guaranteed that any work completions added to the CQ since the last CQ poll will trigger a completion notification event. periodt β¨ - Return Value:
> 0β is only returned ifIB_CQ_REPORT_MISSED_EVENTSwas passed in. it means that the consumer must poll the CQ again to make sure it is empty to avoid missing an event because of a race between requesting notification and an entry being added to the CQ. this return value means it is possible (but not guaranteed) that a work completion has been added to the CQ since the last poll without triggering a completion notification event. so like, go poll again, don't just vibe π
π¦ SEE ALSO π¦
the SEE ALSO friend group is huge and we love that for them:
- Kernel file
./include/rdma/ib_verbs.h struct rdma_stat_desc(9),struct rdma_hw_stats(9),ib_rate_to_mult(9),ib_rate_to_mbps(9),ib_port_attr_to_speed_info(9),enum ib_mr_type(9),struct ib_mr_status(9),mult_to_ib_rate(9),struct ib_udata(9),struct rdma_netdev(9),struct ib_device_ops(9),ib_get_client_data(9),ib_modify_qp_is_ok(9)rdma_cap_ib_switch(9),rdma_start_port(9),rdma_for_each_port(9),rdma_end_port(9),rdma_cap_ib_mad(9),rdma_cap_opa_mad(9),rdma_cap_ib_smi(9),rdma_cap_ib_cm(9),rdma_cap_iw_cm(9),rdma_cap_ib_sa(9),rdma_cap_ib_mcast(9),rdma_cap_af_ib(9),rdma_cap_eth_ah(9),rdma_cap_opa_ah(9),rdma_max_mad_size(9),rdma_cap_roce_gid_table(9),rdma_core_cap_opa_port(9),rdma_mtu_enum_to_int(9),rdma_mtu_from_attr(9)ib_alloc_pd(9),ib_dealloc_pd(9),rdma_create_ah(9),rdma_create_user_ah(9),ib_get_gids_from_rdma_hdr(9),ib_get_rdma_header_version(9),ib_init_ah_attr_from_wc(9),ib_create_ah_from_wc(9),rdma_modify_ah(9),rdma_query_ah(9),rdma_destroy_ah_user(9),rdma_destroy_ah(9),ib_modify_srq(9),ib_query_srq(9),ib_destroy_srq_user(9),ib_destroy_srq(9),ib_post_srq_recv(9)ib_create_qp(9),ib_modify_qp_with_udata(9),ib_modify_qp(9),ib_query_qp(9),ib_destroy_qp(9),ib_open_qp(9),ib_close_qp(9),ib_post_send(9),ib_post_recv(9),ib_alloc_cq_any(9),rdma_set_cq_moderation(9),ib_destroy_cq_user(9),ib_destroy_cq(9),ib_poll_cq(9)ib_virt_dma_to_ptr(9),ib_virt_dma_to_page(9),ib_dma_mapping_error(9),ib_dma_map_single(9),ib_dma_unmap_single(9),ib_dma_map_page(9),ib_dma_unmap_page(9),ib_dma_map_bvec(9),ib_dma_unmap_bvec(9),ib_dma_map_sgtable_attrs(9),ib_dma_map_sg(9),ib_dma_unmap_sg(9),ib_dma_max_seg_size(9),ib_dma_sync_single_for_cpu(9),ib_dma_sync_single_for_device(9)ib_dereg_mr_user(9),ib_dereg_mr(9),ib_update_fast_reg_key(9),ib_inc_rkey(9),ib_attach_mcast(9),ib_detach_mcast(9),ib_check_mr_status(9),ib_device_try_get(9),rdma_ah_find_type(9),ib_lid_cpu16(9),ib_lid_be16(9),rdma_roce_rescan_device(9),rdma_device_to_ibdev(9),ibdev_to_node(9),rdma_device_to_drv_device(9),rdma_flow_label_to_udp_sport(9),rdma_calc_flow_label(9),rdma_get_udp_sport(9)
okay bye bestie β source/version is ./include/rdma, dated October 2026, and this page is ib_req_notify_cq(9) π«Άπ
π¦ 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