aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/ide-io.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ide/ide-io.c')
-rw-r--r--drivers/ide/ide-io.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c
index e4e3a0e3201e..bba4297f2f03 100644
--- a/drivers/ide/ide-io.c
+++ b/drivers/ide/ide-io.c
@@ -704,7 +704,7 @@ void ide_timer_expiry (unsigned long data)
704 } 704 }
705 spin_lock_irq(&hwif->lock); 705 spin_lock_irq(&hwif->lock);
706 enable_irq(hwif->irq); 706 enable_irq(hwif->irq);
707 if (startstop == ide_stopped) { 707 if (startstop == ide_stopped && hwif->polling == 0) {
708 rq_in_flight = hwif->rq; 708 rq_in_flight = hwif->rq;
709 hwif->rq = NULL; 709 hwif->rq = NULL;
710 ide_unlock_port(hwif); 710 ide_unlock_port(hwif);
@@ -879,7 +879,7 @@ irqreturn_t ide_intr (int irq, void *dev_id)
879 * same irq as is currently being serviced here, and Linux 879 * same irq as is currently being serviced here, and Linux
880 * won't allow another of the same (on any CPU) until we return. 880 * won't allow another of the same (on any CPU) until we return.
881 */ 881 */
882 if (startstop == ide_stopped) { 882 if (startstop == ide_stopped && hwif->polling == 0) {
883 BUG_ON(hwif->handler); 883 BUG_ON(hwif->handler);
884 rq_in_flight = hwif->rq; 884 rq_in_flight = hwif->rq;
885 hwif->rq = NULL; 885 hwif->rq = NULL;