Hello, Vladimir. On Mon, Nov 28, 2016 at 01:18:56AM +0200, Vladimir Zapolskiy wrote: > While removing ATA controller driver ata_port_detach() sets > ATA_PFLAG_UNLOADING flag and charges the error handler, however actual > port disabling does not happen due to unset ATA_PFLAG_EH_PENDING flag. > > To take care about clean port removal and ATA_PFLAG_EH_PENDING flag > setting it is sufficient to replace ata_port_schedule_eh() call with > ata_port_freeze(). Hmm... this explanation doesn't really make sense to me. ATA_PFLAG_EH_PENDING is set by at_eh_set_pending() which is the same for both ata_port_schedule_eh() and ata_port_freeze(). There gotta me something else going on here. Any chance you can track down why EH isn't running? 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