• Tejun Heo's avatar
    libata: perform port detach in EH · ece180d1
    Tejun Heo authored
    ata_port_detach() first made sure EH saw ATA_PFLAG_UNLOADING and then
    assumed EH context belongs to it and performed detach operation
    itself.  However, UNLOADING doesn't disable all of EH and this could
    lead to problems including triggering WARN_ON()'s in EH path.
    
    This patch makes port detach behave more like other EH actions such
    that ata_port_detach() requests EH to detach and waits for completion.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
    ece180d1
libata-eh.c 87 KB