Re: How does "alias ethX drivername" in modules.conf work?

Andrzej Krzysztofowicz (ankry@pg.gda.pl)
Wed, 8 Aug 2001 11:30:34 +0200 (MET DST)


"Riley Williams wrote:"

> 1. InitScripts points at Kernel ...
> 2. Kernel replies ...
> 3. InitScripts then tells Kernel ...

I believe this discussion leads to constructive conlusions.
Even if that are 2.5+ conclusions.

> So far, I've only seen the above scenario occur, and I have to admit
> to having very little sympathy with it. However, I'm always open to
> persuasion that the above is not the situation that is occurring.

[...]

> Let's deal with the various scenarios that I can see:
>
> 1. Just one interface, either static or hotplug.
Nothing interesting.

> 2. Multiple identical static interfaces.
Nothing interesting.

> 3. Multiple different static interfaces.
I see some subcases here:

3a. All interfaces are initialized

3b. Not all interfaces are initialized
[ "interface physicaly exist" != "interface is connected/configured"

3c. Interfaces supported by single driver are identical

3d. Interfaces supported by single driver are significantly different

I thing one met some common problems with the hotplug case here in the above
subcases.

> At the moment, you are required to group these by the driver that
> controls them, simply because each driver will automatically map
> all interfaces that it supports when it is loaded. Likewise, you
> are required to initialise interfaces in ascending order of their
> name in the modules.conf file.
>
> 4. Multiple hotplug interfaces.

I thing this case and 3. case should be solved both: for the modular drivers
case and for the built-in drivers case.

> I have to admit to never having dealt with hotplug interfaces, but
> I understand some aspects of the interface are still being ironed
> out by the kernel developers. As a result, I would not be at all
> surprised to hear that problems still exist.
>
> 5. Multiple static and hotplug interfaces.
>
> At the moment, you are required to group these by whether the
> interface is static or hotplug, configuring all static interfaces
> before any of the hotplug ones. This therefore reduces to being
> either case (2) or (3) followed by case (4), and should be dealt
> with accordingly.

Consider complex situation: you have two drivers, each of them supporting
static and built in and hotplug interfaces.
Yes, this is a theoretical problem, but solving it would probably also solve
all (or almost all) of the above cases.

I like the idea of assigning names by MAC addresses. It IMO should solve
all problems as:
- if more then one interface has the same MAC address, they are probably
identical, and you can switch them in hardware (cabling). Or am I
wrong here?
- If you want to change the MAC address you do it *AFTER* the interface
is initialized (driver is loaded, interface name is assigned). Or am
I also wrong here?

This seem to be a good idea if there's also support for "ether=" like
global kernel parameter working for build-in drivers.

> As a result, the ONLY time I can see any problem occurring is when
> there are multiple hotplug interfaces to deal with (case (4) above),
> and this is acknowledged to be a case where some of the issues have
> not yet been fully ironed out.
>
> Can you agree with this analysis, or have I overlooked something?

Andrzej

-- 
=======================================================================
  Andrzej M. Krzysztofowicz               ankry@mif.pg.gda.pl
  phone (48)(58) 347 14 61
Faculty of Applied Phys. & Math.,   Technical University of Gdansk

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/