diff options
Diffstat (limited to 'drivers/ide')
-rw-r--r-- | drivers/ide/ide-iops.c | 3 | ||||
-rw-r--r-- | drivers/ide/ide-probe.c | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/drivers/ide/ide-iops.c b/drivers/ide/ide-iops.c index 386080ee4608..44ad03bf9cb4 100644 --- a/drivers/ide/ide-iops.c +++ b/drivers/ide/ide-iops.c | |||
@@ -503,7 +503,8 @@ static int __ide_wait_stat(ide_drive_t *drive, u8 good, u8 bad, unsigned long ti | |||
503 | stat = tp_ops->read_status(hwif); | 503 | stat = tp_ops->read_status(hwif); |
504 | 504 | ||
505 | if (stat & ATA_BUSY) { | 505 | if (stat & ATA_BUSY) { |
506 | local_irq_set(flags); | 506 | local_irq_save(flags); |
507 | local_irq_enable_in_hardirq(); | ||
507 | timeout += jiffies; | 508 | timeout += jiffies; |
508 | while ((stat = tp_ops->read_status(hwif)) & ATA_BUSY) { | 509 | while ((stat = tp_ops->read_status(hwif)) & ATA_BUSY) { |
509 | if (time_after(jiffies, timeout)) { | 510 | if (time_after(jiffies, timeout)) { |
diff --git a/drivers/ide/ide-probe.c b/drivers/ide/ide-probe.c index 9dfa99f062aa..2fca32ed576f 100644 --- a/drivers/ide/ide-probe.c +++ b/drivers/ide/ide-probe.c | |||
@@ -796,7 +796,8 @@ static int ide_probe_port(ide_hwif_t *hwif) | |||
796 | if (irqd) | 796 | if (irqd) |
797 | disable_irq(hwif->irq); | 797 | disable_irq(hwif->irq); |
798 | 798 | ||
799 | local_irq_set(flags); | 799 | local_irq_save(flags); |
800 | local_irq_enable_in_hardirq(); | ||
800 | 801 | ||
801 | if (ide_port_wait_ready(hwif) == -EBUSY) | 802 | if (ide_port_wait_ready(hwif) == -EBUSY) |
802 | printk(KERN_DEBUG "%s: Wait for ready failed before probe !\n", hwif->name); | 803 | printk(KERN_DEBUG "%s: Wait for ready failed before probe !\n", hwif->name); |