OSDN Git Service

net: hns3: return 0 and print warning when hit duplicate MAC
authorPeng Li <lipeng321@huawei.com>
Thu, 4 Apr 2019 08:17:51 +0000 (16:17 +0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 4 Apr 2019 17:20:38 +0000 (10:20 -0700)
When set 2 same MAC to different function of one port, IMP
will return error as the later one may modify the origin one.
This will cause bond fail for 2 VFs of one port.

Driver just print warning and return 0 with this patch, so
if set same MAC address, it will return 0 but do not really
configure HW.

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

index e742a05..f51e4c0 100644 (file)
@@ -5962,8 +5962,11 @@ int hclge_add_uc_addr_common(struct hclge_vport *vport,
        }
 
        /* check if we just hit the duplicate */
-       if (!ret)
-               ret = -EINVAL;
+       if (!ret) {
+               dev_warn(&hdev->pdev->dev, "VF %d mac(%pM) exists\n",
+                        vport->vport_id, addr);
+               return 0;
+       }
 
        dev_err(&hdev->pdev->dev,
                "PF failed to add unicast entry(%pM) in the MAC table\n",