summaryrefslogtreecommitdiffstats
path: root/net/8021q/vlan.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2005-07-12 22:16:40 +0200
committerLinus Torvalds <torvalds@g5.osdl.org>2005-07-12 22:16:40 +0200
commit9ffc7a0ebfcace0ed3eb77fb77e159f6f9443ec5 (patch)
tree4d4353bb6535aec7822ea71e594154979728e484 /net/8021q/vlan.c
parent[PATCH] USB: add ldusb driver (diff)
parent[VLAN]: Fix early vlan adding leads to not functional device (diff)
downloadlinux-9ffc7a0ebfcace0ed3eb77fb77e159f6f9443ec5.tar.xz
linux-9ffc7a0ebfcace0ed3eb77fb77e159f6f9443ec5.zip
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Diffstat (limited to 'net/8021q/vlan.c')
-rw-r--r--net/8021q/vlan.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/net/8021q/vlan.c b/net/8021q/vlan.c
index 1f6d31670bc7..91e412b0ab00 100644
--- a/net/8021q/vlan.c
+++ b/net/8021q/vlan.c
@@ -578,6 +578,14 @@ static int vlan_device_event(struct notifier_block *unused, unsigned long event,
if (!vlandev)
continue;
+ if (netif_carrier_ok(dev)) {
+ if (!netif_carrier_ok(vlandev))
+ netif_carrier_on(vlandev);
+ } else {
+ if (netif_carrier_ok(vlandev))
+ netif_carrier_off(vlandev);
+ }
+
if ((vlandev->state & VLAN_LINK_STATE_MASK) != flgs) {
vlandev->state = (vlandev->state &~ VLAN_LINK_STATE_MASK)
| flgs;