vlan: Correctly handle device notifications for layered VLAN devices
authorPatrick McHardy <kaber@trash.net>
Mon, 9 Jun 2008 18:42:44 +0000 (11:42 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 16 Jun 2008 20:19:56 +0000 (13:19 -0700)
[ upstream commit: 81d85346b3fcd8b3167eac8b5fb415a210bd4345 ]

Commit 30688a9 ([VLAN]: Handle vlan devices net namespace changing)
changed the device notifier to special-case notifications for VLAN
devices, effectively disabling state propagation to underlying VLAN
devices. This is needed for layered VLANs though, so restore the
original behaviour.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Acked-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
net/8021q/vlan.c

index b33410abfd6bfc25edd90a96bf05cde8014e96a3..c0bac6d92074c28f0d8c0851fa01b320753f171e 100644 (file)
@@ -397,10 +397,8 @@ static int vlan_device_event(struct notifier_block *unused, unsigned long event,
        if (dev->nd_net != &init_net)
                return NOTIFY_DONE;
 
-       if (is_vlan_dev(dev)) {
+       if (is_vlan_dev(dev))
                __vlan_device_event(dev, event);
-               goto out;
-       }
 
        grp = __vlan_find_group(dev->ifindex);
        if (!grp)