On Wed, Apr 27, 2005 at 04:14:08PM -0700, Patrick Mansfield wrote: > On Wed, Apr 27, 2005 at 05:21:10PM -0400, Alan Stern wrote: > > > David's right. Why did kobject_hotplug() move out of kobject_add() and > > into its callers sometime after 2.6.11? In particular the invocation in > > device_add() is in the wrong place; it needs to come before > > bus_add_device() starts probing for drivers. Otherwise, as David points > > out, when the drivers start registering child devices from their probe > > methods, the hotplug events for those child devices will appear before the > > event for the parent.
Yes, that's bad, sorry, while I've moved the hotplug event generation to this point to get saner sysfs timing I didn't realized this. > But bus_add_device() calls device_add_attrs() to create attrs, if you call > it after the hotplug, the user space hotplug event shows up before the > sysfs attrs are created (if the driver is using the bus->dev_attrs field). Right, it would be nice if the sysfs-attributes are ready before the event is fired. This saves us all the sleep and stat loops in userspace. > I'd like to see device_add() split into two pieces, one component that > initializes the struct device, and another to call the hotplug and the bus > probe. > > And as Kay S. suggested, a new device_register() that is the functional > equivalent of today's device_add(). I still like that and I can do the patch to split device_add so SCSI can add the device but fire the hotplug event after the device is fully registered. Greg, ok if I prepare a patch to look at or don't you like the split? Otherwise it don't see how this can be fixed and we need to move the hotplug event in core.c up where it was before and stick with the old sysfs timing. Thanks, Kay ------------------------------------------------------- SF.Net email is sponsored by: Tell us your software development plans! Take this survey and enter to win a one-year sub to SourceForge.net Plus IDC's 2005 look-ahead and a copy of this survey Click here to start! http://www.idcswdc.com/cgi-bin/survey?id=105hix _______________________________________________ [email protected] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
