Re: libata hotplug question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux