that's intra subsystem synchronisation, not inter subsystem
I'd say that device_driver.remove() calls from the bus management code to a given device driver are inter-subsystem...
Look, the rules are very simple:
- Every subsystem gives out refcounted objects.
- Every subsystem takes in a disconnection event for another object. ..
If you follow these rules, there's no *inter* subsystem ordering or synchronisation requirement.
Well, either handling the disconnection event from the lower level subsystem (bus) is such a requirement, or it's not necessary! I've got to assume the former, since the Linux kernel doesn't garbage collect its memory.
Refcounting systems need loop-breaking protocols ("disconnect");
this is needed for that sort of reason, if no other.- Dave
------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
