> > However, the /sbin/hotplug interface can be used... But that's an > > argument for a later time, after some more design work is done :) > > No, it cannot. It's event based. We need a simple and robust way > to get that information.
I was going to make a similar point. The "original" /sbin/hotplug framework was just publishing events that the kernel knew about ... "here's a new USB device". While it was a design goal that it work without (what we now call) "usbfs", clearly a number of things work better when usbfs is available since then the hotplug agent has more information available to it. Two points that I believe sold that original /sbin/hotplug approach vs. alternatives, beyond the obvious "it works and solves the problem": - Cost in the kernel was less than 512 bytes; it used existing mechanisms, which were always present. (It takes a bit more space now, mostly because more subsystems have learned about it.) - It solved the problem without needing two contentious capabilities that added to overall system costs (memory, maintainability, administerability, etc): a filesystem (like usbfs or devfs); and a user mode daemon (like devfsd or the various early usbds). Now in general, there are two ways to deliver the information userspace needs to handle an event: (a) in the event itself, or (b) through external state. The "poll a filesystem" approach relies purely on (b), hotplug uses (a) for minimal functionality but (!!) relies on (b) to deliver full functionality. In short, I would disagree that a pure event based approach is the way to go. In general it needs to be supported by good system facilities that let user mode tools "introspect" about the system device configuration (without needing to grot around in /dev/kmem to discover such stuff) or examine (and ideally, modify) bindings of drivers to devices as part of device configuration. Event delivery is only one of the mechanisms Linux needs, and it shouldn't be overloaded. - Dave _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel