devlink: Remove eswitch mode check for mode set call
authorDmytro Linkin <dlinkin@nvidia.com>
Wed, 23 Jun 2021 13:43:14 +0000 (16:43 +0300)
committerDavid S. Miller <davem@davemloft.net>
Wed, 23 Jun 2021 22:46:25 +0000 (15:46 -0700)
When eswitch is disabled, querying its current mode results in error.
Due to this when trying to set the eswitch mode for mlx5 devices, it
fails to set the eswitch switchdev mode.
Hence remove such check.

Fixes: a8ecb93ef03d ("devlink: Introduce rate nodes")
Signed-off-by: Dmytro Linkin <dlinkin@nvidia.com>
Reviewed-by: Parav Pandit <parav@nvidia.com>
Reviewed-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/devlink.c

index ba27395..153d432 100644 (file)
@@ -2709,17 +2709,6 @@ static int devlink_rate_nodes_check(struct devlink *devlink, u16 mode,
                                    struct netlink_ext_ack *extack)
 {
        struct devlink_rate *devlink_rate;
-       u16 old_mode;
-       int err;
-
-       if (!devlink->ops->eswitch_mode_get)
-               return -EOPNOTSUPP;
-       err = devlink->ops->eswitch_mode_get(devlink, &old_mode);
-       if (err)
-               return err;
-
-       if (old_mode == mode)
-               return 0;
 
        list_for_each_entry(devlink_rate, &devlink->rate_list, list)
                if (devlink_rate_is_node(devlink_rate)) {