From: Nora Schiffer <[email protected]>

The counter doesn't need to be global.

Signed-off-by: Nora Schiffer <[email protected]>
Signed-off-by: Sven Eckelmann <[email protected]>
Signed-off-by: Simon Wunderlich <[email protected]>
---
 net/batman-adv/hard-interface.c | 4 ++--
 net/batman-adv/main.c           | 1 -
 net/batman-adv/main.h           | 2 --
 net/batman-adv/netlink.c        | 2 +-
 net/batman-adv/types.h          | 3 +++
 5 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/net/batman-adv/hard-interface.c b/net/batman-adv/hard-interface.c
index 86010bc32818e..9b8108d464dbc 100644
--- a/net/batman-adv/hard-interface.c
+++ b/net/batman-adv/hard-interface.c
@@ -774,7 +774,7 @@ int batadv_hardif_enable_interface(struct net_device 
*net_dev,
        hard_iface->mesh_iface = mesh_iface;
        bat_priv = netdev_priv(hard_iface->mesh_iface);
 
-       batadv_hardif_generation++;
+       bat_priv->hardif_generation++;
        ret = netdev_master_upper_dev_link(hard_iface->net_dev,
                                           mesh_iface, hard_iface, NULL, NULL);
        if (ret)
@@ -865,7 +865,7 @@ void batadv_hardif_disable_interface(struct 
batadv_hard_iface *hard_iface)
        batadv_purge_orig_ref(bat_priv);
        batadv_purge_outstanding_packets(bat_priv, hard_iface);
 
-       batadv_hardif_generation++;
+       bat_priv->hardif_generation++;
        netdev_upper_dev_unlink(hard_iface->net_dev, hard_iface->mesh_iface);
        batadv_hardif_recalc_extra_skbroom(hard_iface->mesh_iface);
 
diff --git a/net/batman-adv/main.c b/net/batman-adv/main.c
index 1d82f3a841a1b..badc1df0af1d5 100644
--- a/net/batman-adv/main.c
+++ b/net/batman-adv/main.c
@@ -59,7 +59,6 @@
 #include "tp_meter.h"
 #include "translation-table.h"
 
-unsigned int batadv_hardif_generation;
 static int (*batadv_rx_handler[256])(struct sk_buff *skb,
                                     struct batadv_hard_iface *recv_if);
 
diff --git a/net/batman-adv/main.h b/net/batman-adv/main.h
index e34145047a341..e738758ee4a7a 100644
--- a/net/batman-adv/main.h
+++ b/net/batman-adv/main.h
@@ -226,8 +226,6 @@ static inline int batadv_print_vid(unsigned short vid)
                return -1;
 }
 
-extern unsigned int batadv_hardif_generation;
-
 extern struct workqueue_struct *batadv_event_workqueue;
 
 int batadv_mesh_init(struct net_device *mesh_iface);
diff --git a/net/batman-adv/netlink.c b/net/batman-adv/netlink.c
index 62ea91aa3ead6..d2bc48c707143 100644
--- a/net/batman-adv/netlink.c
+++ b/net/batman-adv/netlink.c
@@ -968,7 +968,7 @@ batadv_netlink_dump_hardif(struct sk_buff *msg, struct 
netlink_callback *cb)
        bat_priv = netdev_priv(mesh_iface);
 
        rtnl_lock();
-       cb->seq = batadv_hardif_generation << 1 | 1;
+       cb->seq = bat_priv->hardif_generation << 1 | 1;
 
        netdev_for_each_lower_private(mesh_iface, hard_iface, iter) {
                if (i++ < skip)
diff --git a/net/batman-adv/types.h b/net/batman-adv/types.h
index 1671380b37929..e1463a029e835 100644
--- a/net/batman-adv/types.h
+++ b/net/batman-adv/types.h
@@ -1676,6 +1676,9 @@ struct batadv_priv {
        /** @tp_num: number of currently active tp sessions */
        atomic_t tp_num;
 
+       /** @hardif_generation: generation counter added to netlink hardif 
dumps */
+       unsigned int hardif_generation;
+
        /** @orig_work: work queue callback item for orig node purging */
        struct delayed_work orig_work;
 
-- 
2.47.3

Reply via email to