iavf_get_vf_config(9)
β¨ iavf_get_vf_config(9) β¨
okay so real talk, bestie β we're in the Kernel API Manual today and this page is about iavf_get_vf_config(9), one of those tiny little glue functions that does a whole lot of heavy lifting behind the scenes π
π NAME π
iavf_get_vf_config β
and that's it. that's the whole name section. no little one-liner, no subtitle, nothing. honestly? mysterious. main character energy fr fr π¦ (the original page leaves it blank, so we're leaving it blank too β no cap, i'm not gonna invent lore)
πΈ SYNOPSIS πΈ
int iavf_get_vf_config (struct iavf_adapter *adapter );
π ARGUMENTS π
adapterβ the private adapter structure. yeah, the private one π that's your whole state baby, hand it over
π₯ DESCRIPTION π₯
so what does it do? it grabs the VF configuration from the PF and populates the hw structure with it. that's the vibe check: PF tells you how the VF is set up, and you write that into hw. β¨
timing matters though β it must be called after the admin queue is initialized. like, do not come for this function before the admin queue exists, it is not going to go well for you, periodt π
and the way it waits? it busy waits until the response comes back from the PF, with a maximum timeout. no sleeping, no napping, no "let me get back to you" β it just spins there, staring at the door, until the PF answers or the clock runs out π
once the response arrives, it's returned in the buffer for further processing by the caller. so like, the function doesn't finish the job for you β it hands you the response in a buffer and goes "here bestie, you deal with the rest" π«Ά
π SEE ALSO π
the source lives in the kernel file:
./drivers/net/ethernet/intel/iavf/iavf_virtchnl.c
and here's the whole friend group, all backticked, all present, all accounted for β no one left behind π
iavf_send_pf_msg(9), iavf_send_api_ver(9), iavf_poll_virtchnl_msg(9), iavf_verify_api_ver(9), iavf_send_vf_config_msg(9), iavf_send_vf_ptp_caps_msg(9), iavf_validate_num_queues(9), iavf_configure_queues(9), iavf_enable_queues(9), iavf_disable_queues(9), iavf_map_queues(9), iavf_set_mac_addr_type(9), iavf_add_ether_addrs(9), iavf_del_ether_addrs(9), iavf_mac_add_ok(9), iavf_mac_add_reject(9), iavf_vlan_add_reject(9), iavf_add_vlans(9), iavf_del_vlans(9), iavf_set_promiscuous(9), iavf_request_stats(9), iavf_get_rss_hashcfg(9), iavf_set_rss_hashcfg(9), iavf_set_rss_key(9), iavf_set_rss_lut(9), iavf_set_rss_hfunc(9), iavf_enable_vlan_stripping(9), iavf_disable_vlan_stripping(9), iavf_tpid_to_vc_ethertype(9), iavf_set_vc_offload_ethertype(9), iavf_clear_offload_v2_aq_required(9), iavf_send_vlan_offload_v2(9), iavf_enable_vlan_stripping_v2(9), iavf_disable_vlan_stripping_v2(9), iavf_enable_vlan_insertion_v2(9), iavf_disable_vlan_insertion_v2(9), iavf_virtchnl_send_ptp_cmd(9), iavf_print_link_message(9), iavf_get_vpe_link_status(9), iavf_set_adapter_link_speed_from_vpe(9), iavf_get_qos_caps(9), iavf_set_quanta_size(9), iavf_cfg_queues_quanta_size(9), iavf_cfg_queues_bw(9), iavf_enable_channels(9), iavf_disable_channels(9), iavf_print_cloud_filter(9), iavf_add_cloud_filter(9), iavf_del_cloud_filter(9), iavf_add_fdir_filter(9), iavf_del_fdir_filter(9), iavf_add_adv_rss_cfg(9), iavf_del_adv_rss_cfg(9), iavf_request_reset(9), iavf_netdev_features_vlan_strip_set(9), iavf_activate_fdir_filters(9), iavf_virtchnl_ptp_get_time(9), iavf_virtchnl_completion(9), iavf_poll_virtchnl_response(9)
ngl that's a glorious amount of see-alsos. sixty whole functions. ate and left no crumbs π
okay that's the page!! sourced from the kernel file directory ./drivers/net/ethernet/intel/iavf, dated October 2026, and this whole page is literally titled iavf_get_vf_config(9) β mwah, love that for us ππ§ββοΈ bye bestie, go init that admin queue first!! πβ¨
π¦ 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