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