devlink: introduce a helper for netlink multicast send
authorJiri Pirko <jiri@nvidia.com>
Sat, 16 Dec 2023 12:29:56 +0000 (13:29 +0100)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 19 Dec 2023 14:31:40 +0000 (15:31 +0100)
Introduce a helper devlink_nl_notify_send() so each object notification
function does not have to call genlmsg_multicast_netns() with the same
arguments.

Signed-off-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
net/devlink/dev.c
net/devlink/devl_internal.h
net/devlink/health.c
net/devlink/linecard.c
net/devlink/param.c
net/devlink/port.c
net/devlink/rate.c
net/devlink/region.c
net/devlink/trap.c

index 63fe3e0..19dbf54 100644 (file)
@@ -217,8 +217,7 @@ static void devlink_notify(struct devlink *devlink, enum devlink_command cmd)
                return;
        }
 
-       genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink),
-                               msg, 0, DEVLINK_MCGRP_CONFIG, GFP_KERNEL);
+       devlink_nl_notify_send(devlink, msg);
 }
 
 int devlink_nl_get_doit(struct sk_buff *skb, struct genl_info *info)
@@ -1013,8 +1012,7 @@ static void __devlink_flash_update_notify(struct devlink *devlink,
        if (err)
                goto out_free_msg;
 
-       genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink),
-                               msg, 0, DEVLINK_MCGRP_CONFIG, GFP_KERNEL);
+       devlink_nl_notify_send(devlink, msg);
        return;
 
 out_free_msg:
index 510990d..84dc962 100644 (file)
@@ -191,6 +191,13 @@ static inline bool devlink_nl_notify_need(struct devlink *devlink)
                                  DEVLINK_MCGRP_CONFIG);
 }
 
+static inline void devlink_nl_notify_send(struct devlink *devlink,
+                                         struct sk_buff *msg)
+{
+       genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink),
+                               msg, 0, DEVLINK_MCGRP_CONFIG, GFP_KERNEL);
+}
+
 /* Notify */
 void devlink_notify_register(struct devlink *devlink);
 void devlink_notify_unregister(struct devlink *devlink);
index 0795dcf..1d59ec0 100644 (file)
@@ -509,8 +509,7 @@ static void devlink_recover_notify(struct devlink_health_reporter *reporter,
                return;
        }
 
-       genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink), msg,
-                               0, DEVLINK_MCGRP_CONFIG, GFP_KERNEL);
+       devlink_nl_notify_send(devlink, msg);
 }
 
 void
index 45b3697..67f70a6 100644 (file)
@@ -150,8 +150,7 @@ static void devlink_linecard_notify(struct devlink_linecard *linecard,
                return;
        }
 
-       genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink),
-                               msg, 0, DEVLINK_MCGRP_CONFIG, GFP_KERNEL);
+       devlink_nl_notify_send(devlink, msg);
 }
 
 void devlink_linecards_notify_register(struct devlink *devlink)
index 7516b52..22bc3b5 100644 (file)
@@ -356,8 +356,7 @@ static void devlink_param_notify(struct devlink *devlink,
                return;
        }
 
-       genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink),
-                               msg, 0, DEVLINK_MCGRP_CONFIG, GFP_KERNEL);
+       devlink_nl_notify_send(devlink, msg);
 }
 
 static void devlink_params_notify(struct devlink *devlink,
index 32f4d03..758df30 100644 (file)
@@ -525,8 +525,7 @@ static void devlink_port_notify(struct devlink_port *devlink_port,
                return;
        }
 
-       genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink), msg,
-                               0, DEVLINK_MCGRP_CONFIG, GFP_KERNEL);
+       devlink_nl_notify_send(devlink, msg);
 }
 
 static void devlink_ports_notify(struct devlink *devlink,
index 0371a2d..7139e67 100644 (file)
@@ -159,8 +159,7 @@ static void devlink_rate_notify(struct devlink_rate *devlink_rate,
                return;
        }
 
-       genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink), msg,
-                               0, DEVLINK_MCGRP_CONFIG, GFP_KERNEL);
+       devlink_nl_notify_send(devlink, msg);
 }
 
 void devlink_rates_notify_register(struct devlink *devlink)
index bf61312..7319127 100644 (file)
@@ -242,8 +242,7 @@ static void devlink_nl_region_notify(struct devlink_region *region,
        if (IS_ERR(msg))
                return;
 
-       genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink), msg,
-                               0, DEVLINK_MCGRP_CONFIG, GFP_KERNEL);
+       devlink_nl_notify_send(devlink, msg);
 }
 
 void devlink_regions_notify_register(struct devlink *devlink)
index 3ca1ca7..5d18c74 100644 (file)
@@ -1188,8 +1188,7 @@ devlink_trap_group_notify(struct devlink *devlink,
                return;
        }
 
-       genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink),
-                               msg, 0, DEVLINK_MCGRP_CONFIG, GFP_KERNEL);
+       devlink_nl_notify_send(devlink, msg);
 }
 
 void devlink_trap_groups_notify_register(struct devlink *devlink)
@@ -1249,8 +1248,7 @@ static void devlink_trap_notify(struct devlink *devlink,
                return;
        }
 
-       genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink),
-                               msg, 0, DEVLINK_MCGRP_CONFIG, GFP_KERNEL);
+       devlink_nl_notify_send(devlink, msg);
 }
 
 void devlink_traps_notify_register(struct devlink *devlink)
@@ -1727,8 +1725,7 @@ devlink_trap_policer_notify(struct devlink *devlink,
                return;
        }
 
-       genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink),
-                               msg, 0, DEVLINK_MCGRP_CONFIG, GFP_KERNEL);
+       devlink_nl_notify_send(devlink, msg);
 }
 
 void devlink_trap_policers_notify_register(struct devlink *devlink)