batadv_hardif_put(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
 
                                   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);
 
        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);