On Wednesday 23 December 2020 at 23:41:58, Didier Kryn wrote:

> Le 23/12/2020 à 22:03, Antony Stone a écrit :
> > If the kernel decides A=eth1, B=eth2, C=eth0 then there's no way for udev
> > rules to rename them, because "File exists" (which should of course say
> > "Device name exists").
> 
>     This should not happen and did not happen in the past because the
> interfaces are created sequentially. Therefore, if you want to rename
> the first one, no name other than eth0 exists yet; and you can figure
> out that something similar happen to the next: the kernel does not name
> it by the name you have assigned to the first one, etc.

No; the problem is that the kernel names all of the interfaces before udev 
gets to do whatever it wants to, therefore by the time my rules saying which 
interface I want as eth0, which as eth1 and which as eth2 are able to run, all 
those names exist, but on the wrong (according to me) devices.

>     What may have changed is Eudev managed to not work sequentially. If
> it followed the order in which the interfaces show up out of the
> Netlink, there would be no problem. Therefore I suspect the authors
> managed to launch several threads in order to save 0.01s of the boot
> time. Or to loose more because thread scheduling might well consume more
> than what parallelism saves.

I have no opinion on that.

>     Or maybe the kernel is much faster than Eudev and it has the time to
> create the interfaces faster than Eudev processes them.

That sounds likely.

>     But for sure the mechanism worked in the past.

I completely agree.

As I said in my opening posting on the "Ethernet names revisited" thread:

| I'm trying to work out how to give those interfaces the names I want; the
| motherboard as eth0, and the PCI card as eth1 / eth2.
|
| Historically, I've been used to udev and /etc/udev/rules.d/70-persistent-
| net.rules doing this, where I can specify the name I want for each interface
| according to its MAC address.

By "historically" I meant "up to Jessie, and I think also Stretch / Ascii".  
It's not doing the same in Buster / Beowulf.


Antony.

-- 
I still maintain the point that designing a monolithic kernel in 1991 is a 
fundamental error.  Be thankful you are not my student.  You would not get a 
high grade for such a design :-)
 - Andrew Tanenbaum to Linus Torvalds

                                                   Please reply to the list;
                                                         please *don't* CC me.
_______________________________________________
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng

Reply via email to