[SPARC64]: bp->pil can never be zero
authorDavid S. Miller <davem@davemloft.net>
Tue, 20 Jun 2006 08:20:30 +0000 (01:20 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 20 Jun 2006 08:20:30 +0000 (01:20 -0700)
Only pil0_dummy_bucket had a pil of zero and we just killed that
off, so we can delete all special case code that used bp->pil==0
as a way to identify a dummy bucket.

Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc64/kernel/irq.c

index 0fb1738a4f3f44161ced8c226e83f8ecd24a3b0f..ad134bbc151c2e2e67d9635b84437628f3d87c71 100644 (file)
@@ -633,23 +633,22 @@ static void process_bucket(struct ino_bucket *bp, struct pt_regs *regs)
                if (!action_mask)
                        break;
        }
-       if (bp->pil != 0) {
-               if (tlb_type == hypervisor) {
-                       unsigned int ino = __irq_ino(bp);
-                       int err;
 
-                       err = sun4v_intr_setstate(ino, HV_INTR_STATE_IDLE);
-                       if (err != HV_EOK)
-                               printk("sun4v_intr_setstate(%x): "
-                                      "err(%d)\n", ino, err);
-               } else {
-                       upa_writel(ICLR_IDLE, bp->iclr);
-               }
+       if (tlb_type == hypervisor) {
+               unsigned int ino = __irq_ino(bp);
+               int err;
 
-               /* Test and add entropy */
-               if (random & SA_SAMPLE_RANDOM)
-                       add_interrupt_randomness(bp->pil);
+               err = sun4v_intr_setstate(ino, HV_INTR_STATE_IDLE);
+               if (err != HV_EOK)
+                       printk("sun4v_intr_setstate(%x): "
+                              "err(%d)\n", ino, err);
+       } else {
+               upa_writel(ICLR_IDLE, bp->iclr);
        }
+
+       /* Test and add entropy */
+       if (random & SA_SAMPLE_RANDOM)
+               add_interrupt_randomness(bp->pil);
 out:
        bp->flags &= ~IBF_INPROGRESS;
 }