On Thu 28. Feb - 22:05:53, Tejun Heo wrote: > Holger Macht wrote: > > On Thu 28. Feb - 18:35:06, Tejun Heo wrote: > >> Holger Macht wrote: > >>> The hotplug handler is only called if the device is actually inside the > >>> dock station. If it is not, nothing will happen. I hope that I got your > >>> question right? > >> Yes, right. > >> > >>> However, if this would be helpful, it would be easy to add something like > >>> a am_I_on_dock_station?(...) function to the dock driver. > >> Hmm.. as long as the event is only delivered when the device is actually > >> connected behind dock, I think it's okay. > > > > The dock driver also export a is_dock_device(acpi_handle) function, which > > could be used to make more fine-grained decisions, but it shouldn't be > > needed here. > > > >> Does the attached patch fix the previous undock problem? It now > >> explicitly tells libata EH to detach the notified devices on > >> EJECT_REQUEST and wait for EH to complete such that control is returned > >> to ACPI after all notified devices are actually detached. > > > > No it does not. Apparently, it freezes faster (from 1 second down to > > immediately). Before, it just froze when someone (in this case HAL) tried > > to access the device. The "echo 1 > undock" call does not even return, so > > it might have introduced another problem. > > The code should be in generally right direction. Can you be persuaded > into tracking down what's going on? I had a quick glance with adding some printk's. Now I got a different behaviour once. System did not freeze, but were certainly confused. The last thing which got printed to messages was exactly before spin_lock_irqsave(ap->lock, flags); at the beginning of ata_acpi_handle_hotplug(...) The printk immediately after this call didn't come through anymore (with being able to use the system for a short time afterwards). Maybe this helps. For further debugging, I would have to setup remote debugger, but I doubt I get around to do this for the next couple of days or even 1-2 weeks. I could test new patches, of course. Regards, Holger P.S.: You'll need [1] patch for testing, otherwise the hotplug handler is never called. [1] http://git.kernel.org/?p=linux/kernel/git/lenb/linux-acpi-2.6.git;a=commit;h=3b5fee5952ff7eb6ff7a64247a01040b8b331b74 -- 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