iavf_set_channels(9)
β¨ iavf_set_channels β¨
okay so this is iavf_set_channels(9) from the Kernel API Manual β yes that's the 9 section, kernel-functions-coded, we love that for us π
β and it's the little function that handles changing up your channel count. bestie, let's get into it π«Ά
πΈ NAME πΈ
iavf_set_channels β set the new channel count. that's it, that's the whole vibe. iconic brevity honestly.
π SYNOPSIS π
int iavf_set_channels (struct net_device *netdev , struct
ethtool_channels *ch );
yes she takes two pointers and returns an int. main character energy fr fr π
π¦ ARGUMENTS π¦
netdevβ the network interface device structure. yep, the whole device, she's holding it πchβ the channel information structure. this is where the channel tea lives β¨
π₯ DESCRIPTION π₯
so what actually happens? the function negotiates a new number of channels with the PF (that's the physical function, iykyk) and then does a reset. and like β the reset isn't just for the drama, okay? during that reset we'll realloc queues and fix the RSS table. so she's doing real work. no cap. π
lowkey a glow-up arc: talk to the PF β reset β realloc queues β fix RSS β serve π
π RETURN π
0β success, we ate π- negative β failure π it's giving not today
β SEE ALSO β
the kernel file lives at ./drivers/net/ethernet/intel/iavf/iavf_ethtool.c, and honestly the whole friend group is here β go say hi π
struct iavf_stats(9)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_link_ksettings(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_get_rxfh_key_size(9)iavf_get_rxfh_indir_size(9)iavf_get_rxfh(9)iavf_set_rxfh(9)iavf_set_ethtool_ops(9)
and that's the whole page bestie π§ from the iavf directory ./drivers/net/ethernet/intel/iavf, dated October 2026 β mwah, go touch some queues ππβ¨
π¦ 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