Author: Julia Lawall <julia@diku.dk> The function inittiger is only called from nj_init_card, where a lock is held. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @gfp exists@ identifier fn; position p; @@ fn(…) { … when != spin_unlock_irqrestore when any GFP_KERNEL@p … when any } @locked@ identifier gfp.fn; @@ spin_lock_irqsave(…) … …