iavf_init_module(9)
π iavf_init_module(9) π
the Kernel API Manual, but make it make sense
okay so bestie, we're in the Kernel API Manual today and the entry is iavf_init_module(9). yes the (9) is the section number, no it's not a vibe, it's just how kernel API pages roll. sit down, hydrate, let's go π«Ά
β¨ NAME β¨
iavf_init_module β Driver Registration Routine
like, that's literally its whole job description. show up, register, that's it. main character energy but with a very short scene π
β¨ SYNOPSIS β¨
int iavf_init_module (void );
no cap, that's the whole signature. returns an int, takes void. she's consistent, she's predictable, we stan π
β¨ ARGUMENTS β¨
voidβ no arguments. none. zero. the void is voiding. you literally cannot pass her anything and that's the point π
β¨ DESCRIPTION β¨
so here's the tea π β iavf_init_module is the first routine called when the driver is loaded. like, first day of school, first one through the door.
and what does this icon actually do with all that main-character pressure? All it does is register with the PCI subsystem. that's it. that's the whole function. no extra lore, no bonus side quests, no sneaky setup β literally just registration with PCI. she ate and left no crumbs π
bestie note: the page is very clear that this is all it does β don't go thinking she's out here configuring queues or doing reset magic while nobody's looking. registration. periodt π
β¨ SEE ALSO β¨
first up, the source of truth, the β¨lore documentβ¨:
- Kernel file
./drivers/net/ethernet/intel/iavf/iavf_main.c
and then... the entire friend group π seriously, every single one of these is on the list, and i mean every single one, in order, no skips, no "you get the idea":
iavf_pdev_to_adapter(9), iavf_is_reset_in_progress(9),
iavf_allocate_dma_mem_d(9), iavf_free_dma_mem(9),
iavf_allocate_virt_mem(9), iavf_free_virt_mem(9),
iavf_schedule_reset(9), iavf_schedule_aq_request(9), iavf_tx_timeout(9),
iavf_misc_irq_disable(9), iavf_misc_irq_enable(9), iavf_irq_disable(9),
iavf_irq_enable_queues(9), iavf_irq_enable(9), iavf_msix_aq(9),
iavf_msix_clean_rings(9), iavf_map_vector_to_rxq(9),
iavf_map_vector_to_txq(9), iavf_map_rings_to_vectors(9),
iavf_request_traffic_irqs(9), iavf_request_misc_irq(9),
iavf_free_traffic_irqs(9), iavf_free_misc_irq(9), iavf_configure_tx(9),
iavf_select_rx_desc_format(9), iavf_configure_rx(9), iavf_find_vlan(9),
iavf_add_vlan(9), iavf_del_vlan(9), iavf_get_num_vlans_added(9),
iavf_get_max_vlans_allowed(9), iavf_max_vlans_added(9),
iavf_vlan_rx_add_vid(9), iavf_vlan_rx_kill_vid(9), iavf_find_filter(9),
iavf_add_filter(9), iavf_replace_primary_mac(9),
iavf_is_mac_set_handled(9), iavf_mac_change_done(9),
iavf_set_mac_sync(9), iavf_set_mac(9), iavf_addr_sync(9),
iavf_addr_unsync(9), iavf_promiscuous_mode_changed(9),
iavf_set_rx_mode(9), iavf_napi_enable_all(9), iavf_napi_disable_all(9),
iavf_configure(9), iavf_up_complete(9), iavf_clear_mac_filters(9),
iavf_clear_cloud_filters(9), iavf_clear_fdir_filters(9),
iavf_clear_adv_rss_conf(9), iavf_down(9), iavf_acquire_msix_vectors(9),
iavf_free_queues(9), iavf_set_queue_vlan_tag_loc(9),
iavf_alloc_queues(9), iavf_set_interrupt_capability(9),
iavf_config_rss_aq(9), iavf_config_rss_reg(9), iavf_config_rss(9),
iavf_fill_rss_lut(9), iavf_init_rss(9), iavf_alloc_q_vectors(9),
iavf_free_q_vectors(9), iavf_reset_interrupt_capability(9),
iavf_init_interrupt_scheme(9), iavf_free_interrupt_scheme(9),
iavf_free_rss(9), iavf_reinit_interrupt_scheme(9),
iavf_finish_config(9), iavf_schedule_finish_config(9),
iavf_process_aq_command(9), iavf_set_vlan_offload_features(9),
iavf_startup(9), iavf_init_version_check(9),
iavf_parse_vf_resource_msg(9), iavf_init_get_resources(9),
iavf_init_send_offload_vlan_v2_caps(9),
iavf_init_recv_offload_vlan_v2_caps(9),
iavf_init_send_supported_rxdids(9), iavf_init_recv_supported_rxdids(9),
iavf_init_send_ptp_caps(9), iavf_init_recv_ptp_caps(9),
iavf_init_process_extended_caps(9), iavf_init_config_adapter(9),
iavf_disable_vf(9), iavf_reconfig_qs_bw(9), iavf_reset_step(9),
iavf_adminq_task(9), iavf_free_all_tx_resources(9),
iavf_setup_all_tx_resources(9), iavf_setup_all_rx_resources(9),
iavf_free_all_rx_resources(9), iavf_validate_tx_bandwidth(9),
iavf_validate_ch_config(9), iavf_del_all_cloud_filters(9),
iavf_is_tc_config_same(9), __iavf_setup_tc(9), iavf_parse_cls_flower(9),
iavf_handle_tclass(9), iavf_find_cf(9), iavf_configure_clsflower(9),
iavf_delete_clsflower(9), iavf_setup_tc_cls_flower(9),
iavf_add_cls_u32(9), iavf_del_cls_u32(9), iavf_setup_tc_cls_u32(9),
iavf_setup_tc_block_cb(9), iavf_setup_tc(9),
iavf_restore_fdir_filters(9), iavf_open(9), iavf_close(9),
iavf_change_mtu(9), iavf_disable_fdir(9), iavf_set_features(9),
iavf_features_check(9), iavf_get_netdev_vlan_hw_features(9),
iavf_get_netdev_vlan_features(9), iavf_fix_netdev_vlan_features(9),
iavf_fix_strip_features(9), iavf_fix_features(9),
iavf_check_reset_complete(9), iavf_process_config(9), iavf_probe(9),
iavf_suspend(9), iavf_resume(9), iavf_remove(9), iavf_shutdown(9),
iavf_exit_module(9)
iykyk π¦ every ref kept exactly as-is, including the cursed little double-underscore in __iavf_setup_tc(9) β yes, she's different, she's special, leave her alone π€
sign-off era πΈ
this page lives in ./drivers/net/ethernet/intel/iavf, it's dated October 2026, and that's the whole footer bestie β source/version and date, noted with love. go forth, register with the PCI subsystem, and slay β¨ππ
π¦ 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