register_netdevice_notifier(9)
okay bestie, this is the register_netdevice_notifier(9) page from the Kernel API Manual β¨ no cap, we're about to make notifier registration make sense.
π NAME π
register_netdevice_notifier β register a network notifier block. That's the whole vibe: you're signing a notifier up for network device events.
β¨ SYNOPSIS β¨
int register_netdevice_notifier (struct notifier_block *nb );
πΈ ARGUMENTS πΈ
nbβ the notifier. Your notifier block. The one you're registering. That's the argument, bestie.
π¦ DESCRIPTION π¦
Register a notifier that gets called when network device events happen. The notifier you pass gets linked into the kernel structures, and it must not be reused until it has been unregistered. If something fails, you get a negative errno code back.
Once it's registered, all registration and up events are replayed to the new notifier, so the device can have a race-free view of the network device list. It's giving βcatch you up so you're not out here guessingβ energy.
π₯ SEE ALSO π₯
Kernel file ./net/core/dev.c is the main-character source file, and the rest of the crew is:
dev_add_pack(9)__dev_remove_pack(9)dev_remove_pack(9)dev_get_iflink(9)dev_fill_metadata_dst(9)netdev_napi_by_id_lock(9)__dev_get_by_name(9)dev_get_by_name_rcu(9)netdev_get_by_name(9)__dev_get_by_index(9)dev_get_by_index_rcu(9)netdev_get_by_index(9)dev_get_by_napi_id(9)netdev_get_by_index_lock(9)netdev_get_name(9)dev_getbyhwaddr_rcu(9)dev_getbyhwaddr(9)netdev_get_by_flags_rcu(9)dev_valid_name(9)__dev_alloc_name(9)dev_alloc_name(9)dev_get_alias(9)netdev_features_change(9)__netdev_notify_peers(9)netdev_notify_peers(9)dev_disable_gro_hw(9)unregister_netdevice_notifier(9)register_netdevice_notifier_net(9)unregister_netdevice_notifier_net(9)call_netdevice_notifiers_info(9)call_netdevice_notifiers_info_robust(9)call_netdevice_notifiers(9)call_netdevice_notifiers_mtu(9)dev_forward_skb(9)dev_nit_active_rcu(9)netif_setup_tc(9)netif_set_real_num_rx_queues(9)netif_set_real_num_queues(9)netif_set_tso_max_size(9)netif_set_tso_max_segs(9)netif_inherit_tso_max(9)netif_get_num_default_rss_queues(9)netif_device_detach(9)netif_device_attach(9)dev_loopback_xmit(9)__dev_queue_xmit(9)rps_flow_is_active(9)rps_may_expire_flow(9)__netif_rx(9)netif_rx(9)netdev_is_rx_handler_busy(9)netdev_rx_handler_register(9)netdev_rx_handler_unregister(9)netif_receive_skb_core(9)netif_receive_skb(9)netif_receive_skb_list(9)__napi_schedule(9)napi_schedule_prep(9)__napi_schedule_irqoff(9)netif_threaded_enable(9)netif_queue_set_napi(9)napi_disable(9)napi_enable(9)netdev_has_upper_dev(9)netdev_has_upper_dev_all_rcu(9)netdev_has_any_upper_dev(9)netdev_master_upper_dev_get(9)netdev_has_any_lower_dev(9)netdev_upper_get_next_dev_rcu(9)netdev_lower_get_next_private(9)netdev_lower_get_next_private_rcu(9)netdev_lower_get_next(9)netdev_lower_get_first_private_rcu(9)netdev_master_upper_dev_get_rcu(9)netdev_upper_dev_link(9)netdev_master_upper_dev_link(9)netdev_upper_dev_unlink(9)netdev_bonding_info_change(9)netdev_get_xmit_slave(9)netdev_sk_get_lowest_dev(9)netdev_lower_state_changed(9)netif_get_flags(9)netif_set_mtu_ext(9)netif_pre_changeaddr_notify(9)dev_get_phys_port_id(9)dev_get_phys_port_name(9)netif_get_port_parent_id(9)netdev_port_same_parent_id(9)netdev_change_proto_down_reason_locked(9)dev_change_xdp_fd(9)dev_index_reserve(9)netdev_update_features(9)netdev_change_features(9)netif_stacked_transfer_operstate(9)register_netdevice(9)register_netdev(9)netdev_wait_allrefs_any(9)dev_get_stats(9)dev_fetch_sw_netstats(9)dev_get_tstats64(9)netdev_sw_irq_coalesce_default_on(9)alloc_netdev_mqs(9)free_netdev(9)alloc_netdev_dummy(9)synchronize_net(9)unregister_netdevice_queue(9)unregister_netdevice_many(9)unregister_netdev(9)netdev_increment_features(9)netdev_compute_master_upper_features(9)netdev_drivername(9)
byeee π β source/version ./net/core, date October 2026, and the page is register_netdevice_notifier(9). mwah π
π¦ 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