[dpdk-dev] [PATCH] vmxnet3: mac address set fixes

Shrikrishna Khare skhare at shri-linux.eng.vmware.com
Sun Sep 10 19:40:00 CEST 2017



On Fri, 25 Aug 2017, David Harton wrote:

> Updated vmxnet3_mac_addr_set() to store the newly set MAC address.
> Modified vmxnet3_write_mac() so the h/w is updated in an endian
> neutral manner.
> 
> Signed-off-by: David Harton <dharton at cisco.com>

Acked-by: Shrikrishna Khare <skhare at vmware.com>

> ---
>  drivers/net/vmxnet3/vmxnet3_ethdev.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c b/drivers/net/vmxnet3/vmxnet3_ethdev.c
> index 06735dd..6525bb2 100644
> --- a/drivers/net/vmxnet3/vmxnet3_ethdev.c
> +++ b/drivers/net/vmxnet3/vmxnet3_ethdev.c
> @@ -537,10 +537,10 @@ static int eth_vmxnet3_pci_remove(struct rte_pci_device *pci_dev)
>  		     addr[0], addr[1], addr[2],
>  		     addr[3], addr[4], addr[5]);
>  
> -	val = *(const uint32_t *)addr;
> +	memcpy(&val, addr, 4);
>  	VMXNET3_WRITE_BAR1_REG(hw, VMXNET3_REG_MACL, val);
>  
> -	val = (addr[5] << 8) | addr[4];
> +	memcpy(&val, addr + 4, 2);
>  	VMXNET3_WRITE_BAR1_REG(hw, VMXNET3_REG_MACH, val);
>  }
>  
> @@ -1146,6 +1146,8 @@ static int eth_vmxnet3_pci_remove(struct rte_pci_device *pci_dev)
>  {
>  	struct vmxnet3_hw *hw = dev->data->dev_private;
>  
> +	ether_addr_copy(mac_addr, (struct ether_addr *)(hw->perm_addr));
> +	ether_addr_copy(mac_addr, &dev->data->mac_addrs[0]);
>  	vmxnet3_write_mac(hw, mac_addr->addr_bytes);
>  }
>  
> -- 
> 1.8.3.1
> 
> 


More information about the dev mailing list