]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - kernel/irq/spurious.c
Merge branch 'for-linus/samsung' of git://git.fluff.org/bjdooks/linux
[mv-sheeva.git] / kernel / irq / spurious.c
index e49ea1c5232d82bce90b0cbcf708cf685e82b80f..89fb90ae534f551defdda8e43d7f1d274cb12b9e 100644 (file)
@@ -28,7 +28,7 @@ static int try_one_irq(int irq, struct irq_desc *desc)
        struct irqaction *action;
        int ok = 0, work = 0;
 
-       spin_lock(&desc->lock);
+       raw_spin_lock(&desc->lock);
        /* Already running on another processor */
        if (desc->status & IRQ_INPROGRESS) {
                /*
@@ -37,13 +37,13 @@ static int try_one_irq(int irq, struct irq_desc *desc)
                 */
                if (desc->action && (desc->action->flags & IRQF_SHARED))
                        desc->status |= IRQ_PENDING;
-               spin_unlock(&desc->lock);
+               raw_spin_unlock(&desc->lock);
                return ok;
        }
        /* Honour the normal IRQ locking */
        desc->status |= IRQ_INPROGRESS;
        action = desc->action;
-       spin_unlock(&desc->lock);
+       raw_spin_unlock(&desc->lock);
 
        while (action) {
                /* Only shared IRQ handlers are safe to call */
@@ -56,7 +56,7 @@ static int try_one_irq(int irq, struct irq_desc *desc)
        }
        local_irq_disable();
        /* Now clean up the flags */
-       spin_lock(&desc->lock);
+       raw_spin_lock(&desc->lock);
        action = desc->action;
 
        /*
@@ -68,9 +68,9 @@ static int try_one_irq(int irq, struct irq_desc *desc)
                 * Perform real IRQ processing for the IRQ we deferred
                 */
                work = 1;
-               spin_unlock(&desc->lock);
+               raw_spin_unlock(&desc->lock);
                handle_IRQ_event(irq, action);
-               spin_lock(&desc->lock);
+               raw_spin_lock(&desc->lock);
                desc->status &= ~IRQ_PENDING;
        }
        desc->status &= ~IRQ_INPROGRESS;
@@ -80,7 +80,7 @@ static int try_one_irq(int irq, struct irq_desc *desc)
         */
        if (work && desc->chip && desc->chip->end)
                desc->chip->end(irq);
-       spin_unlock(&desc->lock);
+       raw_spin_unlock(&desc->lock);
 
        return ok;
 }