summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuangbin Huang <huangguangbin2@huawei.com>2021-09-29 17:35:54 +0800
committerDavid S. Miller <davem@davemloft.net>2021-09-29 11:03:54 +0100
commit276e60421668d019dc655973b1832ea354c0f36c (patch)
tree2bbe31dd59a9a458fa6ea0f3141b30d5556a3345
parent108b3c7810e14892c4a1819b1d268a2c785c087c (diff)
downloadlinux-stable-276e60421668d019dc655973b1832ea354c0f36c.tar.gz
linux-stable-276e60421668d019dc655973b1832ea354c0f36c.tar.bz2
linux-stable-276e60421668d019dc655973b1832ea354c0f36c.zip
net: hns3: PF enable promisc for VF when mac table is overflow
If unicast mac address table is full, and user add a new mac address, the unicast promisc needs to be enabled for the new unicast mac address can be used. So does the multicast promisc. Now this feature has been implemented for PF, and VF should be implemented too. When the mac table of VF is overflow, PF will enable promisc for this VF. Fixes: 1e6e76101fd9 ("net: hns3: configure promisc mode for VF asynchronously") Signed-off-by: Guangbin Huang <huangguangbin2@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c8
1 files changed, 6 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 3391244d9d3d..f5b8d1fee0f1 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
@@ -12796,8 +12796,12 @@ static void hclge_sync_promisc_mode(struct hclge_dev *hdev)
continue;
if (vport->vf_info.trusted) {
- uc_en = vport->vf_info.request_uc_en > 0;
- mc_en = vport->vf_info.request_mc_en > 0;
+ uc_en = vport->vf_info.request_uc_en > 0 ||
+ vport->overflow_promisc_flags &
+ HNAE3_OVERFLOW_UPE;
+ mc_en = vport->vf_info.request_mc_en > 0 ||
+ vport->overflow_promisc_flags &
+ HNAE3_OVERFLOW_MPE;
}
bc_en = vport->vf_info.request_bc_en > 0;