[1305] in linux-net channel archive

home help back first fref pref prev next nref lref last post

Re: Problem PCMCIA and network initialization

daemon@ATHENA.MIT.EDU (Al Longyear)
Thu Nov 2 00:02:01 1995

From: "Al Longyear" <longyear@sii.com>
To: gpg109@rsphy4.anu.edu.au (Paul Gortmaker)
Date: Wed, 1 Nov 1995 06:18:33 -0800 (PST)
Cc: tytso@mit.edu, linux-net@vger.rutgers.edu
In-Reply-To: <9511010506.AA00851@rsphy4.anu.edu.au> from "Paul Gortmaker" at Nov 1, 95 04:06:31 pm
Reply-To: "Al Longyear" <longyear@netcom.com>

Paul Gormaker worte:

> If your PCMCIA card is 8390 NIC based, it will not work since 
> 1.3.31 because of my changes for eth_copy_and_sum(). I mailed David
> Hinds in advance of these changes, so he is aware of them, and how
> to implement them. I don't know if he has done so yet.

I have a 3COM 3c589b card and it works quite well with the 1.3.37 kernel.
(I am using it now to send this message.)

So, not all of the PCMCIA ethernet adapters are effected as Ted may have
implied and you corrected.

> > there are no network devices compiled into the kernel, when the ethernet
> > layer initializes itself, it's leaving unitializaed network device
> > structures on the global linked list.  Hence, if you cat /proc/net/dev,
> > you will see something like this:
> 
> Also, I just compiled a fresh 1.3.37 with no net devices included,
> and it just comes up with the loopback device. I can't reproduce
> what you have with the empty slots remaining in the dev_base linked 
> list. The empty slots that are put into the list in drivers/net/Space.c
> that don't get filled with a valid device get removed from the chain
> in net/core/dev.c by net_dev_init().

I noticed the same problem when I ran the 2.2 version of PPP. It mysteriously
went away when I upgraded the kernel or switched to using modules for ppp
or something.

What was really strange was that I had absolutely no ethernet devices in
the system. I had only PPP. Then, when the unlink operation was completed,
I ended up with four mysterious eth devices.

The ppp process unlinks the four devices which it was allocated when it
starts. I looked at the unlink code and it should (does) work. However,
if Ted is running ppp in the kernel (as opposed to using a module for ppp.o)
then it is a possibility. The startup for the kernel based PPP code is to
simply unlink the current device given in its init call.

I believe that the same logic was used by Matt when he implemented the code
in the SLIP driver as well.

-- 
Al Longyear                          longyear@sii.com
The above opinions do not necessarily represent those of the Management
of System Integrators nor any of its subsidiaries.

home help back first fref pref prev next nref lref last post