Commit 1a62b43c authored by Steven Rostedt's avatar Steven Rostedt Committed by Thomas Gleixner

ata: Do not disable interrupts in ide code for preempt-rt

Use the local_irq_*_nort variants.
Signed-off-by: default avatarSteven Rostedt <srostedt@redhat.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent c7f86f08
...@@ -837,9 +837,9 @@ unsigned int ata_sff_data_xfer_noirq(struct ata_device *dev, unsigned char *buf, ...@@ -837,9 +837,9 @@ unsigned int ata_sff_data_xfer_noirq(struct ata_device *dev, unsigned char *buf,
unsigned long flags; unsigned long flags;
unsigned int consumed; unsigned int consumed;
local_irq_save(flags); local_irq_save_nort(flags);
consumed = ata_sff_data_xfer(dev, buf, buflen, rw); consumed = ata_sff_data_xfer(dev, buf, buflen, rw);
local_irq_restore(flags); local_irq_restore_nort(flags);
return consumed; return consumed;
} }
...@@ -878,7 +878,7 @@ static void ata_pio_sector(struct ata_queued_cmd *qc) ...@@ -878,7 +878,7 @@ static void ata_pio_sector(struct ata_queued_cmd *qc)
unsigned long flags; unsigned long flags;
/* FIXME: use a bounce buffer */ /* FIXME: use a bounce buffer */
local_irq_save(flags); local_irq_save_nort(flags);
buf = kmap_atomic(page, KM_IRQ0); buf = kmap_atomic(page, KM_IRQ0);
/* do the actual data transfer */ /* do the actual data transfer */
...@@ -886,7 +886,7 @@ static void ata_pio_sector(struct ata_queued_cmd *qc) ...@@ -886,7 +886,7 @@ static void ata_pio_sector(struct ata_queued_cmd *qc)
do_write); do_write);
kunmap_atomic(buf, KM_IRQ0); kunmap_atomic(buf, KM_IRQ0);
local_irq_restore(flags); local_irq_restore_nort(flags);
} else { } else {
buf = page_address(page); buf = page_address(page);
ap->ops->sff_data_xfer(qc->dev, buf + offset, qc->sect_size, ap->ops->sff_data_xfer(qc->dev, buf + offset, qc->sect_size,
...@@ -1016,7 +1016,7 @@ next_sg: ...@@ -1016,7 +1016,7 @@ next_sg:
unsigned long flags; unsigned long flags;
/* FIXME: use bounce buffer */ /* FIXME: use bounce buffer */
local_irq_save(flags); local_irq_save_nort(flags);
buf = kmap_atomic(page, KM_IRQ0); buf = kmap_atomic(page, KM_IRQ0);
/* do the actual data transfer */ /* do the actual data transfer */
...@@ -1024,7 +1024,7 @@ next_sg: ...@@ -1024,7 +1024,7 @@ next_sg:
count, rw); count, rw);
kunmap_atomic(buf, KM_IRQ0); kunmap_atomic(buf, KM_IRQ0);
local_irq_restore(flags); local_irq_restore_nort(flags);
} else { } else {
buf = page_address(page); buf = page_address(page);
consumed = ap->ops->sff_data_xfer(dev, buf + offset, consumed = ap->ops->sff_data_xfer(dev, buf + offset,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment