From: Xue <xuechaojing(a)huawei.com>
commit 2db79a68773b369a2e04a6c2fb3bcb2db6fbda08 openEuler-1.0
driver inclusion
category:bugfix
bugzilla:4472
CVE:NA
-----------------------------------------------------------------------
When the ip link set is configured with the vlan vlan for the first time,
the default initial vlan id is 0. When the vlan is deleted, the new vlan id is 0.
The non-zero judgment is made when the interface is invoked, resulting in the
vlan id being 0. Returns an illegal value directly. This patch fix this bug.
Reviewed-by: Guan Xiaodong <guanxiaodong(a)huawei.com>
Signed-off-by: Xue <xuechaojing(a)huawei.com>
Reviewed-by: Yang Yingliang <yangyingliang(a)huawei.com>
Signed-off-by: Yang Yingliang <yangyingliang(a)huawei.com>
Signed-off-by: Xin Hao <haoxing990(a)gmail.com>
---
drivers/net/ethernet/huawei/hinic/hinic_main.c | 2 --
drivers/net/ethernet/huawei/hinic/hinic_nic_cfg.c | 2 +-
2 files changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_main.c
b/drivers/net/ethernet/huawei/hinic/hinic_main.c
index a2238b97ccef..a4c9b06a808f 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_main.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_main.c
@@ -460,8 +460,6 @@ int hinic_poll(struct napi_struct *napi, int budget)
HINIC_MSIX_ENABLE);
else if (!nic_dev->in_vm)
enable_irq(irq_cfg->irq_id);
- } else {
- hinic_rx_poll(irq_cfg->rxq, HINIC_RX_BUFFER_WRITE);
}
return max(tx_pkts, rx_pkts);
diff --git a/drivers/net/ethernet/huawei/hinic/hinic_nic_cfg.c
b/drivers/net/ethernet/huawei/hinic/hinic_nic_cfg.c
index d7796d9dc1b8..8d89d30385e8 100644
--- a/drivers/net/ethernet/huawei/hinic/hinic_nic_cfg.c
+++ b/drivers/net/ethernet/huawei/hinic/hinic_nic_cfg.c
@@ -346,7 +346,7 @@ int hinic_update_mac_vlan(void *hwdev, u16 old_vlan, u16 new_vlan, int
vf_id)
u16 func_id, vlan_id;
int err;
- if (!hwdev || !old_vlan || !new_vlan)
+ if (!hwdev || old_vlan >= VLAN_N_VID || new_vlan >= VLAN_N_VID)
return -EINVAL;
vf_info = dev->nic_io->vf_infos + HW_VF_ID_TO_OS(vf_id);
--
2.31.0