[PATCH] sata_sil: add controller unplug detection in sil_interrupt()

Short-circuit interrupt handling if BMDMA2 is reported as 0xffffffff
indicating device removal.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
Tejun Heo 2006-06-12 14:18:51 +09:00 committed by Jeff Garzik
parent 3b01b8af24
commit 23fa961809

View File

@ -419,7 +419,8 @@ static irqreturn_t sil_interrupt(int irq, void *dev_instance,
if (unlikely(!ap || ap->flags & ATA_FLAG_DISABLED)) if (unlikely(!ap || ap->flags & ATA_FLAG_DISABLED))
continue; continue;
if (!(bmdma2 & (SIL_DMA_COMPLETE | SIL_DMA_SATA_IRQ))) if (bmdma2 == 0xffffffff ||
!(bmdma2 & (SIL_DMA_COMPLETE | SIL_DMA_SATA_IRQ)))
continue; continue;
sil_host_intr(ap, bmdma2); sil_host_intr(ap, bmdma2);