net/hns3: remove redundant multicast MAC interface

This patch removes hns3_add_mc_addr_common() in PF and
hns3vf_add_mc_addr_common() in VF.

Signed-off-by: Huisong Li <lihuisong@huawei.com>
Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
This commit is contained in:
Huisong Li 2021-10-22 17:19:56 +08:00 committed by Ferruh Yigit
parent 3d491e5531
commit 05812092a5
2 changed files with 16 additions and 45 deletions

View File

@ -1632,25 +1632,6 @@ hns3_find_duplicate_mc_addr(struct hns3_hw *hw, struct rte_ether_addr *mc_addr)
return false;
}
static int
hns3_add_mc_addr_common(struct hns3_hw *hw, struct rte_ether_addr *mac_addr)
{
char mac_str[RTE_ETHER_ADDR_FMT_SIZE];
int ret;
if (hns3_find_duplicate_mc_addr(hw, mac_addr))
return -EINVAL;
ret = hns3_add_mc_mac_addr(hw, mac_addr);
if (ret) {
hns3_ether_format_addr(mac_str, RTE_ETHER_ADDR_FMT_SIZE,
mac_addr);
hns3_err(hw, "failed to add mc mac addr(%s), ret = %d",
mac_str, ret);
}
return ret;
}
static int
hns3_remove_mc_addr_common(struct hns3_hw *hw, struct rte_ether_addr *mac_addr)
{
@ -1686,11 +1667,15 @@ hns3_add_mac_addr(struct rte_eth_dev *dev, struct rte_ether_addr *mac_addr,
* using the rte_eth_dev_mac_addr_add API function to set MC mac address
* may affect the specifications of UC mac addresses.
*/
if (rte_is_multicast_ether_addr(mac_addr))
ret = hns3_add_mc_addr_common(hw, mac_addr);
else
if (rte_is_multicast_ether_addr(mac_addr)) {
if (hns3_find_duplicate_mc_addr(hw, mac_addr)) {
rte_spinlock_unlock(&hw->lock);
return -EINVAL;
}
ret = hns3_add_mc_mac_addr(hw, mac_addr);
} else {
ret = hns3_add_uc_mac_addr(hw, mac_addr);
}
if (ret) {
rte_spinlock_unlock(&hw->lock);
hns3_ether_format_addr(mac_str, RTE_ETHER_ADDR_FMT_SIZE,

View File

@ -204,25 +204,6 @@ hns3vf_remove_uc_mac_addr(struct hns3_hw *hw, struct rte_ether_addr *mac_addr)
return ret;
}
static int
hns3vf_add_mc_addr_common(struct hns3_hw *hw, struct rte_ether_addr *mac_addr)
{
char mac_str[RTE_ETHER_ADDR_FMT_SIZE];
int ret;
if (hns3_find_duplicate_mc_addr(hw, mac_addr))
return -EINVAL;
ret = hns3vf_add_mc_mac_addr(hw, mac_addr);
if (ret) {
hns3_ether_format_addr(mac_str, RTE_ETHER_ADDR_FMT_SIZE,
mac_addr);
hns3_err(hw, "failed to add mc mac addr(%s), ret = %d",
mac_str, ret);
}
return ret;
}
static int
hns3vf_add_mac_addr(struct rte_eth_dev *dev, struct rte_ether_addr *mac_addr,
__rte_unused uint32_t idx,
@ -243,10 +224,15 @@ hns3vf_add_mac_addr(struct rte_eth_dev *dev, struct rte_ether_addr *mac_addr,
* using the rte_eth_dev_mac_addr_add API function to set MC mac address
* may affect the specifications of UC mac addresses.
*/
if (rte_is_multicast_ether_addr(mac_addr))
ret = hns3vf_add_mc_addr_common(hw, mac_addr);
else
if (rte_is_multicast_ether_addr(mac_addr)) {
if (hns3_find_duplicate_mc_addr(hw, mac_addr)) {
rte_spinlock_unlock(&hw->lock);
return -EINVAL;
}
ret = hns3vf_add_mc_mac_addr(hw, mac_addr);
} else {
ret = hns3vf_add_uc_mac_addr(hw, mac_addr);
}
rte_spinlock_unlock(&hw->lock);
if (ret) {