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)
        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:
 
                                  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);
 
                return;
        }
 
-       genlmsg_multicast_netns(&devlink_nl_family, devlink_net(devlink), msg,
-                               0, DEVLINK_MCGRP_CONFIG, GFP_KERNEL);
+       devlink_nl_notify_send(devlink, msg);
 }
 
 void
 
                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)
 
                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,
 
                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,
 
                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)
 
        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)
 
                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)
                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)
                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)