• Y
    potential compiler error, irqfunc caller sites update · 0da2f0f1
    Yoann Padioleau 提交于
    In 7d12e780 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: NYoann 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: NAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
    0da2f0f1
firestream.c 54.1 KB