Hi Matthew, ( Please TO or CC hmacht@xxxxxxx ! ) >> Just to make clear that we agree on the design, if so, I'll try to provide >> a patch: >> >> 1. Dock event: libata immediately detaches the device >> >> (libata will need another sysfs flag is_on_dock userspace can query) > Hm. I'm not absolutely certain about this. Do we get a bus check > notification after the dock has been removed? If so, I think it ought to > be handled the same way as the internal bay (ie, signal userspace and > let it clean up and destroy the device - if it fails to do so, then > destroy the device when the dock is actually removed, by catching the > bus/device check, calling the _STA method on the bay and destroying the > device if it's present) libata is notified through the dock driver when a dock event occurs, just before the dock driver undocks, giving no time to userspace to clean up. libata doesn't receive an additional acpi bay event. >> 2. Bay event: libata signals a BAY_EVENT through uevent, userspace writes >> 1 to /sys/.../device/delete > In the case of an eject request, yes. In the case of a bus or device > check, we should call _STA and then delete/hotplug the device as > appropriate. Yes. Regards, Holger -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html