On Tue, 13 Mar 2012 22:20:19 +0000, Alan Mackenzie wrote: > > udev does a *lot* more than that, for example the persistent naming of > > network interfaces. More significantly, it can run programs based on > > device rules. > > This is where I start getting unhappy. Is there any need for this > blurring? Having device nodes is essential to a linux system, and > some programs use these nodes. Why must they be mashed together into a > tasteless mush? Is there some advantage to this I haven't twigged yet?
I agree with you on this. The initial creation of device nodes belongs in early startup, running arbitrary programs does not. > > For example, usb_modeswitch installs a udev rule to switch a 3G USB > > modem from CD to modem mode, without which it won't work. > > Same question as above: why does that switching have to be done via the > device node system rather than via the driver. Isn't that what drivers > are for? udev is not a device node system, it is a device manager. Requiring drivers to handle it gets us into the same mess as Windows, where each driver has to implement the same functionality itself. If a new modem is released with a different USB ID, but using the same driver, your way would require a new kernel, the current approach requires one line to be added to a config file. > > That's fine when you plug it into a running system, but when you boot > > with it plugged in, it can trip over itself because the usb_modeswitch > > executable is in /usr/sbin. > > Er, that's a different discussion altogether. ;-) How so? It's central to the whole "when do we need /usr?" debate. > > You could use this to argue that /usr should be mounted before udev is > > started, but you could just as well use it to argue that udev should > > not be trying to run such rules at the boot runlevel. > > Or that udev shouldn't have "rules". I still don't understand the basic > concept driving this thing. My HDDs don't need rules - they just need a > mapping from /dev/sd[ab] into device 8/0 and 8/16, and the appropriate > drivers built into my kernel. "I don't need it so no one needs it". It sounds like what you need is mdev, but many people want or need more from a device manager. There are many more and varied devices than simple hard disks. > Am I being stupid? Despite your example above, I still don't see what > udev is about, why it's necessary, or even why it's advantageous. What you don't see is why *you* need it, and that's fair enough. Just consider that it does things that others need, even if you don't. But I still think the requirement for /usr to be mounted is a lazy, if understandable, solution to the way udev's operations are implemented. After all, the vast majority of PC Linux installations out there already use an initramfs. -- Neil Bothwick How do I set my laser printer to stun?
signature.asc
Description: PGP signature