dev_addr_flush(9)
π dev_addr_flush(9) β the Kernel API Manual, but make it make sense
okay so bestie, welcome to dev_addr_flush(9), straight out of the Kernel API Manual. this one's short and sweet, and honestly? iconic for it.
πΈ NAME πΈ
dev_addr_flush β flush the device address list π§Ήβ¨
π SYNOPSIS π
void dev_addr_flush (struct net_device *dev );
that's it. that's the whole function signature. no cap. π«Ά
π¦ ARGUMENTS π¦
devβ the device π» (yes, that's the whole description in the original, and honestly bestie, same. it's the device. you know the one.)
β¨ DESCRIPTION β¨
so what does it actually do? it flushes the device address list and resets ->dev_addr. like, wipes it clean, sets it back. that's the vibe check and it passes π₯
β οΈ and listen β the caller must hold the rtnl_mutex. not optional, not "if you feel like it", it's giving non-negotiable. lock it before you call this or you're gonna have a bad time π
π SEE ALSO π
the whole friend group π«Ά β the kernel file lives at ./net/core/dev_addr_lists.c, and here's everybody:
__hw_addr_sync_dev(9)__hw_addr_ref_sync_dev(9)__hw_addr_ref_unsync_dev(9)__hw_addr_unsync_dev(9)__hw_addr_list_snapshot(9)__hw_addr_list_reconcile(9)dev_addr_init(9)dev_addr_add(9)dev_addr_del(9)dev_uc_add_excl(9)dev_uc_add(9)dev_uc_del(9)dev_uc_sync(9)dev_uc_sync_multiple(9)dev_uc_unsync(9)dev_uc_flush(9)dev_uc_init(9)dev_mc_add_excl(9)dev_mc_add(9)dev_mc_add_global(9)dev_mc_del(9)dev_mc_del_global(9)dev_mc_sync(9)dev_mc_sync_multiple(9)dev_mc_unsync(9)dev_mc_flush(9)dev_mc_init(9)netif_uc_promisc_update(9)__dev_set_rx_mode(9)netif_rx_mode_sync(9)
like, go read them, they're literally all right there, iykyk π
and that's the page!! π this masterpiece lives in ./net/core, dated October 2026, and it's filed under dev_addr_flush(9) β mwah, 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