From: liuzhongzhu <liuzhong...@huawei.com>

When updating the available MAC VLAN table counts,
MAC VLAN table entry count function adds
operation 0 value protection measures.

Signed-off-by: liuzhongzhu <liuzhong...@huawei.com>
Signed-off-by: Peng Li <lipeng...@huawei.com>
Signed-off-by: Huazhong Tan <tanhuazh...@huawei.com>
---
 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 
b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
index f55835dee5c7..0a64c7f2dc6c 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
@@ -5830,9 +5830,12 @@ static void hclge_update_umv_space(struct hclge_vport 
*vport, bool is_free)
        if (is_free) {
                if (vport->used_umv_num > hdev->priv_umv_size)
                        hdev->share_umv_size++;
-               vport->used_umv_num--;
+
+               if (vport->used_umv_num > 0)
+                       vport->used_umv_num--;
        } else {
-               if (vport->used_umv_num >= hdev->priv_umv_size)
+               if (vport->used_umv_num >= hdev->priv_umv_size &&
+                   hdev->share_umv_size > 0)
                        hdev->share_umv_size--;
                vport->used_umv_num++;
        }
-- 
2.20.1


Reply via email to