]> rtime.felk.cvut.cz Git - zynq/linux.git/commitdiff
ide: Do not disable interrupts for PREEMPT-RT
authorIngo Molnar <mingo@elte.hu>
Fri, 3 Jul 2009 13:30:16 +0000 (08:30 -0500)
committerMichal Sojka <sojka@merica.cz>
Sun, 13 Sep 2015 07:47:07 +0000 (09:47 +0200)
Use the local_irq_*_nort variants.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
drivers/ide/alim15x3.c
drivers/ide/hpt366.c
drivers/ide/ide-io-std.c
drivers/ide/ide-io.c
drivers/ide/ide-iops.c
drivers/ide/ide-probe.c
drivers/ide/ide-taskfile.c

index 36f76e28a0bfa0df067046f9def48cecb12f544e..394f142f90c7ba71822636c92227d59d79f60ae1 100644 (file)
@@ -234,7 +234,7 @@ static int init_chipset_ali15x3(struct pci_dev *dev)
 
        isa_dev = pci_get_device(PCI_VENDOR_ID_AL, PCI_DEVICE_ID_AL_M1533, NULL);
 
-       local_irq_save(flags);
+       local_irq_save_nort(flags);
 
        if (m5229_revision < 0xC2) {
                /*
@@ -325,7 +325,7 @@ out:
        }
        pci_dev_put(north);
        pci_dev_put(isa_dev);
-       local_irq_restore(flags);
+       local_irq_restore_nort(flags);
        return 0;
 }
 
index 696b6c1ec940fce29de2dc41d5d91d6b860467bf..0d0a96629b73238cd6e18a498231ed9a92366945 100644 (file)
@@ -1241,7 +1241,7 @@ static int init_dma_hpt366(ide_hwif_t *hwif,
 
        dma_old = inb(base + 2);
 
-       local_irq_save(flags);
+       local_irq_save_nort(flags);
 
        dma_new = dma_old;
        pci_read_config_byte(dev, hwif->channel ? 0x4b : 0x43, &masterdma);
@@ -1252,7 +1252,7 @@ static int init_dma_hpt366(ide_hwif_t *hwif,
        if (dma_new != dma_old)
                outb(dma_new, base + 2);
 
-       local_irq_restore(flags);
+       local_irq_restore_nort(flags);
 
        printk(KERN_INFO "    %s: BM-DMA at 0x%04lx-0x%04lx\n",
                         hwif->name, base, base + 7);
index 19763977568c5d6fd7ecc87c3f4e7bc47fc0d85e..4169433faab5879bd9faac61109fe4e9c925e823 100644 (file)
@@ -175,7 +175,7 @@ void ide_input_data(ide_drive_t *drive, struct ide_cmd *cmd, void *buf,
                unsigned long uninitialized_var(flags);
 
                if ((io_32bit & 2) && !mmio) {
-                       local_irq_save(flags);
+                       local_irq_save_nort(flags);
                        ata_vlb_sync(io_ports->nsect_addr);
                }
 
@@ -186,7 +186,7 @@ void ide_input_data(ide_drive_t *drive, struct ide_cmd *cmd, void *buf,
                        insl(data_addr, buf, words);
 
                if ((io_32bit & 2) && !mmio)
-                       local_irq_restore(flags);
+                       local_irq_restore_nort(flags);
 
                if (((len + 1) & 3) < 2)
                        return;
@@ -219,7 +219,7 @@ void ide_output_data(ide_drive_t *drive, struct ide_cmd *cmd, void *buf,
                unsigned long uninitialized_var(flags);
 
                if ((io_32bit & 2) && !mmio) {
-                       local_irq_save(flags);
+                       local_irq_save_nort(flags);
                        ata_vlb_sync(io_ports->nsect_addr);
                }
 
@@ -230,7 +230,7 @@ void ide_output_data(ide_drive_t *drive, struct ide_cmd *cmd, void *buf,
                        outsl(data_addr, buf, words);
 
                if ((io_32bit & 2) && !mmio)
-                       local_irq_restore(flags);
+                       local_irq_restore_nort(flags);
 
                if (((len + 1) & 3) < 2)
                        return;
index 177db6d5b2f58972e5dbcf3f5cc1f99cf4f27079..079ae6bebf18b09c1081b77fcf17bbceb8e74aca 100644 (file)
@@ -659,7 +659,7 @@ void ide_timer_expiry (unsigned long data)
                /* disable_irq_nosync ?? */
                disable_irq(hwif->irq);
                /* local CPU only, as if we were handling an interrupt */
-               local_irq_disable();
+               local_irq_disable_nort();
                if (hwif->polling) {
                        startstop = handler(drive);
                } else if (drive_is_ready(drive)) {
index 376f2dc410c5b80df744d71e5efb921c6390d7bb..f014dd1b73dc734313da9f145f0280bec64ee554 100644 (file)
@@ -129,12 +129,12 @@ int __ide_wait_stat(ide_drive_t *drive, u8 good, u8 bad,
                                if ((stat & ATA_BUSY) == 0)
                                        break;
 
-                               local_irq_restore(flags);
+                               local_irq_restore_nort(flags);
                                *rstat = stat;
                                return -EBUSY;
                        }
                }
-               local_irq_restore(flags);
+               local_irq_restore_nort(flags);
        }
        /*
         * Allow status to settle, then read it again.
index a3d3b1733c49c667f7f1495d9dfef23623e28fa0..3eff5828ecfc71ee28d49ef846a5f5f607ec8392 100644 (file)
@@ -196,10 +196,10 @@ static void do_identify(ide_drive_t *drive, u8 cmd, u16 *id)
        int bswap = 1;
 
        /* local CPU only; some systems need this */
-       local_irq_save(flags);
+       local_irq_save_nort(flags);
        /* read 512 bytes of id info */
        hwif->tp_ops->input_data(drive, NULL, id, SECTOR_SIZE);
-       local_irq_restore(flags);
+       local_irq_restore_nort(flags);
 
        drive->dev_flags |= IDE_DFLAG_ID_READ;
 #ifdef DEBUG
index dabb88b1cbec69052d32eb5e84b7f647534a4599..2cecea72520a453a9e5d167bba66243aa8b4774b 100644 (file)
@@ -250,7 +250,7 @@ void ide_pio_bytes(ide_drive_t *drive, struct ide_cmd *cmd,
 
                page_is_high = PageHighMem(page);
                if (page_is_high)
-                       local_irq_save(flags);
+                       local_irq_save_nort(flags);
 
                buf = kmap_atomic(page) + offset;
 
@@ -271,7 +271,7 @@ void ide_pio_bytes(ide_drive_t *drive, struct ide_cmd *cmd,
                kunmap_atomic(buf);
 
                if (page_is_high)
-                       local_irq_restore(flags);
+                       local_irq_restore_nort(flags);
 
                len -= nr_bytes;
        }
@@ -414,7 +414,7 @@ static ide_startstop_t pre_task_out_intr(ide_drive_t *drive,
        }
 
        if ((drive->dev_flags & IDE_DFLAG_UNMASK) == 0)
-               local_irq_disable();
+               local_irq_disable_nort();
 
        ide_set_handler(drive, &task_pio_intr, WAIT_WORSTCASE);