Skip to contentSkip to conversation

wanrouter/wanmain: fix namespace, fixing the current problem with device_shutdown

PATCH In review Arnaldo Carvalho de Melo 2 participants 2 messages May 21, 2003 – May 22, 2003

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 wanrouter/wanmain: fix namespace, fixing the current problem with device_shutdown

Hi David,

Please pull from:

bk://kernel.bkbits.net/acme/net-2.5

This makes wanrouter build again after device_shutdown was added to
linux/device.h, that ends up clashing with the non-namespaced function in wanmain.c.

- Arnaldo

You can import this changeset into BK by piping this whole message to:
'| bk receive [path to repository]' or apply the patch as usual.

===================================================================

[email protected], 2003-05-21 14:04:23-03:00, [email protected]
o wanrouter/wanmain: fix namespace, fixing the current problem with device_shutdown

 wanmain.c |  119 +++++++++++++++++++++++++++++++++-----------------------------
 1 files changed, 64 insertions(+), 55 deletions(-)
net/wanrouter/wanmain.c +64 -55
diff -Nru a/net/wanrouter/wanmain.c b/net/wanrouter/wanmain.c
@@ -127,18 +127,21 @@
  *	WAN device IOCTL handlers
  */
 
-static int device_setup(struct wan_device *wandev, wandev_conf_t *u_conf);
-static int device_stat(struct wan_device *wandev, wandev_stat_t *u_stat);
-static int device_shutdown(struct wan_device *wandev);
-static int device_new_if(struct wan_device *wandev, wanif_conf_t *u_conf);
-static int device_del_if(struct wan_device *wandev, char *u_name);
+static int wanrouter_device_setup(struct wan_device *wandev,
+				  wandev_conf_t *u_conf);
+static int wanrouter_device_stat(struct wan_device *wandev,
+				 wandev_stat_t *u_stat);
+static int wanrouter_device_shutdown(struct wan_device *wandev);
+static int wanrouter_device_new_if(struct wan_device *wandev,
+				   wanif_conf_t *u_conf);
+static int wanrouter_device_del_if(struct wan_device *wandev, char *u_name);
 
 /*
  *	Miscellaneous
  */
 
-static struct wan_device *find_device (char *name);
-static int delete_interface (struct wan_device *wandev, char *name);
+static struct wan_device *wanrouter_find_device(char *name);
+static int wanrouter_delete_interface(struct wan_device *wandev, char *name);
 void lock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags);
 void unlock_adapter_irq(spinlock_t *lock, unsigned long *smp_flags);
 
@@ -148,19 +151,18 @@
  *	Global Data
  */
 
-static char fullname[]	= "Sangoma WANPIPE Router";
-static char copyright[]	= "(c) 1995-2000 Sangoma Technologies Inc.";
-static char modname[]   = ROUTER_NAME;	/* short module name */
-struct wan_device* router_devlist;	/* list of registered devices */
-static int devcnt;
+static char wanrouter_fullname[]  = "Sangoma WANPIPE Router";
+static char wanrouter_copyright[] = "(c) 1995-2000 Sangoma Technologies Inc.";
+static char wanrouter_modname[] = ROUTER_NAME; /* short module name */
+struct wan_device* wanrouter_router_devlist; /* list of registered devices */
 
 /*
  *	Organize Unique Identifiers for encapsulation/decapsulation
  */
 
-static unsigned char oui_ether[] = { 0x00, 0x00, 0x00 };
+static unsigned char wanrouter_oui_ether[] = { 0x00, 0x00, 0x00 };
 #if 0
-static unsigned char oui_802_2[] = { 0x00, 0x80, 0xC2 };
+static unsigned char wanrouter_oui_802_2[] = { 0x00, 0x80, 0xC2 };
 #endif
 
 #ifndef MODULE
@@ -172,12 +174,13 @@
 	extern int sdladrv_init(void);
 
 	printk(KERN_INFO "%s v%u.%u %s\n",
-		fullname, ROUTER_VERSION, ROUTER_RELEASE, copyright);
+	       wanrouter_fullname, ROUTER_VERSION, ROUTER_RELEASE,
+	       wanrouter_copyright);
 
 	err = wanrouter_proc_init();
-	if (err){
-		printk(KERN_INFO "%s: can't create entry in proc filesystem!\n", modname);
-	}
+	if (err)
+		printk(KERN_INFO "%s: can't create entry in proc filesystem!\n",
+		       wanrouter_modname);
 
         /*
          *      Initialise compiled in boards
@@ -218,14 +221,14 @@
 	int err;
 
 	printk(KERN_INFO "%s v%u.%u %s\n",
-		fullname, ROUTER_VERSION, ROUTER_RELEASE, copyright);
+	       wanrouter_fullname, ROUTER_VERSION, ROUTER_RELEASE,
+	       wanrouter_copyright);
 
 	err = wanrouter_proc_init();
 
-	if (err){
-		printk(KERN_INFO
-		"%s: can't create entry in proc filesystem!\n", modname);
-	}
+	if (err)
+		printk(KERN_INFO "%s: can't create entry in proc filesystem!\n",
+		       wanrouter_modname);
 	return err;
 }
 
@@ -274,12 +277,12 @@
 	if (!namelen || (namelen > WAN_DRVNAME_SZ))
 		return -EINVAL;
 
-	if (find_device(wandev->name) != NULL)
+	if (wanrouter_find_device(wandev->name))
 		return -EEXIST;
 
 #ifdef WANDEBUG
 	printk(KERN_INFO "%s: registering WAN device %s\n",
-		modname, wandev->name);
+	       wanrouter_modname, wandev->name);
 #endif
 
 	/*
@@ -289,7 +292,7 @@
 	if (err) {
 		printk(KERN_INFO
 			"%s: can't create /proc/net/router/%s entry!\n",
-			modname, wandev->name);
+			wanrouter_modname, wandev->name);
 		return err;
 	}
 
@@ -300,9 +303,8 @@
 
 	wandev->ndev = 0;
 	wandev->dev  = NULL;
-	wandev->next = router_devlist;
-	router_devlist = wandev;
-	++devcnt;
+	wandev->next = wanrouter_router_devlist;
+	wanrouter_router_devlist = wandev;
         MOD_INC_USE_COUNT;	/* prevent module from unloading */
 	return 0;
 }
@@ -327,7 +329,7 @@
 	if (name == NULL)
 		return -EINVAL;
 
-	for (wandev = router_devlist, prev = NULL;
+	for (wandev = wanrouter_router_devlist, prev = NULL;
 		wandev && strcmp(wandev->name, name);
 		prev = wandev, wandev = wandev->next)
 		;
@@ -335,18 +337,18 @@
 		return -ENODEV;
 
 #ifdef WANDEBUG
-	printk(KERN_INFO "%s: unregistering WAN device %s\n", modname, name);
+	printk(KERN_INFO "%s: unregistering WAN device %s\n",
+	       wanrouter_modname, name);
 #endif
 
 	if (wandev->state != WAN_UNCONFIGURED)
-		device_shutdown(wandev);
+		wanrouter_device_shutdown(wandev);
 
 	if (prev)
 		prev->next = wandev->next;
 	else
-		router_devlist = wandev->next;
+		wanrouter_router_devlist = wandev->next;
 
-	--devcnt;
 	wanrouter_proc_delete(wandev);
         MOD_DEC_USE_COUNT;
 	return 0;
@@ -381,14 +383,15 @@
 		skb_push(skb, 7);
 		skb->data[0] = 0;
 		skb->data[1] = NLPID_SNAP;
-		memcpy(&skb->data[2], oui_ether, sizeof(oui_ether));
+		memcpy(&skb->data[2], wanrouter_oui_ether,
+		       sizeof(wanrouter_oui_ether));
 		*((unsigned short*)&skb->data[5]) = htons(type);
 		break;
 
 	default:		/* Unknown packet type */
 		printk(KERN_INFO
 			"%s: unsupported Ethertype 0x%04X on interface %s!\n",
-			modname, type, dev->name);
+			wanrouter_modname, type, dev->name);
 		hdr_len = -EINVAL;
 	}
 	return hdr_len;
@@ -418,10 +421,11 @@
 		break;
 
         case NLPID_SNAP:	/* SNAP encapsulation */
-		if (memcmp(&skb->data[cnt + 1], oui_ether, sizeof(oui_ether))){
+		if (memcmp(&skb->data[cnt + 1], wanrouter_oui_ether,
+			   sizeof(wanrouter_oui_ether))){
           		printk(KERN_INFO
 				"%s: unsupported SNAP OUI %02X-%02X-%02X "
-				"on interface %s!\n", modname,
+				"on interface %s!\n", wanrouter_modname,
 				skb->data[cnt+1], skb->data[cnt+2],
 				skb->data[cnt+3], dev->name);
 			return 0;
@@ -435,7 +439,7 @@
 	default:
 		printk(KERN_INFO
 			"%s: unsupported NLPID 0x%02X on interface %s!\n",
-			modname, skb->data[cnt], dev->name);
+			wanrouter_modname, skb->data[cnt], dev->name);
 		return 0;
 	}
 	skb->protocol = ethertype;
@@ -475,23 +479,23 @@
 
 	switch (cmd) {
 	case ROUTER_SETUP:
-		err = device_setup(wandev, (void*)arg);
+		err = wanrouter_device_setup(wandev, (void*)arg);
 		break;
 
 	case ROUTER_DOWN:
-		err = device_shutdown(wandev);
+		err = wanrouter_device_shutdown(wandev);
 		break;
 
 	case ROUTER_STAT:
-		err = device_stat(wandev, (void*)arg);
+		err = wanrouter_device_stat(wandev, (void*)arg);
 		break;
 
 	case ROUTER_IFNEW:
-		err = device_new_if(wandev, (void*)arg);
+		err = wanrouter_device_new_if(wandev, (void*)arg);
 		break;
 
 	case ROUTER_IFDEL:
-		err = device_del_if(wandev, (void*)arg);
+		err = wanrouter_device_del_if(wandev, (void*)arg);
 		break;
 
 	case ROUTER_IFSTAT:
@@ -519,7 +523,8 @@
  *	o call driver's setup() entry point
  */
 
-static int device_setup(struct wan_device *wandev, wandev_conf_t *u_conf)
+static int wanrouter_device_setup(struct wan_device *wandev,
+				  wandev_conf_t *u_conf)
 {
 	void *data = NULL;
 	wandev_conf_t *conf;
@@ -595,7 +600,7 @@
  *	o call driver's shutdown() entry point
  */
 
-static int device_shutdown(struct wan_device *wandev)
+static int wanrouter_device_shutdown(struct wan_device *wandev)
 {
 	struct net_device *dev;
 	int err=0;
@@ -606,7 +611,8 @@
 	printk(KERN_INFO "\n%s: Shutting Down!\n",wandev->name);
 
 	for (dev = wandev->dev; dev;) {
-		if ((err=delete_interface(wandev, dev->name)) != 0)
+		err = wanrouter_delete_interface(wandev, dev->name);
+		if (err)
 			return err;
 		/* The above function deallocates the current dev
 		 * structure. Therefore, we cannot use dev->priv
@@ -628,7 +634,8 @@
  *	Get WAN device status & statistics.
  */
 
-static int device_stat(struct wan_device *wandev, wandev_stat_t *u_stat)
+static int wanrouter_device_stat(struct wan_device *wandev,
+				 wandev_stat_t *u_stat)
 {
 	wandev_stat_t stat;
 
@@ -658,7 +665,8 @@
  *	o register network interface
  */
 
-static int device_new_if(struct wan_device *wandev, wanif_conf_t *u_conf)
+static int wanrouter_device_new_if(struct wan_device *wandev,
+				   wanif_conf_t *u_conf)
 {
 	wanif_conf_t conf;
 	struct net_device *dev = NULL;
@@ -718,7 +726,7 @@
 
 			#ifdef WANDEBUG
 			printk(KERN_INFO "%s: registering interface %s...\n",
-				modname, dev->name);
+				wanrouter_modname, dev->name);
 			#endif
 
 			err = register_netdev(dev);
@@ -775,7 +783,7 @@
  *	 o copy configuration data to kernel address space
  */
 
-static int device_del_if(struct wan_device *wandev, char *u_name)
+static int wanrouter_device_del_if(struct wan_device *wandev, char *u_name)
 {
 	char name[WAN_IFNAME_SZ + 1];
         int err = 0;
@@ -788,7 +796,7 @@
 	if (copy_from_user(name, u_name, WAN_IFNAME_SZ))
 		return -EFAULT;
 
-	err = delete_interface(wandev, name);
+	err = wanrouter_delete_interface(wandev, name);
 	if (err)
 		return err;
 
@@ -816,11 +824,12 @@
  *	Return pointer to the WAN device data space or NULL if device not found.
  */
 
-static struct wan_device *find_device(char *name)
+static struct wan_device *wanrouter_find_device(char *name)
 {
 	struct wan_device *wandev;
 
-	for (wandev = router_devlist;wandev && strcmp(wandev->name, name);
+	for (wandev = wanrouter_router_devlist;
+	     wandev && strcmp(wandev->name, name);
 		wandev = wandev->next);
 	return wandev;
 }
@@ -842,7 +851,7 @@
  *	sure that opened interfaces are not removed!
  */
 
-static int delete_interface(struct wan_device *wandev, char *name)
+static int wanrouter_delete_interface(struct wan_device *wandev, char *name)
 {
 	struct net_device *dev = NULL, *prev = NULL;
 	unsigned long smp_flags=0;

===================================================================

This BitKeeper patch contains the following changesets:
1.1210
## Wrapped with gzip_uu ##

M'XL( +:RRSX ]58;7/:1A#^C'[%UIFFX/!R=Y*0A(=,W$!;3US;@^/V0YIA M9'& QDABI,..&_K?NW<G,& $3IQTIK:'/>ENGWV_7?P"KC*>MDI^$''C!?R6 M9*)5"I*8!R*\]>M!$M6O4]SH)0EN-,9)Q!O7-XV8BQJKVP;N7/@B&,,M3[-6 MB=;-Y1MQ/^6M4J_[Z]7I<<\PVFUX._;C$;_D MIM0R3IK3\99&]\,9XD<5VD M?IQ%7"B9\^71.2.$X:]-'9/8S3EM$LN9!W1 J6]1/B#,<IO6 YI4<!<6@C"* M:$WJS(EIN8[1 5JG^ Z(V2!V@U&@5HM8+6;6B-DB!*1KWFRZ!%Y1J!'C9_BV M=KPU DC@SH_39"9XVL!5Y(=Q"X;A)XC]B&=3/^!5^1C&(Q!C#L$L37DL8)HF MUQ,>P5THQC#@MV' ^]EX)@;)76R\ ]/RB''Q$ .C]H4_AD%\8KS>8S F1N.1 M^O5@U7S/]N9-YE)O[C/'=9M#.K"IR8D9;'?U+DP53NH02KPY8RYQ5*(5,.Q/ MNV=I;WR-]A3UMQAQYJ9%;%,GH[V>BK1%O-VIV+2@9MO_HV34H3J'6GJG_C"[ M+HJB]A6)VJ$F =LXH:8%KI$)7X0!A*C6$KZ_T(F+V;2<B706J-W\/1SB&I=5 MHX0_ /JICYX?]@4<SM2J<K0;&O?V(N? \JP&EJM]P+D?B\'W ,3\KA\.]ULM MM\+AEUD]X)/=V!",_52"R01"L ZU"#",E461Y-#;V7-)PS >Y*_+&BR'*M!K MP@7OXTN>#C%=]ZNV5,RF*HEL&ZP%MCJQHLIL,I''/WP$:,/!)=97$OGPY_'9 MQ<E%%YNF/'5P5, =)-/[-!R-!;(C=SFH /4\NX;526"!]9X'XSB9)*.09W 2 M!_5"N"@9Y+JTH7=^];[;ZY\=_]X]@L8A9.,D%8 G9A.N2A<.&\8C3QRNH#V$ M=1)F0H'(!21#2/D(5SSE@[RT,XG6P9X*%/VE2*[B+,["48P'-W1-9F&?XX61 M*FT_ _E$2'7E$_Z1 6B:&M!\&J!+6)]M +KJ\RW3@(ZM )$P0R8XZ"3?B&9U MX;X_NKW+D_.SY7.O>]H]ONQ6M_ N8ZDRQW'!1#DN05(*AU#F:5K!JIJFF(<W MY7?=WEG_Y.R7<SCX,6M!X,<_"0A2[@L.>'NF]YC#\@H-\&J=\.P>G1W]\%=\
M( OSD>0\[%(N8RH"DGQ7^QB3)8%RW/_8/L=1]BFBY&Z_%70]UUXKO@KRN4SQ M*5(HH0IK?%*>I_D4P2OQ"2PF,67HL:W*$"QW^2<<>HNKRR@5;6DN?)#8V-50 M'4U*PR2%W-(=T%7TLSIP=G5ZJC!<C>%*_;;':Q8O*ERV=;S,\C*''S,=I&(/ M+MU@*<]ILNJXS1ZV;%C([email protected]"':JXK10XZ.Z5J*'PE:5HIX%$SORR^S MF^O:ZX$O_ _L8W7;#;22=%GX-T^&Y2V'*DI#3Y67)MO307[IJ<):1EBZ*"U= ME"IKI6[1=%6W 'O6*Z#%&I;VJ%?Y+"596I*E]2L=)#$L&Q]&3]78EK AJTX+ M3;:;MJ;LQTTC'<WO:'Z\#M9R<FW:6G3;\FT2#@XK?CI2"+I&-2E&>)PW.*IJ MQN9.1CF-%4CV5%EI4@B0#TU%$-KSGK4+(I^-MD/83-DO"?M^(RO*\52D-'GF MF&ETFD36WHDD;*OA&\/7PO;5Y"D]=)!.TU3%(LD>+WS]=(U2]*0BR6XISYN4 MC8ZC:U^3TO:Z6JLC1]>1)M]PSD9D?7EI\O1 +13#+[R279-G3.F(Q-14)PE[ M:A<[RGM.?O#E2RE;7J&K[7=%64O->9I\RV\%#__O"L8\N,EF4=NBOD\LRHQ_ ) 8:MM=)*$P

#1 lore raw

From: Arnaldo Carvalho de Melo <[email protected]>
Date: Wed, 21 May 2003 14:14:41 -0300

bk://kernel.bkbits.net/acme/net-2.5

This makes wanrouter build again after device_shutdown was added to
linux/device.h, that ends up clashing with the non-namespaced function in wanmain.c.

Pulled, thanks Arnaldo.