From: Mike Manning <mmann...@brocade.com> Date: Mon, 29 Feb 2016 11:32:51 +0000
> > - /* vlan address was equal to the old address and is different from > + /* vlan address was equal to the old address so now also inherit > * the new address */ > - if (ether_addr_equal(vlandev->dev_addr, vlan->real_dev_addr) && > - !ether_addr_equal(vlandev->dev_addr, dev->dev_addr)) > - dev_uc_add(dev, vlandev->dev_addr); > + if (ether_addr_equal(vlandev->dev_addr, vlan->real_dev_addr)) > + ether_addr_copy(vlandev->dev_addr, dev->dev_addr); > This dev_uc_add() call removal cannot be correct, if the device is up we must programe it into the hardware unicast filters and if also potentially put it into promiscuous mode via __dev_set_rx_mode(). Also your subject line isn't formatted properly, it should be: [PATCH net] vlan: Propagate MAC address changes properly.