|
@@ -723,6 +723,7 @@ static void sl_sync(void)
|
|
static struct slip *sl_alloc(dev_t line)
|
|
static struct slip *sl_alloc(dev_t line)
|
|
{
|
|
{
|
|
int i;
|
|
int i;
|
|
|
|
+ char name[IFNAMSIZ];
|
|
struct net_device *dev = NULL;
|
|
struct net_device *dev = NULL;
|
|
struct slip *sl;
|
|
struct slip *sl;
|
|
|
|
|
|
@@ -735,25 +736,12 @@ static struct slip *sl_alloc(dev_t line)
|
|
if (i >= slip_maxdev)
|
|
if (i >= slip_maxdev)
|
|
return NULL;
|
|
return NULL;
|
|
|
|
|
|
- if (dev) {
|
|
|
|
- sl = netdev_priv(dev);
|
|
|
|
- if (test_bit(SLF_INUSE, &sl->flags)) {
|
|
|
|
- unregister_netdevice(dev);
|
|
|
|
- dev = NULL;
|
|
|
|
- slip_devs[i] = NULL;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- if (!dev) {
|
|
|
|
- char name[IFNAMSIZ];
|
|
|
|
- sprintf(name, "sl%d", i);
|
|
|
|
-
|
|
|
|
- dev = alloc_netdev(sizeof(*sl), name, sl_setup);
|
|
|
|
- if (!dev)
|
|
|
|
- return NULL;
|
|
|
|
- dev->base_addr = i;
|
|
|
|
- }
|
|
|
|
|
|
+ sprintf(name, "sl%d", i);
|
|
|
|
+ dev = alloc_netdev(sizeof(*sl), name, sl_setup);
|
|
|
|
+ if (!dev)
|
|
|
|
+ return NULL;
|
|
|
|
|
|
|
|
+ dev->base_addr = i;
|
|
sl = netdev_priv(dev);
|
|
sl = netdev_priv(dev);
|
|
|
|
|
|
/* Initialize channel control data */
|
|
/* Initialize channel control data */
|