From d58307d8b4ec1166ef602fc2ab57b03a3165064d Mon Sep 17 00:00:00 2001 From: Miaohe Lin Date: Thu, 16 May 2019 18:15:12 +0000 Subject: [PATCH] net: vrf: Fix operation not supported when set vrf mac mainline inclusion from mainline-5.1 commit 6819e3f6d83a category: bugfix bugzilla: 14126 CVE: NA ------------------------------------------------- Vrf device is not able to change mac address now because lack of ndo_set_mac_address. Complete this in case some apps need to do this. Reported-by: Hui Wang Signed-off-by: Miaohe Lin Signed-off-by: David S. Miller Signed-off-by: Zhiqiang Liu Reviewed-by: Miaohe Lin Signed-off-by: Yang Yingliang --- drivers/net/vrf.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/vrf.c b/drivers/net/vrf.c index c63302263fb5..71e2340032b0 100644 --- a/drivers/net/vrf.c +++ b/drivers/net/vrf.c @@ -874,6 +874,7 @@ static const struct net_device_ops vrf_netdev_ops = { .ndo_init = vrf_dev_init, .ndo_uninit = vrf_dev_uninit, .ndo_start_xmit = vrf_xmit, + .ndo_set_mac_address = eth_mac_addr, .ndo_get_stats64 = vrf_get_stats64, .ndo_add_slave = vrf_add_slave, .ndo_del_slave = vrf_del_slave, @@ -1273,6 +1274,7 @@ static void vrf_setup(struct net_device *dev) /* default to no qdisc; user can add if desired */ dev->priv_flags |= IFF_NO_QUEUE; dev->priv_flags |= IFF_NO_RX_HANDLER; + dev->priv_flags |= IFF_LIVE_ADDR_CHANGE; /* VRF devices do not care about MTU, but if the MTU is set * too low then the ipv4 and ipv6 protocols are disabled -- GitLab