batman-adv: Drop unused function batadv_hardif_remove_interfaces()
authorSven Eckelmann <sven@narfation.org>
Tue, 7 Jul 2020 20:49:50 +0000 (22:49 +0200)
committerSimon Wunderlich <sw@simonwunderlich.de>
Tue, 18 Aug 2020 17:39:53 +0000 (19:39 +0200)
The function batadv_hardif_remove_interfaces was meant to remove all
interfaces which are currently in the list of known (compatible) hardifs
during module unload. But the function unregister_netdevice_notifier is
called in batadv_exit before batadv_hardif_remove_interfaces. This will
trigger NETDEV_UNREGISTER events for all available interfaces and in this
process remove all interfaces from batadv_hardif_list. And
batadv_hardif_remove_interfaces only operated on this (empty) list.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
net/batman-adv/hard-interface.c
net/batman-adv/hard-interface.h
net/batman-adv/main.c

index fa06b51..f95be90 100644 (file)
@@ -977,23 +977,6 @@ static void batadv_hardif_remove_interface(struct batadv_hard_iface *hard_iface)
 }
 
 /**
- * batadv_hardif_remove_interfaces() - Remove all hard interfaces
- */
-void batadv_hardif_remove_interfaces(void)
-{
-       struct batadv_hard_iface *hard_iface, *hard_iface_tmp;
-
-       rtnl_lock();
-       list_for_each_entry_safe(hard_iface, hard_iface_tmp,
-                                &batadv_hardif_list, list) {
-               list_del_rcu(&hard_iface->list);
-               batadv_hardif_generation++;
-               batadv_hardif_remove_interface(hard_iface);
-       }
-       rtnl_unlock();
-}
-
-/**
  * batadv_hard_if_event_softif() - Handle events for soft interfaces
  * @event: NETDEV_* event to handle
  * @net_dev: net_device which generated an event
index bad2e50..b1855d9 100644 (file)
@@ -100,7 +100,6 @@ int batadv_hardif_enable_interface(struct batadv_hard_iface *hard_iface,
                                   struct net *net, const char *iface_name);
 void batadv_hardif_disable_interface(struct batadv_hard_iface *hard_iface,
                                     enum batadv_hard_if_cleanup autodel);
-void batadv_hardif_remove_interfaces(void);
 int batadv_hardif_min_mtu(struct net_device *soft_iface);
 void batadv_update_min_mtu(struct net_device *soft_iface);
 void batadv_hardif_release(struct kref *ref);
index 519c08c..70fee9b 100644 (file)
@@ -137,7 +137,6 @@ static void __exit batadv_exit(void)
        batadv_netlink_unregister();
        rtnl_link_unregister(&batadv_link_ops);
        unregister_netdevice_notifier(&batadv_hard_if_notifier);
-       batadv_hardif_remove_interfaces();
 
        flush_workqueue(batadv_event_workqueue);
        destroy_workqueue(batadv_event_workqueue);