idpf_send_get_stats_msg(9)
πΈ idpf_send_get_stats_msg β it's giving "ask the NIC for the receipts" β¨
okay so bestie, we're in the Kernel API Manual today (idpf_send_get_stats_msg(9), section 9, iykyk) and this function is literally just the girl who walks up to the virtchnl counter and goes "hi, can I get the numbers pls π₯Ί". It sends the virtchnl get statistics message. That's the whole vibe. No notes. π«Ά
β¨ SYNOPSIS β¨
int idpf_send_get_stats_msg (struct idpf_netdev_priv *np , struct
idpf_port_stats *port_stats );
two args, one int coming back, copy it exactly babe, don't improvise π
π ARGUMENTS π
npβ the netdev private structure. yes, that one. the little bag of holding the driver carries around everywhere. πport_statsβ a structure to store the vport statistics. it's the bucket and this function is filling it. icon behavior honestly. πͺ£β¨
β RETURN β
0 on success, negative on failure. literally that simple. if you get a negative back, that's not a vibe, that's an error, and you should handle it. periodt. π₯
lowkey shoutout to that 0 β the good number β and to every negative number doing its job telling you something went sideways π
π¦ SEE ALSO π¦
the kernel file it lives in (main character location, honestly):
./drivers/net/ethernet/intel/idpf/idpf_virtchnl.c
and the whole extended friend group β every single one, no cap: π
idpf_vid_to_vport(9)idpf_handle_event_link(9)idpf_recv_event_msg(9)idpf_mb_clean(9)idpf_ptp_is_mb_msg(9)idpf_prepare_ptp_mb_msg(9)idpf_send_mb_msg(9)idpf_send_mb_msg_kfree(9)idpf_send_vf_reset_msg(9)idpf_send_chunked_msg(9)idpf_wait_for_marker_event_set(9)idpf_wait_for_marker_event(9)idpf_send_ver_msg(9)idpf_send_get_caps_msg(9)idpf_mmio_region_non_static(9)idpf_decfg_lan_memory_regions(9)idpf_cfg_lan_memory_regions(9)idpf_map_remaining_mmio_regs(9)idpf_add_del_fsteer_filters(9)idpf_vport_alloc_max_qs(9)idpf_vport_dealloc_max_qs(9)idpf_init_avail_queues(9)idpf_vport_init_queue_reg_chunks(9)idpf_get_reg_intr_vecs(9)idpf_vport_get_q_reg(9)__idpf_queue_reg_init(9)idpf_queue_reg_init(9)idpf_send_create_vport_msg(9)idpf_check_supported_desc_ids(9)idpf_send_destroy_vport_msg(9)idpf_send_enable_vport_msg(9)idpf_send_disable_vport_msg(9)idpf_fill_txq_config_chunk(9)idpf_fill_complq_config_chunk(9)idpf_prepare_cfg_txqs_msg(9)idpf_send_config_tx_queue_set_msg(9)idpf_send_config_tx_queues_msg(9)idpf_fill_rxq_config_chunk(9)idpf_fill_bufq_config_chunk(9)idpf_prepare_cfg_rxqs_msg(9)idpf_send_config_rx_queue_set_msg(9)idpf_send_config_rx_queues_msg(9)idpf_prepare_ena_dis_qs_msg(9)idpf_send_ena_dis_queue_set_msg(9)idpf_send_ena_dis_queues_msg(9)idpf_prep_map_unmap_queue_set_vector_msg(9)idpf_send_map_unmap_queue_set_vector_msg(9)idpf_send_map_unmap_queue_vector_msg(9)idpf_send_enable_queue_set_msg(9)idpf_send_disable_queue_set_msg(9)idpf_send_config_queue_set_msg(9)idpf_send_enable_queues_msg(9)idpf_send_disable_queues_msg(9)idpf_convert_reg_to_queue_chunks(9)idpf_send_delete_queues_msg(9)idpf_send_config_queues_msg(9)idpf_send_add_queues_msg(9)idpf_send_alloc_vectors_msg(9)idpf_send_dealloc_vectors_msg(9)idpf_get_max_vfs(9)idpf_send_set_sriov_vfs_msg(9)idpf_send_set_rss_lut_msg(9)idpf_send_set_rss_key_msg(9)idpf_fill_ptype_lookup(9)idpf_parse_protocol_ids(9)idpf_send_get_rx_ptype_msg(9)idpf_rel_rx_pt_lkup(9)idpf_send_ena_dis_loopback_msg(9)idpf_init_dflt_mbx(9)idpf_deinit_dflt_mbx(9)idpf_vport_params_buf_rel(9)idpf_vport_params_buf_alloc(9)idpf_vc_core_init(9)idpf_vc_core_deinit(9)idpf_vport_alloc_vec_indexes(9)idpf_vport_init(9)idpf_get_vec_ids(9)idpf_vport_get_queue_ids(9)__idpf_vport_queue_ids_init(9)idpf_vport_queue_ids_init(9)idpf_vport_adjust_qs(9)idpf_is_capability_ena(9)idpf_vport_is_cap_ena(9)idpf_sideband_flow_type_ena(9)idpf_sideband_action_ena(9)idpf_get_vport_id(9)idpf_mac_filter_async_handler(9)idpf_add_del_mac_filters(9)idpf_promiscuous_async_handler(9)idpf_set_promiscuous(9)idpf_idc_rdma_vc_send_sync(9)
like I said. the whole group chat. ππ
ngl the only thing you actually need to remember: send the message, check theint,0= slay, negative = go read the error and cope. that's it. that's the function. π§ββοΈ
and that's the tea, bestie π β this cutie dropped in ./drivers/net/ethernet/intel/idpf back in October 2026, so go forth, get those stats, and stan a virtchnl message. ππ¦β¨
π¦ 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