--- zzzz-none-000/linux-4.9.218/net/bridge/br.c 2020-04-02 15:20:41.000000000 +0000 +++ seale-7590ac-750/linux-4.9.218/net/bridge/br.c 2022-11-30 09:46:20.000000000 +0000 @@ -223,10 +223,18 @@ brioctl_set(br_ioctl_deviceless_stub); + err = br_flood_rl_init(); + if (err) + goto err_out6; + #if IS_ENABLED(CONFIG_ATM_LANE) br_fdb_test_addr_hook = br_fdb_test_addr; #endif +#ifdef CONFIG_MCAST_SNOOPING + br_mcast_snoop_init(); +#endif + #if IS_MODULE(CONFIG_BRIDGE_NETFILTER) pr_info("bridge: filtering via arp/ip/ip6tables is no longer available " "by default. Update your scripts to load br_netfilter if you " @@ -235,6 +243,8 @@ return 0; +err_out6: + br_netlink_fini(); err_out5: unregister_switchdev_notifier(&br_switchdev_notifier); err_out4: @@ -253,6 +263,7 @@ static void __exit br_deinit(void) { stp_proto_unregister(&br_stp_proto); + br_flood_rl_fini(); br_netlink_fini(); unregister_switchdev_notifier(&br_switchdev_notifier); unregister_netdevice_notifier(&br_device_notifier); @@ -266,6 +277,9 @@ br_fdb_test_addr_hook = NULL; #endif br_fdb_fini(); +#ifdef CONFIG_MCAST_SNOOPING + br_mcast_snoop_deinit(); +#endif } module_init(br_init)