                );
        my @replacements = ("ldv_spin_lock_irqsave",
                         "ldv_spin_lock_nested",
-@@ -1682,7 +1690,11 @@ sub process_cmd_cc()
+@@ -1809,7 +1817,11 @@ sub process_cmd_cc()
                         "ldv_spin_is_locked",
                         "ldv_spin_is_contended",
                         "ldv_spin_can_lock",

+    "\n#define ldv_atomic_dec_and_lock_macro(atomic,lock) ldv_atomic_dec_and_lock(lock,atomic)",
+                "void ldv_local_irq_disable(void);",
+                "void ldv_local_irq_enable(void);",
+                "void ldv_local_irq_save(void);",
+                "void ldv_local_irq_restore(void);"
                );
       my @keys = ("spin_lock_irqsave",
                "spin_lock_nested",
@@ -1661,7 +1665,11 @@ sub process_cmd_cc()
                "spin_is_locked",
                "spin_is_contended",
                "spin_can_lock",

--- a/rule-instrumentor/rule-instrumentor.pl
+++ b/rule-instrumentor/rule-instrumentor.pl
@@ -1738,8 +1738,8 @@ sub process_cmd_cc()
     # report visualization.
     print_debug_trace("Concatenate a common model with the first input file");
 
-    # Drity hack for 39_7 model; should be resolved with properly written aspect!
-    if ( $opt_model_id eq "39_7")
+    # Dirty hack for 39_7 and 116 models; should be resolved with properly written aspect!
+    if ( $opt_model_id eq "39_7" || $opt_model_id eq "116" )
     {
       my $in = $cmd->first_child($xml_cmd_in);
       my $in_file = $in->text;
@@ -1750,7 +1750,7 @@ sub process_cmd_cc()
       my @decls = ("void ldv_spin_lock_irqsave(spinlock_t *lock, unsigned long flags);",
                 "void ldv_spin_lock_nested(spinlock_t *lock, int subclass);",
                 "void ldv_spin_lock_nest_lock(spinlock_t *lock, void *map);",
-                "void ldv_spin_lock_irqsave_nested(spinlock_t *lock, int subclass);",
+                "void ldv_spin_lock_irqsave_nested(spinlock_t *lock, unsigned long flags, int subclass);",
                 "int ldv_spin_trylock_irqsave(spinlock_t *lock, unsigned long flags);",
                 "void ldv_spin_lock(spinlock_t *lock);",
                 "void ldv_spin_lock_bh(spinlock_t *lock);",
@@ -1767,7 +1767,11 @@ sub process_cmd_cc()
                 "int ldv_spin_is_contended(spinlock_t *lock);",
                 "int ldv_spin_can_lock(spinlock_t *lock);",
                 "int ldv_atomic_dec_and_lock(spinlock_t *lock, atomic_t *atomic);".
