From e2d7432bb80333649e9be80d3fc56908cc8890c3 Mon Sep 17 00:00:00 2001 From: Tejun Heo Date: Sun, 26 Oct 2008 15:43:03 +0900 Subject: [PATCH] --- yaml --- r: 117934 b: refs/heads/master c: 90484ebfc96c5dc5c498ed72cf2d370575db9b76 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/ata/libata-eh.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index cd5e28e8c551..48eb1b85dcfe 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e8b3b5e9f54512bfdb7c154da07ec0408cbd6c56 +refs/heads/master: 90484ebfc96c5dc5c498ed72cf2d370575db9b76 diff --git a/trunk/drivers/ata/libata-eh.c b/trunk/drivers/ata/libata-eh.c index a6a3b1554c45..8077bdf5d30d 100644 --- a/trunk/drivers/ata/libata-eh.c +++ b/trunk/drivers/ata/libata-eh.c @@ -1164,6 +1164,7 @@ void ata_eh_detach_dev(struct ata_device *dev) { struct ata_link *link = dev->link; struct ata_port *ap = link->ap; + struct ata_eh_context *ehc = &link->eh_context; unsigned long flags; ata_dev_disable(dev); @@ -1177,9 +1178,11 @@ void ata_eh_detach_dev(struct ata_device *dev) ap->pflags |= ATA_PFLAG_SCSI_HOTPLUG; } - /* clear per-dev EH actions */ + /* clear per-dev EH info */ ata_eh_clear_action(link, dev, &link->eh_info, ATA_EH_PERDEV_MASK); ata_eh_clear_action(link, dev, &link->eh_context.i, ATA_EH_PERDEV_MASK); + ehc->saved_xfer_mode[dev->devno] = 0; + ehc->saved_ncq_enabled &= ~(1 << dev->devno); spin_unlock_irqrestore(ap->lock, flags); }