From 71179ac5c21185171556bc438d5f22d566948d7f Mon Sep 17 00:00:00 2001 From: Jiri Pirko Date: Mon, 28 Aug 2023 08:16:57 +0200 Subject: [PATCH] devlink: move devlink_notify_register/unregister() to dev.c At last, move the last bits out of leftover.c, the devlink_notify_register/unregister() functions to dev.c Signed-off-by: Jiri Pirko Link: https://lore.kernel.org/r/20230828061657.300667-16-jiri@resnulli.us Signed-off-by: Jakub Kicinski --- net/devlink/Makefile | 2 +- net/devlink/dev.c | 28 +++++++++++++++++- net/devlink/devl_internal.h | 6 ++-- net/devlink/leftover.c | 58 ------------------------------------- 4 files changed, 30 insertions(+), 64 deletions(-) delete mode 100644 net/devlink/leftover.c diff --git a/net/devlink/Makefile b/net/devlink/Makefile index 71f490d301d7..000da622116a 100644 --- a/net/devlink/Makefile +++ b/net/devlink/Makefile @@ -1,4 +1,4 @@ # SPDX-License-Identifier: GPL-2.0 -obj-y := leftover.o core.o netlink.o netlink_gen.o dev.o port.o sb.o dpipe.o \ +obj-y := core.o netlink.o netlink_gen.o dev.o port.o sb.o dpipe.o \ resource.o param.o region.o health.o trap.o rate.o linecard.o diff --git a/net/devlink/dev.c b/net/devlink/dev.c index abf3393a7a17..bba4ace7d22b 100644 --- a/net/devlink/dev.c +++ b/net/devlink/dev.c @@ -174,7 +174,7 @@ static int devlink_nl_fill(struct sk_buff *msg, struct devlink *devlink, return -EMSGSIZE; } -void devlink_notify(struct devlink *devlink, enum devlink_command cmd) +static void devlink_notify(struct devlink *devlink, enum devlink_command cmd) { struct sk_buff *msg; int err; @@ -230,6 +230,32 @@ int devlink_nl_get_dumpit(struct sk_buff *msg, struct netlink_callback *cb) return devlink_nl_dumpit(msg, cb, devlink_nl_get_dump_one); } +void devlink_notify_register(struct devlink *devlink) +{ + devlink_notify(devlink, DEVLINK_CMD_NEW); + devlink_linecards_notify_register(devlink); + devlink_ports_notify_register(devlink); + devlink_trap_policers_notify_register(devlink); + devlink_trap_groups_notify_register(devlink); + devlink_traps_notify_register(devlink); + devlink_rates_notify_register(devlink); + devlink_regions_notify_register(devlink); + devlink_params_notify_register(devlink); +} + +void devlink_notify_unregister(struct devlink *devlink) +{ + devlink_params_notify_unregister(devlink); + devlink_regions_notify_unregister(devlink); + devlink_rates_notify_unregister(devlink); + devlink_traps_notify_unregister(devlink); + devlink_trap_groups_notify_unregister(devlink); + devlink_trap_policers_notify_unregister(devlink); + devlink_ports_notify_unregister(devlink); + devlink_linecards_notify_unregister(devlink); + devlink_notify(devlink, DEVLINK_CMD_DEL); +} + static void devlink_reload_failed_set(struct devlink *devlink, bool reload_failed) { diff --git a/net/devlink/devl_internal.h b/net/devlink/devl_internal.h index efca6abf7af7..f6b5fea2e13c 100644 --- a/net/devlink/devl_internal.h +++ b/net/devlink/devl_internal.h @@ -124,9 +124,6 @@ typedef int devlink_nl_dump_one_func_t(struct sk_buff *msg, struct devlink * devlink_get_from_attrs_lock(struct net *net, struct nlattr **attrs); -void devlink_notify_unregister(struct devlink *devlink); -void devlink_notify_register(struct devlink *devlink); - int devlink_nl_dumpit(struct sk_buff *msg, struct netlink_callback *cb, devlink_nl_dump_one_func_t *dump_one); @@ -151,7 +148,8 @@ devlink_nl_put_handle(struct sk_buff *msg, struct devlink *devlink) int devlink_nl_msg_reply_and_new(struct sk_buff **msg, struct genl_info *info); /* Notify */ -void devlink_notify(struct devlink *devlink, enum devlink_command cmd); +void devlink_notify_register(struct devlink *devlink); +void devlink_notify_unregister(struct devlink *devlink); void devlink_ports_notify_register(struct devlink *devlink); void devlink_ports_notify_unregister(struct devlink *devlink); void devlink_params_notify_register(struct devlink *devlink); diff --git a/net/devlink/leftover.c b/net/devlink/leftover.c deleted file mode 100644 index 05e056d6d5ea..000000000000 --- a/net/devlink/leftover.c +++ /dev/null @@ -1,58 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later -/* - * net/core/devlink.c - Network physical/parent device Netlink interface - * - * Heavily inspired by net/wireless/ - * Copyright (c) 2016 Mellanox Technologies. All rights reserved. - * Copyright (c) 2016 Jiri Pirko - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "devl_internal.h" - -void devlink_notify_register(struct devlink *devlink) -{ - devlink_notify(devlink, DEVLINK_CMD_NEW); - devlink_linecards_notify_register(devlink); - devlink_ports_notify_register(devlink); - devlink_trap_policers_notify_register(devlink); - devlink_trap_groups_notify_register(devlink); - devlink_traps_notify_register(devlink); - devlink_rates_notify_register(devlink); - devlink_regions_notify_register(devlink); - devlink_params_notify_register(devlink); -} - -void devlink_notify_unregister(struct devlink *devlink) -{ - devlink_params_notify_unregister(devlink); - devlink_regions_notify_unregister(devlink); - devlink_rates_notify_unregister(devlink); - devlink_traps_notify_unregister(devlink); - devlink_trap_groups_notify_unregister(devlink); - devlink_trap_policers_notify_unregister(devlink); - devlink_ports_notify_unregister(devlink); - devlink_linecards_notify_unregister(devlink); - devlink_notify(devlink, DEVLINK_CMD_DEL); -}