summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShane Huang <shane.huang@amd.com>2013-06-08 16:00:16 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-07-20 17:16:08 -0700
commit95a5e329938d9a57365ff6d84de17772910ea9a6 (patch)
treeaa46ecb97aa17f6450e07fceafdb4ec99a83d4ea
parent7fe6b2b4994fcdede2274c23ad0886f2cb3549f3 (diff)
ahci: remove pmp link online check in FBS EH
commit 912b9ac683b112615d5605686f1dc086402ce9f7 upstream. ata_link_online() check in ahci_error_intr() is unnecessary, it should be removed otherwise may lead to lockup with FBS enabled PMP. http://marc.info/?l=linux-ide&m=137050421603272&w=2 Reported-by: Yu Liu <liuyu.ac@gmail.com> Signed-off-by: Shane Huang <shane.huang@amd.com> Signed-off-by: Tejun Heo <tj@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/ata/libahci.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c
index 34c82167b962..09f60471f517 100644
--- a/drivers/ata/libahci.c
+++ b/drivers/ata/libahci.c
@@ -1560,8 +1560,7 @@ static void ahci_error_intr(struct ata_port *ap, u32 irq_stat)
u32 fbs = readl(port_mmio + PORT_FBS);
int pmp = fbs >> PORT_FBS_DWE_OFFSET;
- if ((fbs & PORT_FBS_SDE) && (pmp < ap->nr_pmp_links) &&
- ata_link_online(&ap->pmp_link[pmp])) {
+ if ((fbs & PORT_FBS_SDE) && (pmp < ap->nr_pmp_links)) {
link = &ap->pmp_link[pmp];
fbs_need_dec = true;
}