iavf_set_mac(9)
π iavf_set_mac(9) π
okay so bestie, welcome to the kernel API manual for iavf_set_mac β yes that's the iavf_set_mac(9) page, the one and only. it's a NDO callback to set port MAC address and honestly? it's giving main character energy in the iavf driver. sit down, grab a strawberry drink, we're doing this π
β¨ NAME β¨
iavf_set_mac β the NDO callback that sets the port MAC address. that's it, that's the whole job, and she does it π
πΈ SYNOPSIS πΈ
int iavf_set_mac (struct net_device *netdev , void *p );
like literally just that. two arguments, one int out the other side. no cap π«Ά
π¦ ARGUMENTS π¦
netdevβ the network interface device structure. the whole net device, the icon, the moment. she's the one getting a new MAC address β¨pβ a pointer to an address structure. that's where the new address is chillin' before it gets applied π
π₯ DESCRIPTION π₯
Returns 0 on success, negative on failure. that's the entire description bestie, i'm not gonna pad it out and lie to you. 0 = slay, negative = π.
fr fr, that's all the manpage says. no extra lore, no behind-the-scenes, so i'm not gonna invent any. iykyk.
π SEE ALSO π
first up, the source of truth, the origin story:
- Kernel file
./drivers/net/ethernet/intel/iavf/iavf_main.c
and now the whole entire extended friend group, in order, no one left behind π:
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_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_init_module(9), iavf_exit_module(9)
like, that's the whole group chat and every single one of them ate π₯ go read them, i'll wait π§
one last thing bestie π
this page lives in ./drivers/net/ethernet/intel/iavf and it's stamped October 2026, so if you're reading it in like, the future β hi, you're iconic, drink some water, and reminder that iavf_set_mac returns 0 on success and negative on failure, periodt πβ¨π
π¦ 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