net: hns3: modify parameter checks in the hns3_set_channels
authorHuazhong Tan <tanhuazhong@huawei.com>
Fri, 18 Jan 2019 08:13:08 +0000 (16:13 +0800)
committerDavid S. Miller <davem@davemloft.net>
Fri, 18 Jan 2019 23:10:21 +0000 (15:10 -0800)
The number of queues for each enabled TC should range from 1 to
the maximum available value, and return directly if the value
is same as the current one.

Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com>
Signed-off-by: Yunsheng Lin <linyunsheng@huawei.com>
Signed-off-by: Peng Li <lipeng321@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c

index 0cd70d7667be0c264a01646859020fd45d25b7c7..0bda9bd8ecc1d5f270126e51bc0fa8bb5ab38f80 100644 (file)
@@ -4157,15 +4157,14 @@ int hns3_set_channels(struct net_device *netdev,
                return -EINVAL;
 
        if (new_tqp_num > hns3_get_max_available_channels(h) ||
-           new_tqp_num < kinfo->num_tc) {
+           new_tqp_num < 1) {
                dev_err(&netdev->dev,
-                       "Change tqps fail, the tqp range is from %d to %d",
-                       kinfo->num_tc,
+                       "Change tqps fail, the tqp range is from 1 to %d",
                        hns3_get_max_available_channels(h));
                return -EINVAL;
        }
 
-       if (kinfo->num_tqps == new_tqp_num)
+       if (kinfo->rss_size == new_tqp_num)
                return 0;
 
        ret = hns3_reset_notify(h, HNAE3_DOWN_CLIENT);