]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - net/8021q/vlan_netlink.c
vlan: Change vlan_dev_set_vlan_flag() to handle multiple flags at once
[linux-2.6-omap-h63xx.git] / net / 8021q / vlan_netlink.c
index c93e69ec28edd5f5aaac36d987a2be7987a37a32..fd7cb195d53f6198d852c6a9c36f1a8b25bb14ac 100644 (file)
@@ -75,7 +75,6 @@ static int vlan_validate(struct nlattr *tb[], struct nlattr *data[])
 static int vlan_changelink(struct net_device *dev,
                           struct nlattr *tb[], struct nlattr *data[])
 {
-       struct vlan_dev_info *vlan = vlan_dev_info(dev);
        struct ifla_vlan_flags *flags;
        struct ifla_vlan_qos_mapping *m;
        struct nlattr *attr;
@@ -83,8 +82,7 @@ static int vlan_changelink(struct net_device *dev,
 
        if (data[IFLA_VLAN_FLAGS]) {
                flags = nla_data(data[IFLA_VLAN_FLAGS]);
-               vlan->flags = (vlan->flags & ~flags->mask) |
-                             (flags->flags & flags->mask);
+               vlan_dev_change_flags(dev, flags->flags, flags->mask);
        }
        if (data[IFLA_VLAN_INGRESS_QOS]) {
                nla_for_each_nested(attr, data[IFLA_VLAN_INGRESS_QOS], rem) {