Commit 0da2f0f164f098bb4447c714b552ac1681b2d6e8

Authored by Yoann Padioleau
Committed by Linus Torvalds
1 parent 071922c08c

potential compiler error, irqfunc caller sites update

In 7d12e780e003f93433d49ce78cfedf4b4c52adc5 David Howells performed
this evolution:
 "IRQ: Maintain regs pointer globally rather than passing to IRQ handlers"

He correctly updated many of the function definitions that were using this
extra regs pointer parameter but forgot to update some caller sites of
those functions.  The reason the modifications was not properly done on all
drivers is that some drivers were rarely compiled because they are for
AMIGA, or that some code sites were inside #ifdefs where the option is not
set or inside #if 0.

Here is the semantic patch that found the occurences
and fixed the problem.

@ rule1 @
identifier fn;
identifier irq, dev_id;
typedef irqreturn_t;
@@

static irqreturn_t fn(int irq, void *dev_id)
{
   ...
}

@@
identifier rule1.fn;
expression E1, E2, E3;
@@

 fn(E1, E2
-   ,E3
   )

Signed-off-by: Yoann Padioleau <padator@wanadoo.fr>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jeff Garzik <jeff@garzik.org>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Showing 5 changed files with 5 additions and 5 deletions Side-by-side Diff

drivers/atm/firestream.c
... ... @@ -1654,7 +1654,7 @@
1654 1654 {
1655 1655 struct fs_dev *dev = (struct fs_dev *) data;
1656 1656  
1657   - fs_irq (0, dev, NULL);
  1657 + fs_irq (0, dev);
1658 1658 dev->timer.expires = jiffies + FS_POLL_FREQ;
1659 1659 add_timer (&dev->timer);
1660 1660 }
drivers/net/arm/am79c961a.c
... ... @@ -634,7 +634,7 @@
634 634 {
635 635 unsigned long flags;
636 636 local_irq_save(flags);
637   - am79c961_interrupt(dev->irq, dev, NULL);
  637 + am79c961_interrupt(dev->irq, dev);
638 638 local_irq_restore(flags);
639 639 }
640 640 #endif
drivers/net/ixp2000/ixpdev.c
... ... @@ -222,7 +222,7 @@
222 222 static void ixpdev_poll_controller(struct net_device *dev)
223 223 {
224 224 disable_irq(IRQ_IXP2000_THDA0);
225   - ixpdev_interrupt(IRQ_IXP2000_THDA0, dev, NULL);
  225 + ixpdev_interrupt(IRQ_IXP2000_THDA0, dev);
226 226 enable_irq(IRQ_IXP2000_THDA0);
227 227 }
228 228 #endif
drivers/net/sb1250-mac.c
... ... @@ -1159,7 +1159,7 @@
1159 1159  
1160 1160 __raw_writeq(0, sc->sbm_imr);
1161 1161  
1162   - sbmac_intr(irq, netdev, NULL);
  1162 + sbmac_intr(irq, netdev);
1163 1163  
1164 1164 #ifdef CONFIG_SBMAC_COALESCE
1165 1165 __raw_writeq(((M_MAC_INT_EOP_COUNT | M_MAC_INT_EOP_TIMER) << S_MAC_TX_CH0) |
drivers/usb/misc/uss720.c
... ... @@ -336,7 +336,7 @@
336 336 memcpy(priv->reg, buffer, 4);
337 337 /* if nAck interrupts are enabled and we have an interrupt, call the interrupt procedure */
338 338 if (priv->reg[2] & priv->reg[1] & 0x10)
339   - parport_generic_irq(0, pp, NULL);
  339 + parport_generic_irq(0, pp);
340 340 return 1;
341 341 }
342 342 #endif