mlxsw: convert driver to use unlocked devlink API during init/fini
authorJiri Pirko <jiri@nvidia.com>
Sat, 16 Jul 2022 11:02:38 +0000 (13:02 +0200)
committerJakub Kicinski <kuba@kernel.org>
Tue, 19 Jul 2022 03:10:47 +0000 (20:10 -0700)
Prepare for devlink reload being called with devlink->lock held and
convert the mlxsw driver to use unlocked devlink API during init and
fini flows. Take devl_lock() in reload_down() and reload_up() ops in the
meantime before reload cmd is converted to take the lock itself.

Signed-off-by: Jiri Pirko <jiri@nvidia.com>
Reviewed-by: Ido Schimmel <idosch@nvidia.com>
Tested-by: Ido Schimmel <idosch@nvidia.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/mellanox/mlxsw/core.c
drivers/net/ethernet/mellanox/mlxsw/spectrum.c
drivers/net/ethernet/mellanox/mlxsw/spectrum1_kvdl.c
drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c
drivers/net/ethernet/mellanox/mlxsw/spectrum_cnt.c
drivers/net/ethernet/mellanox/mlxsw/spectrum_dpipe.c
drivers/net/ethernet/mellanox/mlxsw/spectrum_policer.c
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c
drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c
drivers/net/ethernet/mellanox/mlxsw/spectrum_trap.c

index ab1cebf227fb6d7fb3c5307ab4ce339b26e16d0f..61eb96b938892f23c6c44334c99ea5b3685ffc87 100644 (file)
@@ -127,11 +127,11 @@ static int mlxsw_core_resources_ports_register(struct mlxsw_core *mlxsw_core)
                                          max_ports, 1,
                                          DEVLINK_RESOURCE_UNIT_ENTRY);
 
-       return devlink_resource_register(devlink,
-                                        DEVLINK_RESOURCE_GENERIC_NAME_PORTS,
-                                        max_ports, MLXSW_CORE_RESOURCE_PORTS,
-                                        DEVLINK_RESOURCE_ID_PARENT_TOP,
-                                        &ports_num_params);
+       return devl_resource_register(devlink,
+                                     DEVLINK_RESOURCE_GENERIC_NAME_PORTS,
+                                     max_ports, MLXSW_CORE_RESOURCE_PORTS,
+                                     DEVLINK_RESOURCE_ID_PARENT_TOP,
+                                     &ports_num_params);
 }
 
 static int mlxsw_ports_init(struct mlxsw_core *mlxsw_core, bool reload)
@@ -157,8 +157,8 @@ static int mlxsw_ports_init(struct mlxsw_core *mlxsw_core, bool reload)
                        goto err_resources_ports_register;
        }
        atomic_set(&mlxsw_core->active_ports_count, 0);
-       devlink_resource_occ_get_register(devlink, MLXSW_CORE_RESOURCE_PORTS,
-                                         mlxsw_ports_occ_get, mlxsw_core);
+       devl_resource_occ_get_register(devlink, MLXSW_CORE_RESOURCE_PORTS,
+                                      mlxsw_ports_occ_get, mlxsw_core);
 
        return 0;
 
@@ -171,9 +171,9 @@ static void mlxsw_ports_fini(struct mlxsw_core *mlxsw_core, bool reload)
 {
        struct devlink *devlink = priv_to_devlink(mlxsw_core);
 
-       devlink_resource_occ_get_unregister(devlink, MLXSW_CORE_RESOURCE_PORTS);
+       devl_resource_occ_get_unregister(devlink, MLXSW_CORE_RESOURCE_PORTS);
        if (!reload)
-               devlink_resources_unregister(priv_to_devlink(mlxsw_core));
+               devl_resources_unregister(priv_to_devlink(mlxsw_core));
 
        kfree(mlxsw_core->ports);
 }
@@ -1488,7 +1488,9 @@ mlxsw_devlink_core_bus_device_reload_down(struct devlink *devlink,
        if (!(mlxsw_core->bus->features & MLXSW_BUS_F_RESET))
                return -EOPNOTSUPP;
 
+       devl_lock(devlink);
        mlxsw_core_bus_device_unregister(mlxsw_core, true);
+       devl_unlock(devlink);
        return 0;
 }
 
@@ -1498,13 +1500,17 @@ mlxsw_devlink_core_bus_device_reload_up(struct devlink *devlink, enum devlink_re
                                        struct netlink_ext_ack *extack)
 {
        struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
+       int err;
 
        *actions_performed = BIT(DEVLINK_RELOAD_ACTION_DRIVER_REINIT) |
                             BIT(DEVLINK_RELOAD_ACTION_FW_ACTIVATE);
-       return mlxsw_core_bus_device_register(mlxsw_core->bus_info,
-                                             mlxsw_core->bus,
-                                             mlxsw_core->bus_priv, true,
-                                             devlink, extack);
+       devl_lock(devlink);
+       err = mlxsw_core_bus_device_register(mlxsw_core->bus_info,
+                                            mlxsw_core->bus,
+                                            mlxsw_core->bus_priv, true,
+                                            devlink, extack);
+       devl_unlock(devlink);
+       return err;
 }
 
 static int mlxsw_devlink_flash_update(struct devlink *devlink,
@@ -2102,6 +2108,7 @@ __mlxsw_core_bus_device_register(const struct mlxsw_bus_info *mlxsw_bus_info,
                        err = -ENOMEM;
                        goto err_devlink_alloc;
                }
+               devl_lock(devlink);
        }
 
        mlxsw_core = devlink_priv(devlink);
@@ -2187,6 +2194,7 @@ __mlxsw_core_bus_device_register(const struct mlxsw_bus_info *mlxsw_bus_info,
 
        if (!reload) {
                devlink_set_features(devlink, DEVLINK_F_RELOAD);
+               devl_unlock(devlink);
                devlink_register(devlink);
        }
        return 0;
@@ -2214,12 +2222,14 @@ err_alloc_lag_mapping:
        mlxsw_ports_fini(mlxsw_core, reload);
 err_ports_init:
        if (!reload)
-               devlink_resources_unregister(devlink);
+               devl_resources_unregister(devlink);
 err_register_resources:
        mlxsw_bus->fini(bus_priv);
 err_bus_init:
-       if (!reload)
+       if (!reload) {
+               devl_unlock(devlink);
                devlink_free(devlink);
+       }
 err_devlink_alloc:
        return err;
 }
@@ -2255,8 +2265,10 @@ void mlxsw_core_bus_device_unregister(struct mlxsw_core *mlxsw_core,
 {
        struct devlink *devlink = priv_to_devlink(mlxsw_core);
 
-       if (!reload)
+       if (!reload) {
                devlink_unregister(devlink);
+               devl_lock(devlink);
+       }
 
        if (devlink_is_reload_failed(devlink)) {
                if (!reload)
@@ -2281,17 +2293,20 @@ void mlxsw_core_bus_device_unregister(struct mlxsw_core *mlxsw_core,
        kfree(mlxsw_core->lag.mapping);
        mlxsw_ports_fini(mlxsw_core, reload);
        if (!reload)
-               devlink_resources_unregister(devlink);
+               devl_resources_unregister(devlink);
        mlxsw_core->bus->fini(mlxsw_core->bus_priv);
-       if (!reload)
+       if (!reload) {
                devlink_free(devlink);
+               devl_unlock(devlink);
+       }
 
        return;
 
 reload_fail_deinit:
        mlxsw_core_params_unregister(mlxsw_core);
-       devlink_resources_unregister(devlink);
+       devl_resources_unregister(devlink);
        devlink_free(devlink);
+       devl_unlock(devlink);
 }
 EXPORT_SYMBOL(mlxsw_core_bus_device_unregister);
 
index a703ca257198e6c1d7f8674637b8f02aea4a4f39..209587cf7529e5bfe1a144ae5eee8e69e73e39cd 100644 (file)
@@ -1999,7 +1999,6 @@ __mlxsw_sp_port_mapping_events_cancel(struct mlxsw_sp *mlxsw_sp)
 static void mlxsw_sp_ports_remove(struct mlxsw_sp *mlxsw_sp)
 {
        unsigned int max_ports = mlxsw_core_max_ports(mlxsw_sp->core);
-       struct devlink *devlink = priv_to_devlink(mlxsw_sp->core);
        int i;
 
        for (i = 1; i < max_ports; i++)
@@ -2007,12 +2006,10 @@ static void mlxsw_sp_ports_remove(struct mlxsw_sp *mlxsw_sp)
        /* Make sure all scheduled events are processed */
        __mlxsw_sp_port_mapping_events_cancel(mlxsw_sp);
 
-       devl_lock(devlink);
        for (i = 1; i < max_ports; i++)
                if (mlxsw_sp_port_created(mlxsw_sp, i))
                        mlxsw_sp_port_remove(mlxsw_sp, i);
        mlxsw_sp_cpu_port_remove(mlxsw_sp);
-       devl_unlock(devlink);
        kfree(mlxsw_sp->ports);
        mlxsw_sp->ports = NULL;
 }
@@ -2034,7 +2031,6 @@ mlxsw_sp_ports_remove_selected(struct mlxsw_core *mlxsw_core,
 static int mlxsw_sp_ports_create(struct mlxsw_sp *mlxsw_sp)
 {
        unsigned int max_ports = mlxsw_core_max_ports(mlxsw_sp->core);
-       struct devlink *devlink = priv_to_devlink(mlxsw_sp->core);
        struct mlxsw_sp_port_mapping_events *events;
        struct mlxsw_sp_port_mapping *port_mapping;
        size_t alloc_size;
@@ -2057,7 +2053,6 @@ static int mlxsw_sp_ports_create(struct mlxsw_sp *mlxsw_sp)
                        goto err_event_enable;
        }
 
-       devl_lock(devlink);
        err = mlxsw_sp_cpu_port_create(mlxsw_sp);
        if (err)
                goto err_cpu_port_create;
@@ -2070,7 +2065,6 @@ static int mlxsw_sp_ports_create(struct mlxsw_sp *mlxsw_sp)
                if (err)
                        goto err_port_create;
        }
-       devl_unlock(devlink);
        return 0;
 
 err_port_create:
@@ -2080,7 +2074,6 @@ err_port_create:
        i = max_ports;
        mlxsw_sp_cpu_port_remove(mlxsw_sp);
 err_cpu_port_create:
-       devl_unlock(devlink);
 err_event_enable:
        for (i--; i >= 1; i--)
                mlxsw_sp_port_mapping_event_set(mlxsw_sp, i, false);
@@ -3477,19 +3470,19 @@ static int mlxsw_sp1_resources_kvd_register(struct mlxsw_core *mlxsw_core)
                                              &hash_single_size_params);
 
        kvd_size = MLXSW_CORE_RES_GET(mlxsw_core, KVD_SIZE);
-       err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD,
-                                       kvd_size, MLXSW_SP_RESOURCE_KVD,
-                                       DEVLINK_RESOURCE_ID_PARENT_TOP,
-                                       &kvd_size_params);
+       err = devl_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD,
+                                    kvd_size, MLXSW_SP_RESOURCE_KVD,
+                                    DEVLINK_RESOURCE_ID_PARENT_TOP,
+                                    &kvd_size_params);
        if (err)
                return err;
 
        linear_size = profile->kvd_linear_size;
-       err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_LINEAR,
-                                       linear_size,
-                                       MLXSW_SP_RESOURCE_KVD_LINEAR,
-                                       MLXSW_SP_RESOURCE_KVD,
-                                       &linear_size_params);
+       err = devl_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_LINEAR,
+                                    linear_size,
+                                    MLXSW_SP_RESOURCE_KVD_LINEAR,
+                                    MLXSW_SP_RESOURCE_KVD,
+                                    &linear_size_params);
        if (err)
                return err;
 
@@ -3502,20 +3495,20 @@ static int mlxsw_sp1_resources_kvd_register(struct mlxsw_core *mlxsw_core)
        double_size /= profile->kvd_hash_double_parts +
                       profile->kvd_hash_single_parts;
        double_size = rounddown(double_size, MLXSW_SP_KVD_GRANULARITY);
-       err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_HASH_DOUBLE,
-                                       double_size,
-                                       MLXSW_SP_RESOURCE_KVD_HASH_DOUBLE,
-                                       MLXSW_SP_RESOURCE_KVD,
-                                       &hash_double_size_params);
+       err = devl_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_HASH_DOUBLE,
+                                    double_size,
+                                    MLXSW_SP_RESOURCE_KVD_HASH_DOUBLE,
+                                    MLXSW_SP_RESOURCE_KVD,
+                                    &hash_double_size_params);
        if (err)
                return err;
 
        single_size = kvd_size - double_size - linear_size;
-       err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_HASH_SINGLE,
-                                       single_size,
-                                       MLXSW_SP_RESOURCE_KVD_HASH_SINGLE,
-                                       MLXSW_SP_RESOURCE_KVD,
-                                       &hash_single_size_params);
+       err = devl_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_HASH_SINGLE,
+                                    single_size,
+                                    MLXSW_SP_RESOURCE_KVD_HASH_SINGLE,
+                                    MLXSW_SP_RESOURCE_KVD,
+                                    &hash_single_size_params);
        if (err)
                return err;
 
@@ -3536,10 +3529,10 @@ static int mlxsw_sp2_resources_kvd_register(struct mlxsw_core *mlxsw_core)
                                          MLXSW_SP_KVD_GRANULARITY,
                                          DEVLINK_RESOURCE_UNIT_ENTRY);
 
-       return devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD,
-                                        kvd_size, MLXSW_SP_RESOURCE_KVD,
-                                        DEVLINK_RESOURCE_ID_PARENT_TOP,
-                                        &kvd_size_params);
+       return devl_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD,
+                                     kvd_size, MLXSW_SP_RESOURCE_KVD,
+                                     DEVLINK_RESOURCE_ID_PARENT_TOP,
+                                     &kvd_size_params);
 }
 
 static int mlxsw_sp_resources_span_register(struct mlxsw_core *mlxsw_core)
@@ -3555,10 +3548,10 @@ static int mlxsw_sp_resources_span_register(struct mlxsw_core *mlxsw_core)
        devlink_resource_size_params_init(&span_size_params, max_span, max_span,
                                          1, DEVLINK_RESOURCE_UNIT_ENTRY);
 
-       return devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_SPAN,
-                                        max_span, MLXSW_SP_RESOURCE_SPAN,
-                                        DEVLINK_RESOURCE_ID_PARENT_TOP,
-                                        &span_size_params);
+       return devl_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_SPAN,
+                                     max_span, MLXSW_SP_RESOURCE_SPAN,
+                                     DEVLINK_RESOURCE_ID_PARENT_TOP,
+                                     &span_size_params);
 }
 
 static int
@@ -3577,12 +3570,12 @@ mlxsw_sp_resources_rif_mac_profile_register(struct mlxsw_core *mlxsw_core)
                                          max_rif_mac_profiles, 1,
                                          DEVLINK_RESOURCE_UNIT_ENTRY);
 
-       return devlink_resource_register(devlink,
-                                        "rif_mac_profiles",
-                                        max_rif_mac_profiles,
-                                        MLXSW_SP_RESOURCE_RIF_MAC_PROFILES,
-                                        DEVLINK_RESOURCE_ID_PARENT_TOP,
-                                        &size_params);
+       return devl_resource_register(devlink,
+                                     "rif_mac_profiles",
+                                     max_rif_mac_profiles,
+                                     MLXSW_SP_RESOURCE_RIF_MAC_PROFILES,
+                                     DEVLINK_RESOURCE_ID_PARENT_TOP,
+                                     &size_params);
 }
 
 static int mlxsw_sp_resources_rifs_register(struct mlxsw_core *mlxsw_core)
@@ -3598,10 +3591,10 @@ static int mlxsw_sp_resources_rifs_register(struct mlxsw_core *mlxsw_core)
        devlink_resource_size_params_init(&size_params, max_rifs, max_rifs,
                                          1, DEVLINK_RESOURCE_UNIT_ENTRY);
 
-       return devlink_resource_register(devlink, "rifs", max_rifs,
-                                        MLXSW_SP_RESOURCE_RIFS,
-                                        DEVLINK_RESOURCE_ID_PARENT_TOP,
-                                        &size_params);
+       return devl_resource_register(devlink, "rifs", max_rifs,
+                                     MLXSW_SP_RESOURCE_RIFS,
+                                     DEVLINK_RESOURCE_ID_PARENT_TOP,
+                                     &size_params);
 }
 
 static int mlxsw_sp1_resources_register(struct mlxsw_core *mlxsw_core)
@@ -3639,7 +3632,7 @@ err_resources_rif_mac_profile_register:
 err_policer_resources_register:
 err_resources_counter_register:
 err_resources_span_register:
-       devlink_resources_unregister(priv_to_devlink(mlxsw_core));
+       devl_resources_unregister(priv_to_devlink(mlxsw_core));
        return err;
 }
 
@@ -3678,7 +3671,7 @@ err_resources_rif_mac_profile_register:
 err_policer_resources_register:
 err_resources_counter_register:
 err_resources_span_register:
-       devlink_resources_unregister(priv_to_devlink(mlxsw_core));
+       devl_resources_unregister(priv_to_devlink(mlxsw_core));
        return err;
 }
 
@@ -3702,15 +3695,15 @@ static int mlxsw_sp_kvd_sizes_get(struct mlxsw_core *mlxsw_core,
         * granularity from the profile. In case the user
         * provided the sizes they are obtained via devlink.
         */
-       err = devlink_resource_size_get(devlink,
-                                       MLXSW_SP_RESOURCE_KVD_LINEAR,
-                                       p_linear_size);
+       err = devl_resource_size_get(devlink,
+                                    MLXSW_SP_RESOURCE_KVD_LINEAR,
+                                    p_linear_size);
        if (err)
                *p_linear_size = profile->kvd_linear_size;
 
-       err = devlink_resource_size_get(devlink,
-                                       MLXSW_SP_RESOURCE_KVD_HASH_DOUBLE,
-                                       p_double_size);
+       err = devl_resource_size_get(devlink,
+                                    MLXSW_SP_RESOURCE_KVD_HASH_DOUBLE,
+                                    p_double_size);
        if (err) {
                double_size = MLXSW_CORE_RES_GET(mlxsw_core, KVD_SIZE) -
                              *p_linear_size;
@@ -3721,9 +3714,9 @@ static int mlxsw_sp_kvd_sizes_get(struct mlxsw_core *mlxsw_core,
                                           MLXSW_SP_KVD_GRANULARITY);
        }
 
-       err = devlink_resource_size_get(devlink,
-                                       MLXSW_SP_RESOURCE_KVD_HASH_SINGLE,
-                                       p_single_size);
+       err = devl_resource_size_get(devlink,
+                                    MLXSW_SP_RESOURCE_KVD_HASH_SINGLE,
+                                    p_single_size);
        if (err)
                *p_single_size = MLXSW_CORE_RES_GET(mlxsw_core, KVD_SIZE) -
                                 *p_double_size - *p_linear_size;
index d20e794e01ca0dba349bc2b6e6dc297c9e65e273..1e3fc989393c509f8c462e82fcd288f4d31997a0 100644 (file)
@@ -216,8 +216,8 @@ mlxsw_sp1_kvdl_part_init(struct mlxsw_sp *mlxsw_sp,
        u64 resource_size;
        int err;
 
-       err = devlink_resource_size_get(devlink, info->resource_id,
-                                       &resource_size);
+       err = devl_resource_size_get(devlink, info->resource_id,
+                                    &resource_size);
        if (err) {
                need_update = false;
                resource_size = info->end_index - info->start_index + 1;
@@ -338,22 +338,22 @@ static int mlxsw_sp1_kvdl_init(struct mlxsw_sp *mlxsw_sp, void *priv)
        err = mlxsw_sp1_kvdl_parts_init(mlxsw_sp, kvdl);
        if (err)
                return err;
-       devlink_resource_occ_get_register(devlink,
-                                         MLXSW_SP_RESOURCE_KVD_LINEAR,
-                                         mlxsw_sp1_kvdl_occ_get,
-                                         kvdl);
-       devlink_resource_occ_get_register(devlink,
-                                         MLXSW_SP_RESOURCE_KVD_LINEAR_SINGLE,
-                                         mlxsw_sp1_kvdl_single_occ_get,
-                                         kvdl);
-       devlink_resource_occ_get_register(devlink,
-                                         MLXSW_SP_RESOURCE_KVD_LINEAR_CHUNKS,
-                                         mlxsw_sp1_kvdl_chunks_occ_get,
-                                         kvdl);
-       devlink_resource_occ_get_register(devlink,
-                                         MLXSW_SP_RESOURCE_KVD_LINEAR_LARGE_CHUNKS,
-                                         mlxsw_sp1_kvdl_large_chunks_occ_get,
-                                         kvdl);
+       devl_resource_occ_get_register(devlink,
+                                      MLXSW_SP_RESOURCE_KVD_LINEAR,
+                                      mlxsw_sp1_kvdl_occ_get,
+                                      kvdl);
+       devl_resource_occ_get_register(devlink,
+                                      MLXSW_SP_RESOURCE_KVD_LINEAR_SINGLE,
+                                      mlxsw_sp1_kvdl_single_occ_get,
+                                      kvdl);
+       devl_resource_occ_get_register(devlink,
+                                      MLXSW_SP_RESOURCE_KVD_LINEAR_CHUNKS,
+                                      mlxsw_sp1_kvdl_chunks_occ_get,
+                                      kvdl);
+       devl_resource_occ_get_register(devlink,
+                                      MLXSW_SP_RESOURCE_KVD_LINEAR_LARGE_CHUNKS,
+                                      mlxsw_sp1_kvdl_large_chunks_occ_get,
+                                      kvdl);
        return 0;
 }
 
@@ -362,14 +362,14 @@ static void mlxsw_sp1_kvdl_fini(struct mlxsw_sp *mlxsw_sp, void *priv)
        struct devlink *devlink = priv_to_devlink(mlxsw_sp->core);
        struct mlxsw_sp1_kvdl *kvdl = priv;
 
-       devlink_resource_occ_get_unregister(devlink,
-                                           MLXSW_SP_RESOURCE_KVD_LINEAR_LARGE_CHUNKS);
-       devlink_resource_occ_get_unregister(devlink,
-                                           MLXSW_SP_RESOURCE_KVD_LINEAR_CHUNKS);
-       devlink_resource_occ_get_unregister(devlink,
-                                           MLXSW_SP_RESOURCE_KVD_LINEAR_SINGLE);
-       devlink_resource_occ_get_unregister(devlink,
-                                           MLXSW_SP_RESOURCE_KVD_LINEAR);
+       devl_resource_occ_get_unregister(devlink,
+                                        MLXSW_SP_RESOURCE_KVD_LINEAR_LARGE_CHUNKS);
+       devl_resource_occ_get_unregister(devlink,
+                                        MLXSW_SP_RESOURCE_KVD_LINEAR_CHUNKS);
+       devl_resource_occ_get_unregister(devlink,
+                                        MLXSW_SP_RESOURCE_KVD_LINEAR_SINGLE);
+       devl_resource_occ_get_unregister(devlink,
+                                        MLXSW_SP_RESOURCE_KVD_LINEAR);
        mlxsw_sp1_kvdl_parts_fini(kvdl);
 }
 
@@ -396,32 +396,32 @@ int mlxsw_sp1_kvdl_resources_register(struct mlxsw_core *mlxsw_core)
        devlink_resource_size_params_init(&size_params, 0, kvdl_max_size,
                                          MLXSW_SP1_KVDL_SINGLE_ALLOC_SIZE,
                                          DEVLINK_RESOURCE_UNIT_ENTRY);
-       err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_LINEAR_SINGLES,
-                                       MLXSW_SP1_KVDL_SINGLE_SIZE,
-                                       MLXSW_SP_RESOURCE_KVD_LINEAR_SINGLE,
-                                       MLXSW_SP_RESOURCE_KVD_LINEAR,
-                                       &size_params);
+       err = devl_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_LINEAR_SINGLES,
+                                    MLXSW_SP1_KVDL_SINGLE_SIZE,
+                                    MLXSW_SP_RESOURCE_KVD_LINEAR_SINGLE,
+                                    MLXSW_SP_RESOURCE_KVD_LINEAR,
+                                    &size_params);
        if (err)
                return err;
 
        devlink_resource_size_params_init(&size_params, 0, kvdl_max_size,
                                          MLXSW_SP1_KVDL_CHUNKS_ALLOC_SIZE,
                                          DEVLINK_RESOURCE_UNIT_ENTRY);
-       err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_LINEAR_CHUNKS,
-                                       MLXSW_SP1_KVDL_CHUNKS_SIZE,
-                                       MLXSW_SP_RESOURCE_KVD_LINEAR_CHUNKS,
-                                       MLXSW_SP_RESOURCE_KVD_LINEAR,
-                                       &size_params);
+       err = devl_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_LINEAR_CHUNKS,
+                                    MLXSW_SP1_KVDL_CHUNKS_SIZE,
+                                    MLXSW_SP_RESOURCE_KVD_LINEAR_CHUNKS,
+                                    MLXSW_SP_RESOURCE_KVD_LINEAR,
+                                    &size_params);
        if (err)
                return err;
 
        devlink_resource_size_params_init(&size_params, 0, kvdl_max_size,
                                          MLXSW_SP1_KVDL_LARGE_CHUNKS_ALLOC_SIZE,
                                          DEVLINK_RESOURCE_UNIT_ENTRY);
-       err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_LINEAR_LARGE_CHUNKS,
-                                       MLXSW_SP1_KVDL_LARGE_CHUNKS_SIZE,
-                                       MLXSW_SP_RESOURCE_KVD_LINEAR_LARGE_CHUNKS,
-                                       MLXSW_SP_RESOURCE_KVD_LINEAR,
-                                       &size_params);
+       err = devl_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_LINEAR_LARGE_CHUNKS,
+                                    MLXSW_SP1_KVDL_LARGE_CHUNKS_SIZE,
+                                    MLXSW_SP_RESOURCE_KVD_LINEAR_LARGE_CHUNKS,
+                                    MLXSW_SP_RESOURCE_KVD_LINEAR,
+                                    &size_params);
        return err;
 }
index c68fc8f7ca99e3b69eee5acd197ebd8c9f2010d8..c9f1c79f3f9d0751780013789cb29ff408556018 100644 (file)
@@ -1290,12 +1290,12 @@ int mlxsw_sp_buffers_init(struct mlxsw_sp *mlxsw_sp)
        if (err)
                goto err_sb_mms_init;
        mlxsw_sp_pool_count(mlxsw_sp, &ing_pool_count, &eg_pool_count);
-       err = devlink_sb_register(priv_to_devlink(mlxsw_sp->core), 0,
-                                 mlxsw_sp->sb->sb_size,
-                                 ing_pool_count,
-                                 eg_pool_count,
-                                 MLXSW_SP_SB_ING_TC_COUNT,
-                                 MLXSW_SP_SB_EG_TC_COUNT);
+       err = devl_sb_register(priv_to_devlink(mlxsw_sp->core), 0,
+                              mlxsw_sp->sb->sb_size,
+                              ing_pool_count,
+                              eg_pool_count,
+                              MLXSW_SP_SB_ING_TC_COUNT,
+                              MLXSW_SP_SB_EG_TC_COUNT);
        if (err)
                goto err_devlink_sb_register;
 
@@ -1314,7 +1314,7 @@ err_sb_ports_init:
 
 void mlxsw_sp_buffers_fini(struct mlxsw_sp *mlxsw_sp)
 {
-       devlink_sb_unregister(priv_to_devlink(mlxsw_sp->core), 0);
+       devl_sb_unregister(priv_to_devlink(mlxsw_sp->core), 0);
        mlxsw_sp_sb_ports_fini(mlxsw_sp);
        kfree(mlxsw_sp->sb);
 }
index fc2257753b9b39d2e9a97c06cf8df8b3230639a3..ee59c79156e45e04d0bc7b7bee22b6856223fe2a 100644 (file)
@@ -67,16 +67,16 @@ static int mlxsw_sp_counter_sub_pools_init(struct mlxsw_sp *mlxsw_sp)
                        return -EIO;
                sub_pool->entry_size = mlxsw_core_res_get(mlxsw_sp->core,
                                                          res_id);
-               err = devlink_resource_size_get(devlink,
-                                               sub_pool->resource_id,
-                                               &sub_pool->size);
+               err = devl_resource_size_get(devlink,
+                                            sub_pool->resource_id,
+                                            &sub_pool->size);
                if (err)
                        goto err_resource_size_get;
 
-               devlink_resource_occ_get_register(devlink,
-                                                 sub_pool->resource_id,
-                                                 mlxsw_sp_counter_sub_pool_occ_get,
-                                                 sub_pool);
+               devl_resource_occ_get_register(devlink,
+                                              sub_pool->resource_id,
+                                              mlxsw_sp_counter_sub_pool_occ_get,
+                                              sub_pool);
 
                sub_pool->base_index = base_index;
                base_index += sub_pool->size;
@@ -88,8 +88,8 @@ err_resource_size_get:
        for (i--; i >= 0; i--) {
                sub_pool = &pool->sub_pools[i];
 
-               devlink_resource_occ_get_unregister(devlink,
-                                                   sub_pool->resource_id);
+               devl_resource_occ_get_unregister(devlink,
+                                                sub_pool->resource_id);
        }
        return err;
 }
@@ -105,8 +105,8 @@ static void mlxsw_sp_counter_sub_pools_fini(struct mlxsw_sp *mlxsw_sp)
                sub_pool = &pool->sub_pools[i];
 
                WARN_ON(atomic_read(&sub_pool->active_entries_count));
-               devlink_resource_occ_get_unregister(devlink,
-                                                   sub_pool->resource_id);
+               devl_resource_occ_get_unregister(devlink,
+                                                sub_pool->resource_id);
        }
 }
 
@@ -135,12 +135,12 @@ int mlxsw_sp_counter_pool_init(struct mlxsw_sp *mlxsw_sp)
        spin_lock_init(&pool->counter_pool_lock);
        atomic_set(&pool->active_entries_count, 0);
 
-       err = devlink_resource_size_get(devlink, MLXSW_SP_RESOURCE_COUNTERS,
-                                       &pool->pool_size);
+       err = devl_resource_size_get(devlink, MLXSW_SP_RESOURCE_COUNTERS,
+                                    &pool->pool_size);
        if (err)
                goto err_pool_resource_size_get;
-       devlink_resource_occ_get_register(devlink, MLXSW_SP_RESOURCE_COUNTERS,
-                                         mlxsw_sp_counter_pool_occ_get, pool);
+       devl_resource_occ_get_register(devlink, MLXSW_SP_RESOURCE_COUNTERS,
+                                      mlxsw_sp_counter_pool_occ_get, pool);
 
        pool->usage = bitmap_zalloc(pool->pool_size, GFP_KERNEL);
        if (!pool->usage) {
@@ -157,8 +157,8 @@ int mlxsw_sp_counter_pool_init(struct mlxsw_sp *mlxsw_sp)
 err_sub_pools_init:
        bitmap_free(pool->usage);
 err_usage_alloc:
-       devlink_resource_occ_get_unregister(devlink,
-                                           MLXSW_SP_RESOURCE_COUNTERS);
+       devl_resource_occ_get_unregister(devlink,
+                                        MLXSW_SP_RESOURCE_COUNTERS);
 err_pool_resource_size_get:
        kfree(pool);
        return err;
@@ -174,8 +174,8 @@ void mlxsw_sp_counter_pool_fini(struct mlxsw_sp *mlxsw_sp)
                               pool->pool_size);
        WARN_ON(atomic_read(&pool->active_entries_count));
        bitmap_free(pool->usage);
-       devlink_resource_occ_get_unregister(devlink,
-                                           MLXSW_SP_RESOURCE_COUNTERS);
+       devl_resource_occ_get_unregister(devlink,
+                                        MLXSW_SP_RESOURCE_COUNTERS);
        kfree(pool);
 }
 
@@ -262,12 +262,12 @@ int mlxsw_sp_counter_resources_register(struct mlxsw_core *mlxsw_core)
        devlink_resource_size_params_init(&size_params, pool_size,
                                          pool_size, bank_size,
                                          DEVLINK_RESOURCE_UNIT_ENTRY);
-       err = devlink_resource_register(devlink,
-                                       MLXSW_SP_RESOURCE_NAME_COUNTERS,
-                                       pool_size,
-                                       MLXSW_SP_RESOURCE_COUNTERS,
-                                       DEVLINK_RESOURCE_ID_PARENT_TOP,
-                                       &size_params);
+       err = devl_resource_register(devlink,
+                                    MLXSW_SP_RESOURCE_NAME_COUNTERS,
+                                    pool_size,
+                                    MLXSW_SP_RESOURCE_COUNTERS,
+                                    DEVLINK_RESOURCE_ID_PARENT_TOP,
+                                    &size_params);
        if (err)
                return err;
 
@@ -287,12 +287,12 @@ int mlxsw_sp_counter_resources_register(struct mlxsw_core *mlxsw_core)
                devlink_resource_size_params_init(&size_params, sub_pool_size,
                                                  sub_pool_size, bank_size,
                                                  DEVLINK_RESOURCE_UNIT_ENTRY);
-               err = devlink_resource_register(devlink,
-                                               sub_pool->resource_name,
-                                               sub_pool_size,
-                                               sub_pool->resource_id,
-                                               MLXSW_SP_RESOURCE_COUNTERS,
-                                               &size_params);
+               err = devl_resource_register(devlink,
+                                            sub_pool->resource_name,
+                                            sub_pool_size,
+                                            sub_pool->resource_id,
+                                            MLXSW_SP_RESOURCE_COUNTERS,
+                                            &size_params);
                if (err)
                        return err;
                total_bank_config += sub_pool->bank_count;
index c2540292702d8f5e834d5434c37fb49032e2c3ed..5416093c0e35805c80f5d0aeb6032fbf181578d0 100644 (file)
@@ -295,17 +295,17 @@ static int mlxsw_sp_dpipe_erif_table_init(struct mlxsw_sp *mlxsw_sp)
 {
        struct devlink *devlink = priv_to_devlink(mlxsw_sp->core);
 
-       return devlink_dpipe_table_register(devlink,
-                                           MLXSW_SP_DPIPE_TABLE_NAME_ERIF,
-                                           &mlxsw_sp_erif_ops,
-                                           mlxsw_sp, false);
+       return devl_dpipe_table_register(devlink,
+                                        MLXSW_SP_DPIPE_TABLE_NAME_ERIF,
+                                        &mlxsw_sp_erif_ops,
+                                        mlxsw_sp, false);
 }
 
 static void mlxsw_sp_dpipe_erif_table_fini(struct mlxsw_sp *mlxsw_sp)
 {
        struct devlink *devlink = priv_to_devlink(mlxsw_sp->core);
 
-       devlink_dpipe_table_unregister(devlink, MLXSW_SP_DPIPE_TABLE_NAME_ERIF);
+       devl_dpipe_table_unregister(devlink, MLXSW_SP_DPIPE_TABLE_NAME_ERIF);
 }
 
 static int mlxsw_sp_dpipe_table_host_matches_dump(struct sk_buff *skb, int type)
@@ -749,25 +749,25 @@ static int mlxsw_sp_dpipe_host4_table_init(struct mlxsw_sp *mlxsw_sp)
        struct devlink *devlink = priv_to_devlink(mlxsw_sp->core);
        int err;
 
-       err = devlink_dpipe_table_register(devlink,
-                                          MLXSW_SP_DPIPE_TABLE_NAME_HOST4,
-                                          &mlxsw_sp_host4_ops,
-                                          mlxsw_sp, false);
+       err = devl_dpipe_table_register(devlink,
+                                       MLXSW_SP_DPIPE_TABLE_NAME_HOST4,
+                                       &mlxsw_sp_host4_ops,
+                                       mlxsw_sp, false);
        if (err)
                return err;
 
-       err = devlink_dpipe_table_resource_set(devlink,
-                                              MLXSW_SP_DPIPE_TABLE_NAME_HOST4,
-                                              MLXSW_SP_RESOURCE_KVD_HASH_SINGLE,
-                                              MLXSW_SP_DPIPE_TABLE_RESOURCE_UNIT_HOST4);
+       err = devl_dpipe_table_resource_set(devlink,
+                                           MLXSW_SP_DPIPE_TABLE_NAME_HOST4,
+                                           MLXSW_SP_RESOURCE_KVD_HASH_SINGLE,
+                                           MLXSW_SP_DPIPE_TABLE_RESOURCE_UNIT_HOST4);
        if (err)
                goto err_resource_set;
 
        return 0;
 
 err_resource_set:
-       devlink_dpipe_table_unregister(devlink,
-                                      MLXSW_SP_DPIPE_TABLE_NAME_HOST4);
+       devl_dpipe_table_unregister(devlink,
+                                   MLXSW_SP_DPIPE_TABLE_NAME_HOST4);
        return err;
 }
 
@@ -775,8 +775,8 @@ static void mlxsw_sp_dpipe_host4_table_fini(struct mlxsw_sp *mlxsw_sp)
 {
        struct devlink *devlink = priv_to_devlink(mlxsw_sp->core);
 
-       devlink_dpipe_table_unregister(devlink,
-                                      MLXSW_SP_DPIPE_TABLE_NAME_HOST4);
+       devl_dpipe_table_unregister(devlink,
+                                   MLXSW_SP_DPIPE_TABLE_NAME_HOST4);
 }
 
 static int
@@ -826,25 +826,25 @@ static int mlxsw_sp_dpipe_host6_table_init(struct mlxsw_sp *mlxsw_sp)
        struct devlink *devlink = priv_to_devlink(mlxsw_sp->core);
        int err;
 
-       err = devlink_dpipe_table_register(devlink,
-                                          MLXSW_SP_DPIPE_TABLE_NAME_HOST6,
-                                          &mlxsw_sp_host6_ops,
-                                          mlxsw_sp, false);
+       err = devl_dpipe_table_register(devlink,
+                                       MLXSW_SP_DPIPE_TABLE_NAME_HOST6,
+                                       &mlxsw_sp_host6_ops,
+                                       mlxsw_sp, false);
        if (err)
                return err;
 
-       err = devlink_dpipe_table_resource_set(devlink,
-                                              MLXSW_SP_DPIPE_TABLE_NAME_HOST6,
-                                              MLXSW_SP_RESOURCE_KVD_HASH_DOUBLE,
-                                              MLXSW_SP_DPIPE_TABLE_RESOURCE_UNIT_HOST6);
+       err = devl_dpipe_table_resource_set(devlink,
+                                           MLXSW_SP_DPIPE_TABLE_NAME_HOST6,
+                                           MLXSW_SP_RESOURCE_KVD_HASH_DOUBLE,
+                                           MLXSW_SP_DPIPE_TABLE_RESOURCE_UNIT_HOST6);
        if (err)
                goto err_resource_set;
 
        return 0;
 
 err_resource_set:
-       devlink_dpipe_table_unregister(devlink,
-                                      MLXSW_SP_DPIPE_TABLE_NAME_HOST6);
+       devl_dpipe_table_unregister(devlink,
+                                   MLXSW_SP_DPIPE_TABLE_NAME_HOST6);
        return err;
 }
 
@@ -852,8 +852,8 @@ static void mlxsw_sp_dpipe_host6_table_fini(struct mlxsw_sp *mlxsw_sp)
 {
        struct devlink *devlink = priv_to_devlink(mlxsw_sp->core);
 
-       devlink_dpipe_table_unregister(devlink,
-                                      MLXSW_SP_DPIPE_TABLE_NAME_HOST6);
+       devl_dpipe_table_unregister(devlink,
+                                   MLXSW_SP_DPIPE_TABLE_NAME_HOST6);
 }
 
 static int mlxsw_sp_dpipe_table_adj_matches_dump(void *priv,
@@ -1231,25 +1231,25 @@ static int mlxsw_sp_dpipe_adj_table_init(struct mlxsw_sp *mlxsw_sp)
        struct devlink *devlink = priv_to_devlink(mlxsw_sp->core);
        int err;
 
-       err = devlink_dpipe_table_register(devlink,
-                                          MLXSW_SP_DPIPE_TABLE_NAME_ADJ,
-                                          &mlxsw_sp_dpipe_table_adj_ops,
-                                          mlxsw_sp, false);
+       err = devl_dpipe_table_register(devlink,
+                                       MLXSW_SP_DPIPE_TABLE_NAME_ADJ,
+                                       &mlxsw_sp_dpipe_table_adj_ops,
+                                       mlxsw_sp, false);
        if (err)
                return err;
 
-       err = devlink_dpipe_table_resource_set(devlink,
-                                              MLXSW_SP_DPIPE_TABLE_NAME_ADJ,
-                                              MLXSW_SP_RESOURCE_KVD_LINEAR,
-                                              MLXSW_SP_DPIPE_TABLE_RESOURCE_UNIT_ADJ);
+       err = devl_dpipe_table_resource_set(devlink,
+                                           MLXSW_SP_DPIPE_TABLE_NAME_ADJ,
+                                           MLXSW_SP_RESOURCE_KVD_LINEAR,
+                                           MLXSW_SP_DPIPE_TABLE_RESOURCE_UNIT_ADJ);
        if (err)
                goto err_resource_set;
 
        return 0;
 
 err_resource_set:
-       devlink_dpipe_table_unregister(devlink,
-                                      MLXSW_SP_DPIPE_TABLE_NAME_ADJ);
+       devl_dpipe_table_unregister(devlink,
+                                   MLXSW_SP_DPIPE_TABLE_NAME_ADJ);
        return err;
 }
 
@@ -1257,8 +1257,8 @@ static void mlxsw_sp_dpipe_adj_table_fini(struct mlxsw_sp *mlxsw_sp)
 {
        struct devlink *devlink = priv_to_devlink(mlxsw_sp->core);
 
-       devlink_dpipe_table_unregister(devlink,
-                                      MLXSW_SP_DPIPE_TABLE_NAME_ADJ);
+       devl_dpipe_table_unregister(devlink,
+                                   MLXSW_SP_DPIPE_TABLE_NAME_ADJ);
 }
 
 int mlxsw_sp_dpipe_init(struct mlxsw_sp *mlxsw_sp)
@@ -1266,7 +1266,7 @@ int mlxsw_sp_dpipe_init(struct mlxsw_sp *mlxsw_sp)
        struct devlink *devlink = priv_to_devlink(mlxsw_sp->core);
        int err;
 
-       devlink_dpipe_headers_register(devlink, &mlxsw_sp_dpipe_headers);
+       devl_dpipe_headers_register(devlink, &mlxsw_sp_dpipe_headers);
 
        err = mlxsw_sp_dpipe_erif_table_init(mlxsw_sp);
        if (err)
@@ -1292,7 +1292,7 @@ err_host6_table_init:
 err_host4_table_init:
        mlxsw_sp_dpipe_erif_table_fini(mlxsw_sp);
 err_erif_table_init:
-       devlink_dpipe_headers_unregister(priv_to_devlink(mlxsw_sp->core));
+       devl_dpipe_headers_unregister(priv_to_devlink(mlxsw_sp->core));
        return err;
 }
 
@@ -1304,5 +1304,5 @@ void mlxsw_sp_dpipe_fini(struct mlxsw_sp *mlxsw_sp)
        mlxsw_sp_dpipe_host6_table_fini(mlxsw_sp);
        mlxsw_sp_dpipe_host4_table_fini(mlxsw_sp);
        mlxsw_sp_dpipe_erif_table_fini(mlxsw_sp);
-       devlink_dpipe_headers_unregister(devlink);
+       devl_dpipe_headers_unregister(devlink);
 }
index 39052e5c12fd5fd22b6b34fe5209ee36f3a7ccd5..22ebb207ce4d3a132171e297c4abf790b32c0eac 100644 (file)
@@ -94,10 +94,10 @@ mlxsw_sp_policer_single_rate_family_init(struct mlxsw_sp_policer_family *family)
 
        atomic_set(&family->policers_count, 0);
        devlink = priv_to_devlink(core);
-       devlink_resource_occ_get_register(devlink,
-                                         MLXSW_SP_RESOURCE_SINGLE_RATE_POLICERS,
-                                         mlxsw_sp_policer_single_rate_occ_get,
-                                         family);
+       devl_resource_occ_get_register(devlink,
+                                      MLXSW_SP_RESOURCE_SINGLE_RATE_POLICERS,
+                                      mlxsw_sp_policer_single_rate_occ_get,
+                                      family);
 
        return 0;
 }
@@ -107,8 +107,8 @@ mlxsw_sp_policer_single_rate_family_fini(struct mlxsw_sp_policer_family *family)
 {
        struct devlink *devlink = priv_to_devlink(family->mlxsw_sp->core);
 
-       devlink_resource_occ_get_unregister(devlink,
-                                           MLXSW_SP_RESOURCE_SINGLE_RATE_POLICERS);
+       devl_resource_occ_get_unregister(devlink,
+                                        MLXSW_SP_RESOURCE_SINGLE_RATE_POLICERS);
        WARN_ON(atomic_read(&family->policers_count) != 0);
 }
 
@@ -419,22 +419,22 @@ int mlxsw_sp_policer_resources_register(struct mlxsw_core *mlxsw_core)
        devlink_resource_size_params_init(&size_params, global_policers,
                                          global_policers, 1,
                                          DEVLINK_RESOURCE_UNIT_ENTRY);
-       err = devlink_resource_register(devlink, "global_policers",
-                                       global_policers,
-                                       MLXSW_SP_RESOURCE_GLOBAL_POLICERS,
-                                       DEVLINK_RESOURCE_ID_PARENT_TOP,
-                                       &size_params);
+       err = devl_resource_register(devlink, "global_policers",
+                                    global_policers,
+                                    MLXSW_SP_RESOURCE_GLOBAL_POLICERS,
+                                    DEVLINK_RESOURCE_ID_PARENT_TOP,
+                                    &size_params);
        if (err)
                return err;
 
        devlink_resource_size_params_init(&size_params, single_rate_policers,
                                          single_rate_policers, 1,
                                          DEVLINK_RESOURCE_UNIT_ENTRY);
-       err = devlink_resource_register(devlink, "single_rate_policers",
-                                       single_rate_policers,
-                                       MLXSW_SP_RESOURCE_SINGLE_RATE_POLICERS,
-                                       MLXSW_SP_RESOURCE_GLOBAL_POLICERS,
-                                       &size_params);
+       err = devl_resource_register(devlink, "single_rate_policers",
+                                    single_rate_policers,
+                                    MLXSW_SP_RESOURCE_SINGLE_RATE_POLICERS,
+                                    MLXSW_SP_RESOURCE_GLOBAL_POLICERS,
+                                    &size_params);
        if (err)
                return err;
 
index 09009e80cd71690d5c92a44adb7c637ee3ed6def..23d526f13f1c53c2f75607bdde47218373796d1a 100644 (file)
@@ -9962,14 +9962,14 @@ static int mlxsw_sp_rifs_init(struct mlxsw_sp *mlxsw_sp)
        idr_init(&mlxsw_sp->router->rif_mac_profiles_idr);
        atomic_set(&mlxsw_sp->router->rif_mac_profiles_count, 0);
        atomic_set(&mlxsw_sp->router->rifs_count, 0);
-       devlink_resource_occ_get_register(devlink,
-                                         MLXSW_SP_RESOURCE_RIF_MAC_PROFILES,
-                                         mlxsw_sp_rif_mac_profiles_occ_get,
-                                         mlxsw_sp);
-       devlink_resource_occ_get_register(devlink,
-                                         MLXSW_SP_RESOURCE_RIFS,
-                                         mlxsw_sp_rifs_occ_get,
-                                         mlxsw_sp);
+       devl_resource_occ_get_register(devlink,
+                                      MLXSW_SP_RESOURCE_RIF_MAC_PROFILES,
+                                      mlxsw_sp_rif_mac_profiles_occ_get,
+                                      mlxsw_sp);
+       devl_resource_occ_get_register(devlink,
+                                      MLXSW_SP_RESOURCE_RIFS,
+                                      mlxsw_sp_rifs_occ_get,
+                                      mlxsw_sp);
 
        return 0;
 }
@@ -9983,9 +9983,9 @@ static void mlxsw_sp_rifs_fini(struct mlxsw_sp *mlxsw_sp)
        for (i = 0; i < MLXSW_CORE_RES_GET(mlxsw_sp->core, MAX_RIFS); i++)
                WARN_ON_ONCE(mlxsw_sp->router->rifs[i]);
 
-       devlink_resource_occ_get_unregister(devlink, MLXSW_SP_RESOURCE_RIFS);
-       devlink_resource_occ_get_unregister(devlink,
-                                           MLXSW_SP_RESOURCE_RIF_MAC_PROFILES);
+       devl_resource_occ_get_unregister(devlink, MLXSW_SP_RESOURCE_RIFS);
+       devl_resource_occ_get_unregister(devlink,
+                                        MLXSW_SP_RESOURCE_RIF_MAC_PROFILES);
        WARN_ON(!idr_is_empty(&mlxsw_sp->router->rif_mac_profiles_idr));
        idr_destroy(&mlxsw_sp->router->rif_mac_profiles_idr);
        kfree(mlxsw_sp->router->rifs);
index fe663b0ab7086a807f752ecbf98eb7b19bada5b6..39904dacf4f0d6cec38acb49c16caa1314d1a857 100644 (file)
@@ -106,8 +106,8 @@ int mlxsw_sp_span_init(struct mlxsw_sp *mlxsw_sp)
        if (err)
                goto err_init;
 
-       devlink_resource_occ_get_register(devlink, MLXSW_SP_RESOURCE_SPAN,
-                                         mlxsw_sp_span_occ_get, mlxsw_sp);
+       devl_resource_occ_get_register(devlink, MLXSW_SP_RESOURCE_SPAN,
+                                      mlxsw_sp_span_occ_get, mlxsw_sp);
        INIT_WORK(&span->work, mlxsw_sp_span_respin_work);
 
        return 0;
@@ -123,7 +123,7 @@ void mlxsw_sp_span_fini(struct mlxsw_sp *mlxsw_sp)
        struct devlink *devlink = priv_to_devlink(mlxsw_sp->core);
 
        cancel_work_sync(&mlxsw_sp->span->work);
-       devlink_resource_occ_get_unregister(devlink, MLXSW_SP_RESOURCE_SPAN);
+       devl_resource_occ_get_unregister(devlink, MLXSW_SP_RESOURCE_SPAN);
 
        WARN_ON_ONCE(!list_empty(&mlxsw_sp->span->trigger_entries_list));
        WARN_ON_ONCE(!list_empty(&mlxsw_sp->span->analyzed_ports_list));
index d0baba38d2a3ef4fa52ba86fc534783f28884253..f4bfdb6dab9c7961905a621a3c76db6c4395c781 100644 (file)
@@ -1298,8 +1298,8 @@ static int mlxsw_sp_trap_policers_init(struct mlxsw_sp *mlxsw_sp)
 
        for (i = 0; i < trap->policers_count; i++) {
                policer_item = &trap->policer_items_arr[i];
-               err = devlink_trap_policers_register(devlink,
-                                                    &policer_item->policer, 1);
+               err = devl_trap_policers_register(devlink,
+                                                 &policer_item->policer, 1);
                if (err)
                        goto err_trap_policer_register;
        }
@@ -1309,8 +1309,8 @@ static int mlxsw_sp_trap_policers_init(struct mlxsw_sp *mlxsw_sp)
 err_trap_policer_register:
        for (i--; i >= 0; i--) {
                policer_item = &trap->policer_items_arr[i];
-               devlink_trap_policers_unregister(devlink,
-                                                &policer_item->policer, 1);
+               devl_trap_policers_unregister(devlink,
+                                             &policer_item->policer, 1);
        }
        mlxsw_sp_trap_policer_items_arr_fini(mlxsw_sp);
        return err;
@@ -1325,8 +1325,8 @@ static void mlxsw_sp_trap_policers_fini(struct mlxsw_sp *mlxsw_sp)
 
        for (i = trap->policers_count - 1; i >= 0; i--) {
                policer_item = &trap->policer_items_arr[i];
-               devlink_trap_policers_unregister(devlink,
-                                                &policer_item->policer, 1);
+               devl_trap_policers_unregister(devlink,
+                                             &policer_item->policer, 1);
        }
        mlxsw_sp_trap_policer_items_arr_fini(mlxsw_sp);
 }
@@ -1381,8 +1381,7 @@ static int mlxsw_sp_trap_groups_init(struct mlxsw_sp *mlxsw_sp)
 
        for (i = 0; i < trap->groups_count; i++) {
                group_item = &trap->group_items_arr[i];
-               err = devlink_trap_groups_register(devlink, &group_item->group,
-                                                  1);
+               err = devl_trap_groups_register(devlink, &group_item->group, 1);
                if (err)
                        goto err_trap_group_register;
        }
@@ -1392,7 +1391,7 @@ static int mlxsw_sp_trap_groups_init(struct mlxsw_sp *mlxsw_sp)
 err_trap_group_register:
        for (i--; i >= 0; i--) {
                group_item = &trap->group_items_arr[i];
-               devlink_trap_groups_unregister(devlink, &group_item->group, 1);
+               devl_trap_groups_unregister(devlink, &group_item->group, 1);
        }
        mlxsw_sp_trap_group_items_arr_fini(mlxsw_sp);
        return err;
@@ -1408,7 +1407,7 @@ static void mlxsw_sp_trap_groups_fini(struct mlxsw_sp *mlxsw_sp)
                const struct mlxsw_sp_trap_group_item *group_item;
 
                group_item = &trap->group_items_arr[i];
-               devlink_trap_groups_unregister(devlink, &group_item->group, 1);
+               devl_trap_groups_unregister(devlink, &group_item->group, 1);
        }
        mlxsw_sp_trap_group_items_arr_fini(mlxsw_sp);
 }
@@ -1469,8 +1468,8 @@ static int mlxsw_sp_traps_init(struct mlxsw_sp *mlxsw_sp)
 
        for (i = 0; i < trap->traps_count; i++) {
                trap_item = &trap->trap_items_arr[i];
-               err = devlink_traps_register(devlink, &trap_item->trap, 1,
-                                            mlxsw_sp);
+               err = devl_traps_register(devlink, &trap_item->trap, 1,
+                                         mlxsw_sp);
                if (err)
                        goto err_trap_register;
        }
@@ -1480,7 +1479,7 @@ static int mlxsw_sp_traps_init(struct mlxsw_sp *mlxsw_sp)
 err_trap_register:
        for (i--; i >= 0; i--) {
                trap_item = &trap->trap_items_arr[i];
-               devlink_traps_unregister(devlink, &trap_item->trap, 1);
+               devl_traps_unregister(devlink, &trap_item->trap, 1);
        }
        mlxsw_sp_trap_items_arr_fini(mlxsw_sp);
        return err;
@@ -1496,7 +1495,7 @@ static void mlxsw_sp_traps_fini(struct mlxsw_sp *mlxsw_sp)
                const struct mlxsw_sp_trap_item *trap_item;
 
                trap_item = &trap->trap_items_arr[i];
-               devlink_traps_unregister(devlink, &trap_item->trap, 1);
+               devl_traps_unregister(devlink, &trap_item->trap, 1);
        }
        mlxsw_sp_trap_items_arr_fini(mlxsw_sp);
 }