igc_set_rx_mode(9)
πΈ igc_set_rx_mode(9) β straight out of the Kernel API Manual, bestie πΈ
okay so welcome to the glow-up of igc_set_rx_mode(9), one of the little igc kernel-API pages π
this one's from the Kernel API Manual, and it's honestly short and sweet β a real "small function, big responsibility" moment. let's get into it π«Ά
β¨ NAME β¨
igc_set_rx_mode β the Secondary Unicast, Multicast and Promiscuous mode setter π
like, the whole job is in the title: unicast, multicast, promiscuous, and the secondary flavor of all of it. icon behavior, no notes.
π SYNOPSIS π
void igc_set_rx_mode (struct net_device *netdev );
she takes exactly one thing and returns literally nothing (void, my beloved π). keep the spacing exactly like that, the manpage is particular.
π ARGUMENTS π
netdevβ the network interface device structure π¦ that's your NIC's whole identity card, and it's the one and only thing this function wants.
π DESCRIPTION π
okay so here's the vibe. the set_rx_mode entry point gets called whenever the unicast address lists or the multicast address lists or the network interface flags get updated π£ like literally every time one of those changes, the kernel comes knocking on this function's door.
and what is she responsible for? configuring the hardware so that it does the right thing for:
- unicast mode
- multicast mode
- promiscuous mode
- and all-multi behavior
so the software side updated its lists, and this little icon makes the actual silicon agree with it. lowkey the most important part of the whole thing π₯ if the hardware's not configured for it, the packets aren't coming, fr fr.
no cap: she doesn't just know the lists changed β she's the one who has to go tell the hardware. main character energy π
π¦ SEE ALSO π¦
first up, the actual source, because obviously:
Kernel file: ./drivers/net/ethernet/intel/igc/igc_main.c β
and then. okay. the see-also section is serving today. it's giving entire igc extended family reunion π and i mean every single one of y'all, we're not skipping a single cousin:
igc_power_up_link(9)igc_release_hw_control(9)igc_get_hw_control(9)igc_clean_tx_ring(9)igc_free_tx_resources(9)igc_free_all_tx_resources(9)igc_clean_all_tx_rings(9)igc_disable_all_tx_rings_hw(9)igc_setup_tx_resources(9)igc_setup_all_tx_resources(9)igc_clean_rx_ring(9)igc_clean_all_rx_rings(9)igc_free_rx_resources(9)igc_free_all_rx_resources(9)igc_setup_rx_resources(9)igc_setup_all_rx_resources(9)igc_configure_rx_ring(9)igc_configure_rx(9)igc_configure_tx_ring(9)igc_configure_tx(9)igc_setup_mrqc(9)igc_setup_rctl(9)igc_setup_tctl(9)igc_set_mac_filter_hw(9)igc_clear_mac_filter_hw(9)igc_set_mac(9)igc_write_mc_addr_list(9)igc_process_skb_fields(9)igc_add_rx_frag(9)igc_reuse_rx_page(9)igc_is_non_eop(9)igc_cleanup_headers(9)igc_alloc_rx_buffers(9)igc_clean_tx_irq(9)igc_add_mac_filter(9)igc_del_mac_filter(9)igc_add_vlan_prio_filter(9)igc_del_vlan_prio_filter(9)igc_add_etype_filter(9)igc_del_etype_filter(9)igc_get_nfc_rule(9)igc_del_nfc_rule(9)igc_add_nfc_rule(9)igc_enable_empty_addr_recv(9)igc_configure(9)igc_write_ivar(9)igc_configure_msix(9)igc_irq_enable(9)igc_irq_disable(9)igc_reset_q_vector(9)igc_free_q_vector(9)igc_free_q_vectors(9)igc_update_itr(9)igc_set_interrupt_capability(9)igc_update_ring_itr(9)igc_cache_ring_register(9)igc_poll(9)igc_alloc_q_vector(9)igc_alloc_q_vectors(9)igc_init_interrupt_scheme(9)igc_sw_init(9)igc_up(9)igc_update_stats(9)igc_down(9)igc_change_mtu(9)igc_tx_timeout(9)igc_get_stats64(9)igc_msix_other(9)igc_request_msix(9)igc_clear_interrupt_scheme(9)igc_has_link(9)igc_watchdog(9)igc_intr_msi(9)igc_intr(9)igc_request_irq(9)__igc_open(9)__igc_close(9)igc_probe(9)igc_remove(9)igc_io_error_detected(9)igc_io_slot_reset(9)igc_io_resume(9)igc_reinit_queues(9)igc_get_hw_dev(9)igc_init_module(9)igc_exit_module(9)
like i said. the whole family. every single one accounted for, go read them, iykyk π
okay and that's the whole page!! short king of a manpage, honestly π this one's signed off from the ./drivers/net/ethernet/intel/igc directory, dated October 2026, and it's igc_set_rx_mode(9) til the end. mwah, go configure some hardware bestie πβ¨πΈ
π¦ 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