lkml.org 
[lkml]   [1996]   [May]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patches in this message
/
From
Subjecttunnel & dummy interface broken in 1.99.5 and later
Date
-----BEGIN PGP SIGNED MESSAGE-----

In 1.99.5 (pre-2.0.5) and later tunnel and dummy net drivers are
broken if they are compiled into kernel (not compiled as module).
This is due to changes in linux/net/core/dev.c: every network
interface is required to always have a dev->open routine.

Additionally I've found an unnecessary assignment in loopback driver.

The following patch should go cleanly into 1.99.7...

- Andreas

diff -u linux-1.99.7/drivers/net/new_tunnel.c 1.99.7/drivers/net/new_tunnel.c
--- linux-1.99.7/drivers/net/new_tunnel.c Tue May 21 12:48:08 1996
+++ 1.99.7/drivers/net/new_tunnel.c Wed May 22 13:20:35 1996
@@ -86,19 +86,18 @@
#define TUNL_HLEN (((ETH_HLEN+15)&~15)+tunnel_hlen)


-#ifdef MODULE
static int tunnel_open(struct device *dev)
{
MOD_INC_USE_COUNT;
return 0;
}

+#ifdef MODULE
static int tunnel_close(struct device *dev)
{
MOD_DEC_USE_COUNT;
return 0;
}
-
#endif
#ifdef TUNNEL_DEBUG
@@ -348,8 +347,8 @@
}
/* Add our tunnel functions to the device */
-#ifdef MODULE
dev->open = tunnel_open;
+#ifdef MODULE
dev->stop = tunnel_close;
#endif
dev->hard_start_xmit = tunnel_xmit;
diff -u linux-1.99.7/drivers/net/dummy.c 1.99.7/drivers/net/dummy.c
--- linux-1.99.7/drivers/net/dummy.c Wed May 22 13:18:51 1996
+++ 1.99.7/drivers/net/dummy.c Wed May 22 14:36:12 1996
@@ -64,11 +64,13 @@
return 0;
}

+#ifdef MODULE
static int dummy_close(struct device *dev)
{
MOD_DEC_USE_COUNT;
return 0;
}
+#endif

int dummy_init(struct device *dev)
@@ -89,7 +91,9 @@
#endif

dev->open = dummy_open;
+#ifdef MODULE
dev->stop = dummy_close;
+#endif

/* Fill in the fields of the device structure with ethernet-generic values. */
ether_setup(dev);
diff -u linux-1.99.7/drivers/net/loopback.c 1.99.7/drivers/net/loopback.c
--- linux-1.99.7/drivers/net/loopback.c Tue May 21 12:50:15 1996
+++ 1.99.7/drivers/net/loopback.c Wed May 22 13:20:36 1996
@@ -122,7 +122,6 @@
dev->mtu = LOOPBACK_MTU;
dev->tbusy = 0;
dev->hard_start_xmit = loopback_xmit;
- dev->open = NULL;
dev->hard_header = eth_header;
dev->hard_header_len = ETH_HLEN; /* 14 */
dev->addr_len = ETH_ALEN; /* 6 */
-----BEGIN PGP SIGNATURE-----
Version: 2.6.2i
Comment: Processed by Mailcrypt 3.3, an Emacs/PGP interface
iQBVAwUBMaQAU0VdjNvyndGpAQFVCQIAlI7nsoMnKwOor0olqXf+YM9nvI2ASssT
ihiOzkqPpOQLwxf9ttEp3PBAOWJUhNa1CG1TOclH0q/xXmGehP8umA==
=SgF7
-----END PGP SIGNATURE-----
--
Andreas Koppenhoefer, Student der Universitaet Stuttgart, BR Deutschland
<koppenas@informatik.uni-stuttgart.de>, <akoppenhoefer@schweinfurt.netsurf.de>
Franz-Schubert-Str. 2, 97616 Bad Neustadt, Germany, +49 9771 7943 (9-21h MEZ)

\
 
 \ /
  Last update: 2005-03-22 13:37    [W:0.037 / U:0.592 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site