Hello, On 12/01/2009 02:17 PM, Benjamin Herrenschmidt wrote: > So I tried with implementing the link_online and link_offline callbacks > and it doesn't fly very high. > > When I unplug the bay, it displays: > > ata3: exception Emask 0x10 SAct 0x0 SErr 0x0 action 0xe frozen > ata3: EH complete You didn't schedule any EH actions, right? > and doesn't really "unplug" it (ie, trying to access the device then > causes all sorts of errors to pile up in the log). Plugging it back then > causes it to soft reset and restore the DMA timings and it works again. > > But it's overall sub optimal. Comparatively, it worked better without > the link callbacks though I would call it sub-optimal :-) > > What would be the best way to tell libata to just remove the device and > not bother poking the HW again on an unplug and do as it does today on a > plug without the link callbacks ? libata-acpi.c does that. Setting ATA_DFLAG_DETACH device flag and scheduling EH will do that. Please take a look at ata_acpi_detach_device() but you must be *sure* that your hot unplug notification is completely reliable. Thanks. -- tejun -- 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