nexthop: vxlan: Convert to new notification info
authorIdo Schimmel <idosch@nvidia.com>
Wed, 4 Nov 2020 13:30:26 +0000 (15:30 +0200)
committerJakub Kicinski <kuba@kernel.org>
Fri, 6 Nov 2020 19:28:49 +0000 (11:28 -0800)
Convert the sole listener of the nexthop notification chain (the VXLAN
driver) to the new notification info.

Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/vxlan.c
net/ipv4/nexthop.c

index 876679a..b9db20b 100644 (file)
@@ -4684,9 +4684,14 @@ static void vxlan_fdb_nh_flush(struct nexthop *nh)
 static int vxlan_nexthop_event(struct notifier_block *nb,
                               unsigned long event, void *ptr)
 {
-       struct nexthop *nh = ptr;
+       struct nh_notifier_info *info = ptr;
+       struct nexthop *nh;
+
+       if (event != NEXTHOP_EVENT_DEL)
+               return NOTIFY_DONE;
 
-       if (!nh || event != NEXTHOP_EVENT_DEL)
+       nh = nexthop_find_by_id(info->net, info->id);
+       if (!nh)
                return NOTIFY_DONE;
 
        vxlan_fdb_nh_flush(nh);
index 85a5958..1d66f24 100644 (file)
@@ -151,7 +151,7 @@ static int call_nexthop_notifiers(struct net *net,
        }
 
        err = blocking_notifier_call_chain(&net->nexthop.notifier_chain,
-                                          event_type, nh);
+                                          event_type, &info);
        nh_notifier_info_fini(&info);
 
        return notifier_to_errno(err);