devlink: remove "gen" from struct devlink_gen_cmd name
[linux-block.git] / net / devlink / leftover.c
index bd4c5d2dd61221473986185055dc15486ebfb5f0..16cb5975de1af96564e15ab4d7a3e67e08299ee2 100644 (file)
@@ -1236,7 +1236,7 @@ devlink_nl_cmd_rate_get_dump_one(struct sk_buff *msg, struct devlink *devlink,
        return err;
 }
 
-const struct devlink_gen_cmd devl_gen_rate_get = {
+const struct devlink_cmd devl_gen_rate_get = {
        .dump_one               = devlink_nl_cmd_rate_get_dump_one,
 };
 
@@ -1303,7 +1303,7 @@ devlink_nl_cmd_get_dump_one(struct sk_buff *msg, struct devlink *devlink,
                               cb->nlh->nlmsg_seq, NLM_F_MULTI);
 }
 
-const struct devlink_gen_cmd devl_gen_inst = {
+const struct devlink_cmd devl_gen_inst = {
        .dump_one               = devlink_nl_cmd_get_dump_one,
 };
 
@@ -1359,7 +1359,7 @@ devlink_nl_cmd_port_get_dump_one(struct sk_buff *msg, struct devlink *devlink,
        return err;
 }
 
-const struct devlink_gen_cmd devl_gen_port = {
+const struct devlink_cmd devl_gen_port = {
        .dump_one               = devlink_nl_cmd_port_get_dump_one,
 };
 
@@ -2137,7 +2137,7 @@ static int devlink_nl_cmd_linecard_get_dump_one(struct sk_buff *msg,
        return err;
 }
 
-const struct devlink_gen_cmd devl_gen_linecard = {
+const struct devlink_cmd devl_gen_linecard = {
        .dump_one               = devlink_nl_cmd_linecard_get_dump_one,
 };
 
@@ -2392,7 +2392,7 @@ devlink_nl_cmd_sb_get_dump_one(struct sk_buff *msg, struct devlink *devlink,
        return err;
 }
 
-const struct devlink_gen_cmd devl_gen_sb = {
+const struct devlink_cmd devl_gen_sb = {
        .dump_one               = devlink_nl_cmd_sb_get_dump_one,
 };
 
@@ -2530,7 +2530,7 @@ devlink_nl_cmd_sb_pool_get_dump_one(struct sk_buff *msg,
        return err;
 }
 
-const struct devlink_gen_cmd devl_gen_sb_pool = {
+const struct devlink_cmd devl_gen_sb_pool = {
        .dump_one               = devlink_nl_cmd_sb_pool_get_dump_one,
 };
 
@@ -2738,7 +2738,7 @@ devlink_nl_cmd_sb_port_pool_get_dump_one(struct sk_buff *msg,
        return err;
 }
 
-const struct devlink_gen_cmd devl_gen_sb_port_pool = {
+const struct devlink_cmd devl_gen_sb_port_pool = {
        .dump_one               = devlink_nl_cmd_sb_port_pool_get_dump_one,
 };
 
@@ -2973,7 +2973,7 @@ devlink_nl_cmd_sb_tc_pool_bind_get_dump_one(struct sk_buff *msg,
        return err;
 }
 
-const struct devlink_gen_cmd devl_gen_sb_tc_pool_bind = {
+const struct devlink_cmd devl_gen_sb_tc_pool_bind = {
        .dump_one               = devlink_nl_cmd_sb_tc_pool_bind_get_dump_one,
 };
 
@@ -4230,36 +4230,20 @@ static struct net *devlink_netns_get(struct sk_buff *skb,
        return net;
 }
 
-static void devlink_param_notify(struct devlink *devlink,
-                                unsigned int port_index,
-                                struct devlink_param_item *param_item,
-                                enum devlink_command cmd);
-
-static void devlink_ns_change_notify(struct devlink *devlink,
-                                    struct net *dest_net, struct net *curr_net,
-                                    bool new)
+static void devlink_reload_netns_change(struct devlink *devlink,
+                                       struct net *curr_net,
+                                       struct net *dest_net)
 {
-       struct devlink_param_item *param_item;
-       enum devlink_command cmd;
-
        /* Userspace needs to be notified about devlink objects
         * removed from original and entering new network namespace.
         * The rest of the devlink objects are re-created during
         * reload process so the notifications are generated separatelly.
         */
-
-       if (!dest_net || net_eq(dest_net, curr_net))
-               return;
-
-       if (new)
-               devlink_notify(devlink, DEVLINK_CMD_NEW);
-
-       cmd = new ? DEVLINK_CMD_PARAM_NEW : DEVLINK_CMD_PARAM_DEL;
-       list_for_each_entry(param_item, &devlink->param_list, list)
-               devlink_param_notify(devlink, 0, param_item, cmd);
-
-       if (!new)
-               devlink_notify(devlink, DEVLINK_CMD_DEL);
+       devlink_notify_unregister(devlink);
+       move_netdevice_notifier_net(curr_net, dest_net,
+                                   &devlink->netdevice_nb);
+       write_pnet(&devlink->_net, dest_net);
+       devlink_notify_register(devlink);
 }
 
 static void devlink_reload_failed_set(struct devlink *devlink,
@@ -4341,24 +4325,19 @@ int devlink_reload(struct devlink *devlink, struct net *dest_net,
        memcpy(remote_reload_stats, devlink->stats.remote_reload_stats,
               sizeof(remote_reload_stats));
 
-       curr_net = devlink_net(devlink);
-       devlink_ns_change_notify(devlink, dest_net, curr_net, false);
        err = devlink->ops->reload_down(devlink, !!dest_net, action, limit, extack);
        if (err)
                return err;
 
-       if (dest_net && !net_eq(dest_net, curr_net)) {
-               move_netdevice_notifier_net(curr_net, dest_net,
-                                           &devlink->netdevice_nb);
-               write_pnet(&devlink->_net, dest_net);
-       }
+       curr_net = devlink_net(devlink);
+       if (dest_net && !net_eq(dest_net, curr_net))
+               devlink_reload_netns_change(devlink, curr_net, dest_net);
 
        err = devlink->ops->reload_up(devlink, action, limit, actions_performed, extack);
        devlink_reload_failed_set(devlink, !!err);
        if (err)
                return err;
 
-       devlink_ns_change_notify(devlink, dest_net, curr_net, true);
        WARN_ON(!(*actions_performed & BIT(action)));
        /* Catch driver on updating the remote action within devlink reload */
        WARN_ON(memcmp(remote_reload_stats, devlink->stats.remote_reload_stats,
@@ -4408,9 +4387,6 @@ static int devlink_nl_cmd_reload(struct sk_buff *skb, struct genl_info *info)
        u32 actions_performed;
        int err;
 
-       if (!(devlink->features & DEVLINK_F_RELOAD))
-               return -EOPNOTSUPP;
-
        err = devlink_resources_validate(devlink, NULL, info);
        if (err) {
                NL_SET_ERR_MSG_MOD(info->extack, "resources size validation failed");
@@ -4809,7 +4785,7 @@ devlink_nl_cmd_selftests_get_dump_one(struct sk_buff *msg,
                                         cb->extack);
 }
 
-const struct devlink_gen_cmd devl_gen_selftests = {
+const struct devlink_cmd devl_gen_selftests = {
        .dump_one               = devlink_nl_cmd_selftests_get_dump_one,
 };
 
@@ -5295,7 +5271,7 @@ devlink_nl_cmd_param_get_dump_one(struct sk_buff *msg, struct devlink *devlink,
        return err;
 }
 
-const struct devlink_gen_cmd devl_gen_param = {
+const struct devlink_cmd devl_gen_param = {
        .dump_one               = devlink_nl_cmd_param_get_dump_one,
 };
 
@@ -6002,7 +5978,7 @@ devlink_nl_cmd_region_get_dump_one(struct sk_buff *msg, struct devlink *devlink,
        return 0;
 }
 
-const struct devlink_gen_cmd devl_gen_region = {
+const struct devlink_cmd devl_gen_region = {
        .dump_one               = devlink_nl_cmd_region_get_dump_one,
 };
 
@@ -6649,7 +6625,7 @@ devlink_nl_cmd_info_get_dump_one(struct sk_buff *msg, struct devlink *devlink,
        return err;
 }
 
-const struct devlink_gen_cmd devl_gen_info = {
+const struct devlink_cmd devl_gen_info = {
        .dump_one               = devlink_nl_cmd_info_get_dump_one,
 };
 
@@ -7817,7 +7793,7 @@ devlink_nl_cmd_health_reporter_get_dump_one(struct sk_buff *msg,
        return 0;
 }
 
-const struct devlink_gen_cmd devl_gen_health_reporter = {
+const struct devlink_cmd devl_gen_health_reporter = {
        .dump_one               = devlink_nl_cmd_health_reporter_get_dump_one,
 };
 
@@ -8335,7 +8311,7 @@ devlink_nl_cmd_trap_get_dump_one(struct sk_buff *msg, struct devlink *devlink,
        return err;
 }
 
-const struct devlink_gen_cmd devl_gen_trap = {
+const struct devlink_cmd devl_gen_trap = {
        .dump_one               = devlink_nl_cmd_trap_get_dump_one,
 };
 
@@ -8548,7 +8524,7 @@ devlink_nl_cmd_trap_group_get_dump_one(struct sk_buff *msg,
        return err;
 }
 
-const struct devlink_gen_cmd devl_gen_trap_group = {
+const struct devlink_cmd devl_gen_trap_group = {
        .dump_one               = devlink_nl_cmd_trap_group_get_dump_one,
 };
 
@@ -8841,7 +8817,7 @@ devlink_nl_cmd_trap_policer_get_dump_one(struct sk_buff *msg,
        return err;
 }
 
-const struct devlink_gen_cmd devl_gen_trap_policer = {
+const struct devlink_cmd devl_gen_trap_policer = {
        .dump_one               = devlink_nl_cmd_trap_policer_get_dump_one,
 };
 
@@ -8922,14 +8898,14 @@ const struct genl_small_ops devlink_nl_ops[56] = {
                .cmd = DEVLINK_CMD_GET,
                .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP,
                .doit = devlink_nl_cmd_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                /* can be retrieved by unprivileged users */
        },
        {
                .cmd = DEVLINK_CMD_PORT_GET,
                .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP,
                .doit = devlink_nl_cmd_port_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                .internal_flags = DEVLINK_NL_FLAG_NEED_PORT,
                /* can be retrieved by unprivileged users */
        },
@@ -8943,7 +8919,7 @@ const struct genl_small_ops devlink_nl_ops[56] = {
        {
                .cmd = DEVLINK_CMD_RATE_GET,
                .doit = devlink_nl_cmd_rate_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                .internal_flags = DEVLINK_NL_FLAG_NEED_RATE,
                /* can be retrieved by unprivileged users */
        },
@@ -8991,7 +8967,7 @@ const struct genl_small_ops devlink_nl_ops[56] = {
        {
                .cmd = DEVLINK_CMD_LINECARD_GET,
                .doit = devlink_nl_cmd_linecard_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                .internal_flags = DEVLINK_NL_FLAG_NEED_LINECARD,
                /* can be retrieved by unprivileged users */
        },
@@ -9005,14 +8981,14 @@ const struct genl_small_ops devlink_nl_ops[56] = {
                .cmd = DEVLINK_CMD_SB_GET,
                .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP,
                .doit = devlink_nl_cmd_sb_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                /* can be retrieved by unprivileged users */
        },
        {
                .cmd = DEVLINK_CMD_SB_POOL_GET,
                .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP,
                .doit = devlink_nl_cmd_sb_pool_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                /* can be retrieved by unprivileged users */
        },
        {
@@ -9025,7 +9001,7 @@ const struct genl_small_ops devlink_nl_ops[56] = {
                .cmd = DEVLINK_CMD_SB_PORT_POOL_GET,
                .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP,
                .doit = devlink_nl_cmd_sb_port_pool_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                .internal_flags = DEVLINK_NL_FLAG_NEED_PORT,
                /* can be retrieved by unprivileged users */
        },
@@ -9040,7 +9016,7 @@ const struct genl_small_ops devlink_nl_ops[56] = {
                .cmd = DEVLINK_CMD_SB_TC_POOL_BIND_GET,
                .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP,
                .doit = devlink_nl_cmd_sb_tc_pool_bind_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                .internal_flags = DEVLINK_NL_FLAG_NEED_PORT,
                /* can be retrieved by unprivileged users */
        },
@@ -9121,7 +9097,7 @@ const struct genl_small_ops devlink_nl_ops[56] = {
                .cmd = DEVLINK_CMD_PARAM_GET,
                .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP,
                .doit = devlink_nl_cmd_param_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                /* can be retrieved by unprivileged users */
        },
        {
@@ -9149,7 +9125,7 @@ const struct genl_small_ops devlink_nl_ops[56] = {
                .cmd = DEVLINK_CMD_REGION_GET,
                .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP,
                .doit = devlink_nl_cmd_region_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                .flags = GENL_ADMIN_PERM,
        },
        {
@@ -9175,14 +9151,14 @@ const struct genl_small_ops devlink_nl_ops[56] = {
                .cmd = DEVLINK_CMD_INFO_GET,
                .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP,
                .doit = devlink_nl_cmd_info_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                /* can be retrieved by unprivileged users */
        },
        {
                .cmd = DEVLINK_CMD_HEALTH_REPORTER_GET,
                .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP,
                .doit = devlink_nl_cmd_health_reporter_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                .internal_flags = DEVLINK_NL_FLAG_NEED_DEVLINK_OR_PORT,
                /* can be retrieved by unprivileged users */
        },
@@ -9237,7 +9213,7 @@ const struct genl_small_ops devlink_nl_ops[56] = {
        {
                .cmd = DEVLINK_CMD_TRAP_GET,
                .doit = devlink_nl_cmd_trap_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                /* can be retrieved by unprivileged users */
        },
        {
@@ -9248,7 +9224,7 @@ const struct genl_small_ops devlink_nl_ops[56] = {
        {
                .cmd = DEVLINK_CMD_TRAP_GROUP_GET,
                .doit = devlink_nl_cmd_trap_group_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                /* can be retrieved by unprivileged users */
        },
        {
@@ -9259,7 +9235,7 @@ const struct genl_small_ops devlink_nl_ops[56] = {
        {
                .cmd = DEVLINK_CMD_TRAP_POLICER_GET,
                .doit = devlink_nl_cmd_trap_policer_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                /* can be retrieved by unprivileged users */
        },
        {
@@ -9270,7 +9246,7 @@ const struct genl_small_ops devlink_nl_ops[56] = {
        {
                .cmd = DEVLINK_CMD_SELFTESTS_GET,
                .doit = devlink_nl_cmd_selftests_get_doit,
-               .dumpit = devlink_nl_instance_iter_dump,
+               .dumpit = devlink_nl_instance_iter_dumpit,
                /* can be retrieved by unprivileged users */
        },
        {