On Tue, Jun 13, 2017 at 10:45:11PM +0800, Zhang Shengju wrote:
> The macvlan dev should propagate the return value of mac address change for
> lower device in the passthru mode, instead of always return 0.
> 
> Signed-off-by: Zhang Shengju <zhangshen...@cmss.chinamobile.com>
> ---
>  drivers/net/macvlan.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/net/macvlan.c b/drivers/net/macvlan.c
> index 346ad2f..ade1213 100644
> --- a/drivers/net/macvlan.c
> +++ b/drivers/net/macvlan.c
> @@ -703,10 +703,8 @@ static int macvlan_set_mac_address(struct net_device 
> *dev, void *p)
>       if (!is_valid_ether_addr(addr->sa_data))
>               return -EADDRNOTAVAIL;
>  
> -     if (vlan->mode == MACVLAN_MODE_PASSTHRU) {
> -             dev_set_mac_address(vlan->lowerdev, addr);
> -             return 0;
> -     }
> +     if (vlan->mode == MACVLAN_MODE_PASSTHRU)
> +             return dev_set_mac_address(vlan->lowerdev, addr);

Do you think the following functions needs this fix as well?
- alb_set_mac_address
- bond_alb_handle_active_change
- bond_enslave
- __bond_release_one
- macvlan_set_mac_address

Yuval

>  
>       return macvlan_sync_address(dev, addr->sa_data);
>  }
> -- 
> 1.8.3.1
> 
> 
> 

Reply via email to