idpf_prep_ma...t_vector_msg(9)
π idpf_prep_ma...t_vector_msg(9) β¨
okay bestie, welcome to section 9 of the Kernel API Manual β yes, the truncated-looking name up there is the real page name, that's not a typo, the man page gods just did that π
This one's all about idpf_prep_map_unmap_queue_set_vector_msg, which lowkey has the longest name ever but honestly? She's a helper. She helps. Let's get into it π«Ά
πΈ NAME πΈ
idpf_prep_map_unmap_queue_set_vector_msg β the function that prepares the message for mapping or unmapping a queue set to the interrupt vector. Both directions, one function, main character energy fr fr π
β¨ SYNOPSIS β¨
u32 idpf_prep_map_unmap_queue_set_vector_msg (u32 vport_id , void *buf ,
const void *pos , u32 num_chunks );
Look at that return type: u32. She gives you a number back. We'll get to that π
π ARGUMENTS π
vport_idβ the ID of the virtual port that the queues are associated with. Like, whose queues are we even talking about? This. This is who π¦bufβ the buffer containing the message. The whole vibe lives in here β¨posβ pointer to the first chunk describing the vector mapping. Chunk one, right there, pointed at πnum_chunksβ how many chunks are in the message. Gotta know the count, no cap π’
π§ DESCRIPTION π§
So what does she actually do? She's a helper function β and her whole job is preparing the message that describes mapping queues to q_vectors. That's it. That's the gig. She preps, somebody else sends π
Like, not to be dramatic, but every iconic send needs an equally iconic prep step first. This is the prep step.
β RETURN β
She returns the total size of the prepared message. Yup β total size. Measured. Returned. As a u32 π
no error codes, no negative vibes, just a size. slay.
π SEE ALSO π
Okay so this is the part where I need you to hydrate and breathe, because this list is long and I am not skipping a single one of them. Every single friend on the guest list is coming in ππΈ
And yes, the kernel file they all live in:
./drivers/net/ethernet/intel/idpf/idpf_virtchnl.c
Here's the full squad, in order, exactly as invited π«Ά
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_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_get_stats_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)
π«Ά reminder bestie: that reference dump is not decoration, it's the whole neighborhood. If you're poking at queue-to-vector mapping, half your answers live in one of the idpf_*(9) pages above. iykyk π
sign-off time π β this lil beauty comes from ./drivers/net/ethernet/intel/idpf, and the version stamp on it is October 2026. so like, go forth, map your queues, unmap your queues, and return that total size with your whole chest π¦β¨ 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