From: Patrick McHardy <[EMAIL PROTECTED]>
Date: Wed, 11 Jul 2007 19:54:18 +0200
> Patrick McHardy wrote:
> > [VLAN]: Fix MAC address handling
> >
> > +static void vlan_sync_address(struct net_device *dev,
> > + struct net_device *vlandev)
> > +{
> > + struct vlan_dev_info *vlan = VLAN_DEV_INFO(vlandev);
> > +
> > + if (!compare_ether_addr(vlan->real_dev_addr, dev->dev_addr))
> > + return;
> > +
> > + if (compare_ether_addr(vlandev->dev_addr, dev->dev_addr))
> > + dev_unicast_add(dev, vlandev->dev_addr, ETH_ALEN);
> > + else
> > + dev_unicast_delete(dev, vlandev->dev_addr, ETH_ALEN);
> > +
> > + memcpy(vlan->real_dev_addr, dev->dev_addr, ETH_ALEN);
> > +}
>
>
> Unfortunately the one case I didn't test is still wrong :|
>
> The above synchronization incorrectly removes the address in case
> if was different before and is still different afterwards. This
> patch is fixed and contains a few comments as an added bonus :)
So there is no confusion, I made sure to use this updated
version of the patch. :)
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html