i40e_lan_xmit_frame(9)
# π i40e_lan_xmit_frame(9)
okay so bestie, welcome to the i40e_lan_xmit_frame page β it lives in section 9 of the Kernel API Manual, and honestly? it's a short one, so we can absolutely devour it together π«Ά
---
πΈ NAME πΈ
i40e_lan_xmit_frame β picks the right VSI and Tx queue so your buffer actually gets sent β¨
Like, it's the little matchmaker of the transmit path: it looks at your buffer, figures out which virtual station interface and which Tx queue it belongs to, and sends it on its way. no cap π
π¦ SYNOPSIS π¦
netdev_tx_t i40e_lan_xmit_frame (struct sk_buff *skb , struct net_device
*netdev );
π ARGUMENTS π
skbβ the send buffer π (the thing you're trying to get out the door)netdevβ the network interface device structure π§ (the whole device vibe it's attached to)
β DESCRIPTION β
So the function returns NETDEV_TX_OK if it got sent β slay, we love a success β and if not? an error code. that's it, that's the whole description. short king energy π
ngl the manpage does not elaborate beyond that, so I'm not gonna invent lore for you β what it says is what it does: NETDEV_TX_OK on send, otherwise an error code. π
π SEE ALSO π
First up, the kernel file this all lives in: ./drivers/net/ethernet/intel/i40e/i40e_txrx.c π
And here's the whole friend group β literally every one of these is part of the i40e saga, so go say hi π:
i40e_fdir(9), i40e_program_fdir_filter(9), i40e_create_dummy_packet(9), i40e_create_dummy_udp_packet(9), i40e_create_dummy_tcp_packet(9), i40e_create_dummy_sctp_packet(9), i40e_prepare_fdir_filter(9), i40e_change_filter_num(9), i40e_add_del_fdir_udp(9), i40e_add_del_fdir_tcp(9), i40e_add_del_fdir_sctp(9), i40e_add_del_fdir_ip(9), i40e_add_del_fdir(9), i40e_fd_handle_status(9)
i40e_unmap_and_free_tx_resource(9), i40e_clean_tx_ring(9), i40e_free_tx_resources(9), i40e_get_tx_pending(9), i40e_detect_recover_hung(9), i40e_clean_tx_irq(9), i40e_enable_wb_on_itr(9), i40e_force_wb(9), i40e_update_itr(9), i40e_reuse_rx_page(9), i40e_clean_programming_status(9), i40e_setup_tx_descriptors(9), i40e_clean_rx_ring(9), i40e_free_rx_resources(9), i40e_setup_rx_descriptors(9), i40e_release_rx_desc(9), i40e_alloc_mapped_page(9), i40e_alloc_rx_buffers(9)
i40e_rx_checksum(9), i40e_rx_hash(9), i40e_process_skb_fields(9), i40e_cleanup_headers(9), i40e_can_reuse_rx_page(9), i40e_rx_buffer_flip(9), i40e_get_rx_buffer(9), i40e_put_rx_buffer(9), i40e_process_rx_buffs(9), i40e_construct_skb(9), i40e_build_skb(9), i40e_is_non_eop(9), i40e_run_xdp(9), i40e_xdp_ring_update_tail(9), i40e_update_rx_stats(9), i40e_finalize_xdp_rx(9), i40e_inc_ntp(9), i40e_add_xdp_frag(9), i40e_consume_xdp_buff(9), i40e_clean_rx_irq(9)
i40e_buildreg_itr(9), i40e_update_enable_itr(9), i40e_napi_poll(9), i40e_atr(9), i40e_tx_prepare_vlan_flags(9), i40e_tso(9), i40e_tsyn(9), i40e_tx_enable_csum(9), i40e_create_tx_ctx(9), __i40e_maybe_stop_tx(9), __i40e_chk_linearize(9), i40e_tx_map(9), i40e_xmit_xdp_ring(9), i40e_xmit_frame_ring(9), i40e_xdp_xmit(9)
---
and that's the whole page, bestie, you ate that πβ¨ mwah π
sign-off szn π: this cutie came from the source tree ./drivers/net/ethernet/intel/i40e, version October 2026, and the page itself is i40e_lan_xmit_frame(9) β go forth and transmit responsibly π
π¦ 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