wx_update_mc_addr_list(9)
π wx_update_mc_addr_list β kernel API manual, bestie edition
okay so you found the wx_update_mc_addr_list(9) page, welcome, come sit with me π«Ά this one lives in the Kernel API Manual and it's genuinely so useful once it clicks.
β¨ NAME β¨
wx_update_mc_addr_list β updates the MAC list of multicast addresses π no cap, that's literally the whole job.
πΈ SYNOPSIS πΈ
void wx_update_mc_addr_list (struct wx *wx , struct net_device *netdev );
that's it. that's the whole signature. void in, void out, no return value to stress about π
π¦ ARGUMENTS π¦
wxβ pointer to the private structure. your lil driver's personal stash of everything it needs πnetdevβ pointer to the net device structure. the actual network device we're doing this for β¨
π DESCRIPTION π
okay so here's the tea, bestie. the given list replaces any existing list β not merges, not appends, replaces. so whatever was there before? gone. periodt.
it clears the MC addrs from the receive address registers and the multicast table first, then it does the actual work:
- uses the unused receive address registers for the first multicast addresses (slots are free, might as well slay π )
- hashes the rest into the multicast table, because there's only so many registers and the rest gotta go somewhere π
so like, first ones get the VIP seats, everyone else gets hashed into the general admission table. iconic behavior honestly.
π₯ SEE ALSO π₯
kernel file: ./drivers/net/ethernet/wangxun/libwx/wx_hw.c β go read it, iykyk π
then the whole friend group:
wx_irq_disable(9), wx_mng_present(9), wx_release_sw_sync(9), wx_acquire_sw_sync(9), wx_host_interface_command(9), wx_read_ee_hostif_data(9), wx_read_ee_hostif(9), wx_read_ee_hostif_buffer(9), wx_init_eeprom_params(9), wx_get_mac_addr(9), wx_set_rar(9), wx_clear_rar(9), wx_clear_vmdq(9), wx_init_uta_tables(9), wx_init_rx_addrs(9), wx_write_uc_addr_list(9), wx_mta_vector(9), wx_set_mta(9), wx_write_mc_addr_list(9), wx_set_mac(9), wx_set_rxpba(9), wx_hpbthresh(9), wx_lpbthresh(9), wx_pbthresh_setup(9), wx_disable_sec_rx_path(9), wx_enable_sec_rx_path(9), wx_change_mtu(9), wx_configure_tx(9), wx_configure_rx(9), wx_disable_pcie_master(9), wx_stop_adapter(9), wx_get_pcie_msix_counts(9), wx_init_rss_key(9), wx_find_vlvf_slot(9), wx_set_vlvf(9), wx_set_vfta(9), wx_clear_vfta(9), wx_update_stats(9), wx_clear_hw_cntrs(9), wx_start_hw(9)
that's a lot of cousins but they're all valid, go say hi π§
π reminder: this is the Wangxun (wangxun) ethernet driver family, file lives under./drivers/net/ethernet/wangxun...β that's where the source is at, don't go looking in the wrong folder bestie.
and that's the page! π sourced from the wangxun driver path ./drivers/net/ethernet/wangxun..., Kernel API Manual, dated October 2026, page wx_update_mc_addr_list(9). mwah, go forth and multicast responsibly πβ¨πΈ
π¦ 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