Messages in this thread | | | Date | Thu, 28 Feb 2008 22:05:53 +0900 | From | Tejun Heo <> | Subject | Re: [PATCH] libata: Register for dock events when the drive is inside a dock station |
| |
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?
Thanks.
-- tejun
| |