Merge to Fedora kernel-2.6.7-1.492
[linux-2.6.git] / arch / ppc64 / kernel / irq.c
index 7335442..2f777d5 100644 (file)
@@ -68,8 +68,8 @@ irq_desc_t irq_desc[NR_IRQS] __cacheline_aligned = {
 };
 
 int __irq_offset_value;
-int ppc_spurious_interrupts = 0;
-unsigned long lpEvent_count = 0;
+int ppc_spurious_interrupts;
+unsigned long lpevent_count;
 
 int
 setup_irq(unsigned int irq, struct irqaction * new)
@@ -206,7 +206,7 @@ int request_irq(unsigned int irq,
 
        action->handler = handler;
        action->flags = irqflags;
-       action->mask = 0;
+       cpus_clear(action->mask);
        action->name = devname;
        action->dev_id = dev_id;
        action->next = NULL;
@@ -613,19 +613,19 @@ int do_IRQ(struct pt_regs *regs)
 
        lpaca = get_paca();
 #ifdef CONFIG_SMP
-       if (lpaca->xLpPaca.xIntDword.xFields.xIpiCnt) {
-               lpaca->xLpPaca.xIntDword.xFields.xIpiCnt = 0;
+       if (lpaca->lppaca.xIntDword.xFields.xIpiCnt) {
+               lpaca->lppaca.xIntDword.xFields.xIpiCnt = 0;
                iSeries_smp_message_recv(regs);
        }
 #endif /* CONFIG_SMP */
-       lpq = lpaca->lpQueuePtr;
+       lpq = lpaca->lpqueue_ptr;
        if (lpq && ItLpQueue_isLpIntPending(lpq))
-               lpEvent_count += ItLpQueue_process(lpq, regs);
+               lpevent_count += ItLpQueue_process(lpq, regs);
 
        irq_exit();
 
-       if (lpaca->xLpPaca.xIntDword.xFields.xDecrInt) {
-               lpaca->xLpPaca.xIntDword.xFields.xDecrInt = 0;
+       if (lpaca->lppaca.xIntDword.xFields.xDecrInt) {
+               lpaca->lppaca.xIntDword.xFields.xDecrInt = 0;
                /* Signal a fake decrementer interrupt */
                timer_interrupt(regs);
        }
@@ -738,7 +738,6 @@ static int irq_affinity_write_proc (struct file *file, const char __user *buffer
        irq_desc_t *desc = get_irq_desc(irq);
        int ret;
        cpumask_t new_value, tmp;
-       cpumask_t allcpus = CPU_MASK_ALL;
 
        if (!desc->handler->set_affinity)
                return -EIO;
@@ -753,7 +752,7 @@ static int irq_affinity_write_proc (struct file *file, const char __user *buffer
         * NR_CPUS == 32 and cpumask is a long), so we mask it here to
         * be consistent.
         */
-       cpus_and(new_value, new_value, allcpus);
+       cpus_and(new_value, new_value, CPU_MASK_ALL);
 
        /*
         * Grab lock here so cpu_online_map can't change, and also
@@ -808,11 +807,10 @@ static int prof_cpu_mask_write_proc (struct file *file, const char __user *buffe
        {
                unsigned i;
                for (i=0; i<NR_CPUS; ++i) {
-                       if ( paca[i].prof_buffer && (new_value & 1) )
+                       if ( paca[i].prof_buffer && cpu_isset(i, new_value) )
                                paca[i].prof_enabled = 1;
                        else
                                paca[i].prof_enabled = 0;
-                       new_value >>= 1;
                }
        }
 #endif
@@ -857,7 +855,7 @@ void init_irq_proc (void)
        int i;
 
        /* create /proc/irq */
-       root_irq_dir = proc_mkdir("irq", 0);
+       root_irq_dir = proc_mkdir("irq", NULL);
 
        /* create /proc/irq/prof_cpu_mask */
        entry = create_proc_entry("prof_cpu_mask", 0600, root_irq_dir);