Adding VLANs to downed interfaces

John Kamenik <[email protected]> Wed, 30 Aug 2006 15:33:23 -0400
Newsgroups gmane.linux.drivers.vlan
Message-ID <[email protected]>
I have a question about applying VLANs to downed interfaces.  I know  
that the kernel will not let you do it, and was wondering why?  I  
have created a patch that removes this limitation and applied it to  
my system and everything works as I would expect it to.  Was this a  
fix to a bug I am not currently seeing?

I am using the 2.6.17 kernel and the attached patch is based on it.   
The only file changed was the net/8021q/vlan.c file.  The  
"register_vlan_device" no longer makes a test to determine if the  
real (parent) interface is up.


John T. Kamenik (Software Eng.)
[email protected]
(301) 975 - 1000 (ext. 168)
Patton Electronics Co.
7622 Rickenbacker Dr.
Gaithersburg, Md 20879

_______________________________________________
Vlan mailing list
[email protected]
http://www.candelatech.com/mailman/listinfo/vlan
vlan.patch (application/octet-stream, 520 B)
--- net/8021q/vlan.c.orig	2006-08-30 15:10:36.000000000 -0400
+++ net/8021q/vlan.c	2006-08-30 15:11:15.000000000 -0400
@@ -416,12 +416,6 @@ static struct net_device *register_vlan_
 	 */
 	rtnl_lock();
 
-	/* The real device must be up and operating in order to
-	 * assosciate a VLAN device with it.
-	 */
-	if (!(real_dev->flags & IFF_UP))
-		goto out_unlock;
-
 	if (__find_vlan_dev(real_dev, VLAN_ID) != NULL) {
 		/* was already registered. */
 		printk(VLAN_DBG "%s: ALREADY had VLAN registered\n", __FUNCTION__);