• Julia Lawall's avatar
    staging: Use GFP_ATOMIC when a lock is held · 0aa3f139
    Julia Lawall authored
    In each case, the containing function is only called from one place, where
    a spin lock is held.
    
    The semantic patch that makes this change is as follows:
    (http://coccinelle.lip6.fr/)
    
    // <smpl>
    @gfp exists@
    identifier fn;
    position p;
    @@
    
    fn(...) {
    ... when != spin_unlock
        when any
      GFP_KERNEL@p
     ... when any
    }
    
    @locked@
    identifier gfp.fn;
    @@
    
    spin_lock(...)
    ... when != spin_unlock
    fn(...)
    
    @depends on locked@
    position gfp.p;
    @@
    
    - GFP_KERNEL@p
    + GFP_ATOMIC
    // </smpl>
    Signed-off-by: default avatarJulia Lawall <julia@diku.dk>
    Cc: Jonathan Cameron <jic23@cam.ac.uk>
    Cc: Marek Lindner <lindner_marek@yahoo.de>
    Cc: Martyn Welch <martyn.welch@ge.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    0aa3f139
vme_tsi148.c 70 KB