[dpdk-dev] [PATCH v4 1/3] ethdev: fix adding invalid MAC addr

Lu, Wenzhuo wenzhuo.lu at intel.com
Fri Apr 21 08:43:36 CEST 2017


Hi Wei,

> -----Original Message-----
> From: Dai, Wei
> Sent: Thursday, April 13, 2017 4:21 PM
> To: thomas.monjalon at 6wind.com; harish.patil at cavium.com;
> rasesh.mody at cavium.com; stephen.hurd at broadcom.com;
> ajit.khaparde at broadcom.com; Lu, Wenzhuo; Zhang, Helin; Ananyev,
> Konstantin; Wu, Jingjing; Chen, Jing D; adrien.mazarguil at 6wind.com;
> nelio.laranjeiro at 6wind.com; Richardson, Bruce;
> yuanhan.liu at linux.intel.com; maxime.coquelin at redhat.com
> Cc: dev at dpdk.org; Dai, Wei; stable at dpdk.org
> Subject: [PATCH v4 1/3] ethdev: fix adding invalid MAC addr
> 
> some customers find adding mac addr to VF sometimes can fail, but it is still
> stored in dev->data->mac_addrs[ ]. So this can lead to some errors that
> assumes the non-zero entry in
> dev->data->mac_addrs[ ] is valid.
> 
> Fixes: af75078fece3 ("first public release")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Wei Dai <wei.dai at intel.com>
> ---
>  drivers/net/bnx2x/bnx2x_ethdev.c   |  7 +++++--
>  drivers/net/bnxt/bnxt_ethdev.c     | 12 ++++++------
>  drivers/net/e1000/base/e1000_api.c |  2 +-
>  drivers/net/e1000/em_ethdev.c      |  6 +++---
>  drivers/net/e1000/igb_ethdev.c     |  5 +++--
>  drivers/net/enic/enic.h            |  2 +-
>  drivers/net/enic/enic_ethdev.c     |  4 ++--
>  drivers/net/enic/enic_main.c       |  6 +++---
>  drivers/net/fm10k/fm10k_ethdev.c   |  3 ++-
>  drivers/net/i40e/i40e_ethdev.c     | 11 ++++++-----
>  drivers/net/i40e/i40e_ethdev_vf.c  |  8 ++++----
>  drivers/net/ixgbe/ixgbe_ethdev.c   | 27 ++++++++++++++++++---------
>  drivers/net/mlx4/mlx4.c            | 18 +++++++++++-------
>  drivers/net/mlx5/mlx5.h            |  4 ++--
>  drivers/net/mlx5/mlx5_mac.c        | 16 ++++++++++------
>  drivers/net/qede/qede_ethdev.c     |  6 ++++--
>  drivers/net/ring/rte_eth_ring.c    |  3 ++-
>  drivers/net/virtio/virtio_ethdev.c | 13 +++++++------
>  lib/librte_ether/rte_ethdev.c      | 15 +++++++++------
>  lib/librte_ether/rte_ethdev.h      |  2 +-
>  20 files changed, 100 insertions(+), 70 deletions(-)
> 
> 
>  int bnxt_link_update_op(struct rte_eth_dev *eth_dev, int
> wait_to_complete) diff --git a/drivers/net/e1000/base/e1000_api.c
> b/drivers/net/e1000/base/e1000_api.c
> index f7cf83b..dcb53f7 100644
> --- a/drivers/net/e1000/base/e1000_api.c
> +++ b/drivers/net/e1000/base/e1000_api.c
> @@ -855,7 +855,7 @@ int e1000_rar_set(struct e1000_hw *hw, u8 *addr,
> u32 index)
>  	if (hw->mac.ops.rar_set)
>  		return hw->mac.ops.rar_set(hw, addr, index);
> 
> -	return E1000_SUCCESS;
> +	return E1000_ERR_NO_SPACE;
>  }
NACK here. Normally we try to avoid changing base code. And I don't think the change is necessary.



More information about the dev mailing list