aboutsummaryrefslogtreecommitdiffstats
path: root/net/8021q
diff options
context:
space:
mode:
authorUrsula Braun <braunu@de.ibm.com>2007-10-08 20:28:47 -0700
committerDavid S. Miller <davem@sunset.davemloft.net>2007-10-10 16:54:56 -0700
commit3607c44676583e80122c1fed23f34d003cdd6979 (patch)
treeb31dc2844af7a9f4cd574957fe17f17acb86991d /net/8021q
parent[IPSEC]: Move RO-specific output code into xfrm6_mode_ro.c (diff)
downloadlinux-dev-3607c44676583e80122c1fed23f34d003cdd6979.tar.xz
linux-dev-3607c44676583e80122c1fed23f34d003cdd6979.zip
[8021Q]: transfer dev_id from real device
A net_device struct provides field dev_id. It is used for unique ipv6 generation in case of shared network cards (as for the OSA network cards of IBM System z). If VLAN devices are built on top of such shared network cards, this dev_id information needs to be transferred to the VLAN device. Signed-off-by: Ursula Braun <braunu@de.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/8021q')
-rw-r--r--net/8021q/vlan.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/8021q/vlan.c b/net/8021q/vlan.c
index f2bee234d361..3fe4fc86055f 100644
--- a/net/8021q/vlan.c
+++ b/net/8021q/vlan.c
@@ -331,6 +331,9 @@ static int vlan_dev_init(struct net_device *dev)
(1<<__LINK_STATE_DORMANT))) |
(1<<__LINK_STATE_PRESENT);
+ /* ipv6 shared card related stuff */
+ dev->dev_id = real_dev->dev_id;
+
if (is_zero_ether_addr(dev->dev_addr))
memcpy(dev->dev_addr, real_dev->dev_addr, dev->addr_len);
if (is_zero_ether_addr(dev->broadcast))