aboutsummaryrefslogtreecommitdiffstats
path: root/net/batman-adv/hard-interface.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/batman-adv/hard-interface.c')
-rw-r--r--net/batman-adv/hard-interface.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/batman-adv/hard-interface.c b/net/batman-adv/hard-interface.c
index 781c5b6e6e8e..508f4416dfc9 100644
--- a/net/batman-adv/hard-interface.c
+++ b/net/batman-adv/hard-interface.c
@@ -951,6 +951,7 @@ batadv_hardif_add_interface(struct net_device *net_dev)
951 batadv_check_known_mac_addr(hard_iface->net_dev); 951 batadv_check_known_mac_addr(hard_iface->net_dev);
952 kref_get(&hard_iface->refcount); 952 kref_get(&hard_iface->refcount);
953 list_add_tail_rcu(&hard_iface->list, &batadv_hardif_list); 953 list_add_tail_rcu(&hard_iface->list, &batadv_hardif_list);
954 batadv_hardif_generation++;
954 955
955 return hard_iface; 956 return hard_iface;
956 957
@@ -993,6 +994,7 @@ void batadv_hardif_remove_interfaces(void)
993 list_for_each_entry_safe(hard_iface, hard_iface_tmp, 994 list_for_each_entry_safe(hard_iface, hard_iface_tmp,
994 &batadv_hardif_list, list) { 995 &batadv_hardif_list, list) {
995 list_del_rcu(&hard_iface->list); 996 list_del_rcu(&hard_iface->list);
997 batadv_hardif_generation++;
996 batadv_hardif_remove_interface(hard_iface); 998 batadv_hardif_remove_interface(hard_iface);
997 } 999 }
998 rtnl_unlock(); 1000 rtnl_unlock();
@@ -1054,6 +1056,7 @@ static int batadv_hard_if_event(struct notifier_block *this,
1054 case NETDEV_UNREGISTER: 1056 case NETDEV_UNREGISTER:
1055 case NETDEV_PRE_TYPE_CHANGE: 1057 case NETDEV_PRE_TYPE_CHANGE:
1056 list_del_rcu(&hard_iface->list); 1058 list_del_rcu(&hard_iface->list);
1059 batadv_hardif_generation++;
1057 1060
1058 batadv_hardif_remove_interface(hard_iface); 1061 batadv_hardif_remove_interface(hard_iface);
1059 break; 1062 break;