iavf_get_link_ksettings(9)
π iavf_get_link_ksettings(9) π
okay so bestie, welcome to the Kernel API Manual β yes we're reading kernel docs together, this is our bonding era π«Ά. This page is all about iavf_get_link_ksettings, and honestly? she's a little liar. In the cute way. You'll see.
β¨ NAME β¨
iavf_get_link_ksettings β Get Link Speed and Duplex settings π
π SYNOPSIS π
int iavf_get_link_ksettings (struct net_device *netdev , struct
ethtool_link_ksettings *cmd );
like, that's the whole signature. she takes two pointers and hands you back an int. no cap. π
πΈ ARGUMENTS πΈ
netdevβ the network interface device structure π (your actual NIC energy, the main character)cmdβ the ethtool command π (where the answer goes)
π¦ DESCRIPTION π¦
So what does she do? She reports speed/duplex settings β¨ β that's the whole job.
But here's the tea β and I need you to sit with it: because this is a VF, we straight-up don't know what kind of link we really have. Nobody told us. We are not in the loop. So... we fake it. ππ
fr fr β the driver does not know the real link state in this case, and the manpage says the settings reported here are fabricated. Don't treat them as gospel, bestie, they're vibes-based π
That's it. That's the function. She lies about link speed with full confidence and honestly? iconic π.
β SEE ALSO β
Everything she's friends with, iykyk π
β first up, the kernel file she lives in: ./drivers/net/ethernet/intel/iavf/iavf_ethtool.c, plus struct iavf_stats(9) and the whole friend group:
iavf_add_one_ethtool_stat(9)__iavf_add_ethtool_stats(9)iavf_add_ethtool_stats(9)iavf_add_queue_stats(9)__iavf_add_stat_strings(9)iavf_add_stat_strings(9)iavf_get_sset_count(9)iavf_get_ethtool_stats(9)iavf_get_stat_strings(9)iavf_get_strings(9)iavf_get_msglevel(9)iavf_set_msglevel(9)iavf_get_drvinfo(9)iavf_get_ringparam(9)iavf_set_ringparam(9)__iavf_get_coalesce(9)iavf_get_coalesce(9)iavf_get_per_queue_coalesce(9)iavf_set_itr_per_queue(9)__iavf_set_coalesce(9)iavf_set_coalesce(9)iavf_set_per_queue_coalesce(9)iavf_fltr_to_ethtool_flow(9)iavf_ethtool_flow_to_fltr(9)iavf_is_mask_valid(9)iavf_parse_rx_flow_user_data(9)iavf_fill_rx_flow_ext_data(9)iavf_get_ethtool_fdir_entry(9)iavf_get_fdir_fltr_ids(9)iavf_add_fdir_fltr_info(9)iavf_add_fdir_ethtool(9)iavf_del_fdir_ethtool(9)iavf_set_rxnfc(9)iavf_get_rx_ring_count(9)iavf_get_rxnfc(9)iavf_get_channels(9)iavf_set_channels(9)iavf_get_rxfh_key_size(9)iavf_get_rxfh_indir_size(9)iavf_get_rxfh(9)iavf_set_rxfh(9)iavf_set_ethtool_ops(9)
go read them too, be nosy, that's how you learn π§ββοΈ
mwah π that's the page β brought to you by the fine folks in ./drivers/net/ethernet/intel/iavf, dated October 2026, and yes the manual is literally called iavf_get_link_ksettings(9). slay, go fake some link settings 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