devlink: Remove top_hierarchy arg to devlink_resource_register
authorDavid Ahern <dsahern@gmail.com>
Wed, 21 Mar 2018 02:31:14 +0000 (19:31 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 22 Mar 2018 17:08:41 +0000 (13:08 -0400)
top_hierarchy arg can be determined by comparing parent_resource_id to
DEVLINK_RESOURCE_ID_PARENT_TOP so it does not need to be a separate
argument.

Signed-off-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlxsw/spectrum.c
drivers/net/ethernet/mellanox/mlxsw/spectrum_kvdl.c
include/net/devlink.h
net/core/devlink.c

index a120602..83886a9 100644 (file)
@@ -3876,8 +3876,7 @@ static int mlxsw_sp_resources_register(struct mlxsw_core *mlxsw_core)
 
        kvd_size = MLXSW_CORE_RES_GET(mlxsw_core, KVD_SIZE);
        err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD,
-                                       true, kvd_size,
-                                       MLXSW_SP_RESOURCE_KVD,
+                                       kvd_size, MLXSW_SP_RESOURCE_KVD,
                                        DEVLINK_RESOURCE_ID_PARENT_TOP,
                                        &kvd_size_params,
                                        NULL);
@@ -3886,7 +3885,7 @@ static int mlxsw_sp_resources_register(struct mlxsw_core *mlxsw_core)
 
        linear_size = profile->kvd_linear_size;
        err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_LINEAR,
-                                       false, linear_size,
+                                       linear_size,
                                        MLXSW_SP_RESOURCE_KVD_LINEAR,
                                        MLXSW_SP_RESOURCE_KVD,
                                        &linear_size_params,
@@ -3904,7 +3903,7 @@ static int mlxsw_sp_resources_register(struct mlxsw_core *mlxsw_core)
                       profile->kvd_hash_single_parts;
        double_size = rounddown(double_size, profile->kvd_hash_granularity);
        err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_HASH_DOUBLE,
-                                       false, double_size,
+                                       double_size,
                                        MLXSW_SP_RESOURCE_KVD_HASH_DOUBLE,
                                        MLXSW_SP_RESOURCE_KVD,
                                        &hash_double_size_params,
@@ -3914,7 +3913,7 @@ static int mlxsw_sp_resources_register(struct mlxsw_core *mlxsw_core)
 
        single_size = kvd_size - double_size - linear_size;
        err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_HASH_SINGLE,
-                                       false, single_size,
+                                       single_size,
                                        MLXSW_SP_RESOURCE_KVD_HASH_SINGLE,
                                        MLXSW_SP_RESOURCE_KVD,
                                        &hash_single_size_params,
index 4c9bff2..85503e9 100644 (file)
@@ -459,7 +459,7 @@ int mlxsw_sp_kvdl_resources_register(struct devlink *devlink)
 
        mlxsw_sp_kvdl_resource_size_params_prepare(devlink);
        err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_LINEAR_SINGLES,
-                                       false, MLXSW_SP_KVDL_SINGLE_SIZE,
+                                       MLXSW_SP_KVDL_SINGLE_SIZE,
                                        MLXSW_SP_RESOURCE_KVD_LINEAR_SINGLE,
                                        MLXSW_SP_RESOURCE_KVD_LINEAR,
                                        &mlxsw_sp_kvdl_single_size_params,
@@ -468,7 +468,7 @@ int mlxsw_sp_kvdl_resources_register(struct devlink *devlink)
                return err;
 
        err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_LINEAR_CHUNKS,
-                                       false, MLXSW_SP_KVDL_CHUNKS_SIZE,
+                                       MLXSW_SP_KVDL_CHUNKS_SIZE,
                                        MLXSW_SP_RESOURCE_KVD_LINEAR_CHUNKS,
                                        MLXSW_SP_RESOURCE_KVD_LINEAR,
                                        &mlxsw_sp_kvdl_chunks_size_params,
@@ -477,7 +477,7 @@ int mlxsw_sp_kvdl_resources_register(struct devlink *devlink)
                return err;
 
        err = devlink_resource_register(devlink, MLXSW_SP_RESOURCE_NAME_KVD_LINEAR_LARGE_CHUNKS,
-                                       false, MLXSW_SP_KVDL_LARGE_CHUNKS_SIZE,
+                                       MLXSW_SP_KVDL_LARGE_CHUNKS_SIZE,
                                        MLXSW_SP_RESOURCE_KVD_LINEAR_LARGE_CHUNKS,
                                        MLXSW_SP_RESOURCE_KVD_LINEAR,
                                        &mlxsw_sp_kvdl_large_chunks_size_params,
index c83125a..d5b7073 100644 (file)
@@ -406,7 +406,6 @@ extern struct devlink_dpipe_header devlink_dpipe_header_ipv6;
 
 int devlink_resource_register(struct devlink *devlink,
                              const char *resource_name,
-                             bool top_hierarchy,
                              u64 resource_size,
                              u64 resource_id,
                              u64 parent_resource_id,
index f23e5ed..d03b96f 100644 (file)
@@ -3174,7 +3174,6 @@ EXPORT_SYMBOL_GPL(devlink_dpipe_table_unregister);
  */
 int devlink_resource_register(struct devlink *devlink,
                              const char *resource_name,
-                             bool top_hierarchy,
                              u64 resource_size,
                              u64 resource_id,
                              u64 parent_resource_id,
@@ -3183,8 +3182,11 @@ int devlink_resource_register(struct devlink *devlink,
 {
        struct devlink_resource *resource;
        struct list_head *resource_list;
+       bool top_hierarchy;
        int err = 0;
 
+       top_hierarchy = parent_resource_id == DEVLINK_RESOURCE_ID_PARENT_TOP;
+
        mutex_lock(&devlink->lock);
        resource = devlink_resource_find(devlink, NULL, resource_id);
        if (resource) {