idpf_send_mb_msg_kfree(9)
π idpf_send_mb_msg_kfree(9) π
okay bestie, welcome to the Kernel API Manual entry for idpf_send_mb_msg_kfree(9) β yes, the manual name is literally Kernel API Manual, and weβre about to make it make sense. no cap β¨
πΈ NAME πΈ
idpf_send_mb_msg_kfree β send mailbox message and free the send buffer. thatβs the whole vibe: it sends the mailbox message, then frees the send buffer. tidy queen behavior, we love to see it π§π
β¨ SYNOPSIS β¨
the signature is giving:
int idpf_send_mb_msg_kfree (struct idpf_adapter *adapter , struct
libie_ctlq_xn_send_params *xn_params , void *send_buf , size_t
send_buf_size );
π ARGUMENTS π
adapterβ driver specific private structure. itβs the driverβs own private little context blob, lowkey essential π«Άxn_paramsβ Xn send parameters to fill. bestie, youβre filling these in, so pay attention β¨send_bufβ buffer to send, can be released withkfree. yes, the free is literally part of the functionβs main character energy πsend_buf_sizeβ size of the send buffer. gotta know how big the buffer is, obviously π
π¦ DESCRIPTION π¦
so hereβs the tea: libie_cp functions consume only buffers above certain size, smaller buffers are assumed to be on the stack. however, for some commands with variable message size it makes sense to always use kzalloc, which means we have to free smaller buffers ourselves. and thatβs exactly the little cleanup moment this function is handling, periodt π§β¨
π RETURN π
returns 0 if no unexpected errors were encountered, negative error code otherwise. slay when itβs 0, sad little negative number when itβs not ππ
π SEE ALSO π
Kernel file ./drivers/net/ethernet/intel/idpf/idpf_virtchnl.c β go read it, bestie, itβs right there π
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_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_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)
and thatβs the page, bestie π«Ά this little icon lives in ./drivers/net/ethernet/intel/idpf, dated October 2026, and itβs the idpf_send_mb_msg_kfree(9) manual page. go off π
π
π¦ 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