linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / arch / sparc / kernel / sun4d_irq.c
index 5e9a705..5262134 100644 (file)
@@ -72,7 +72,7 @@ static int sbus_to_pil[] = {
 
 static int nsbi;
 #ifdef CONFIG_SMP
-spinlock_t sun4d_imsk_lock = SPIN_LOCK_UNLOCKED;
+DEFINE_SPINLOCK(sun4d_imsk_lock);
 #endif
 
 int show_sun4d_interrupts(struct seq_file *p, void *v)
@@ -216,7 +216,7 @@ void sun4d_handler_irq(int irq, struct pt_regs * regs)
        if (!sbusl) {
                action = *(irq + irq_action);
                if (!action)
-                       unexpected_irq(irq, 0, regs);
+                       unexpected_irq(irq, NULL, regs);
                do {
                        action->handler(irq, action->dev_id, regs);
                        action = action->next;
@@ -243,7 +243,7 @@ void sun4d_handler_irq(int irq, struct pt_regs * regs)
                                                action = actionp->action;
                                                
                                                if (!action)
-                                                       unexpected_irq(irq, 0, regs);
+                                                       unexpected_irq(irq, NULL, regs);
                                                do {
                                                        action->handler(irq, action->dev_id, regs);
                                                        action = action->next;
@@ -336,7 +336,7 @@ int sun4d_request_irq(unsigned int irq,
 
        action->handler = handler;
        action->flags = irqflags;
-       action->mask = 0;
+       cpus_clear(action->mask);
        action->name = devname;
        action->next = NULL;
        action->dev_id = dev_id;