} else {
                WARN_ON(trans->transid != btrfs_header_generation(parent));
                btrfs_tree_mod_log_insert_key(parent, parent_slot,
-                                             BTRFS_MOD_LOG_KEY_REPLACE, GFP_NOFS);
+                                             BTRFS_MOD_LOG_KEY_REPLACE);
                btrfs_set_node_blockptr(parent, parent_slot,
                                        cow->start);
                btrfs_set_node_ptr_generation(parent, parent_slot,
                        struct btrfs_disk_key right_key;
                        btrfs_node_key(right, &right_key, 0);
                        ret = btrfs_tree_mod_log_insert_key(parent, pslot + 1,
-                                       BTRFS_MOD_LOG_KEY_REPLACE, GFP_NOFS);
+                                       BTRFS_MOD_LOG_KEY_REPLACE);
                        BUG_ON(ret < 0);
                        btrfs_set_node_key(parent, &right_key, pslot + 1);
                        btrfs_mark_buffer_dirty(parent);
                struct btrfs_disk_key mid_key;
                btrfs_node_key(mid, &mid_key, 0);
                ret = btrfs_tree_mod_log_insert_key(parent, pslot,
-                               BTRFS_MOD_LOG_KEY_REPLACE, GFP_NOFS);
+                                                   BTRFS_MOD_LOG_KEY_REPLACE);
                BUG_ON(ret < 0);
                btrfs_set_node_key(parent, &mid_key, pslot);
                btrfs_mark_buffer_dirty(parent);
                        orig_slot += left_nr;
                        btrfs_node_key(mid, &disk_key, 0);
                        ret = btrfs_tree_mod_log_insert_key(parent, pslot,
-                                       BTRFS_MOD_LOG_KEY_REPLACE, GFP_NOFS);
+                                       BTRFS_MOD_LOG_KEY_REPLACE);
                        BUG_ON(ret < 0);
                        btrfs_set_node_key(parent, &disk_key, pslot);
                        btrfs_mark_buffer_dirty(parent);
 
                        btrfs_node_key(right, &disk_key, 0);
                        ret = btrfs_tree_mod_log_insert_key(parent, pslot + 1,
-                                       BTRFS_MOD_LOG_KEY_REPLACE, GFP_NOFS);
+                                       BTRFS_MOD_LOG_KEY_REPLACE);
                        BUG_ON(ret < 0);
                        btrfs_set_node_key(parent, &disk_key, pslot + 1);
                        btrfs_mark_buffer_dirty(parent);
                        break;
                t = path->nodes[i];
                ret = btrfs_tree_mod_log_insert_key(t, tslot,
-                               BTRFS_MOD_LOG_KEY_REPLACE, GFP_NOFS);
+                                                   BTRFS_MOD_LOG_KEY_REPLACE);
                BUG_ON(ret < 0);
                btrfs_set_node_key(t, key, tslot);
                btrfs_mark_buffer_dirty(path->nodes[i]);
        }
        if (level) {
                ret = btrfs_tree_mod_log_insert_key(lower, slot,
-                                           BTRFS_MOD_LOG_KEY_ADD, GFP_NOFS);
+                                                   BTRFS_MOD_LOG_KEY_ADD);
                BUG_ON(ret < 0);
        }
        btrfs_set_node_key(lower, key, slot);
                              (nritems - slot - 1));
        } else if (level) {
                ret = btrfs_tree_mod_log_insert_key(parent, slot,
-                               BTRFS_MOD_LOG_KEY_REMOVE, GFP_NOFS);
+                                                   BTRFS_MOD_LOG_KEY_REMOVE);
                BUG_ON(ret < 0);
        }
 
 
 
 static struct tree_mod_elem *alloc_tree_mod_elem(struct extent_buffer *eb,
                                                 int slot,
-                                                enum btrfs_mod_log_op op,
-                                                gfp_t flags)
+                                                enum btrfs_mod_log_op op)
 {
        struct tree_mod_elem *tm;
 
-       tm = kzalloc(sizeof(*tm), flags);
+       tm = kzalloc(sizeof(*tm), GFP_NOFS);
        if (!tm)
                return NULL;
 
 }
 
 int btrfs_tree_mod_log_insert_key(struct extent_buffer *eb, int slot,
-                                 enum btrfs_mod_log_op op, gfp_t flags)
+                                 enum btrfs_mod_log_op op)
 {
        struct tree_mod_elem *tm;
        int ret;
        if (!tree_mod_need_log(eb->fs_info, eb))
                return 0;
 
-       tm = alloc_tree_mod_elem(eb, slot, op, flags);
+       tm = alloc_tree_mod_elem(eb, slot, op);
        if (!tm)
                return -ENOMEM;
 
 
        for (i = 0; i + dst_slot < src_slot && i < nr_items; i++) {
                tm_list[i] = alloc_tree_mod_elem(eb, i + dst_slot,
-                               BTRFS_MOD_LOG_KEY_REMOVE_WHILE_MOVING, GFP_NOFS);
+                               BTRFS_MOD_LOG_KEY_REMOVE_WHILE_MOVING);
                if (!tm_list[i]) {
                        ret = -ENOMEM;
                        goto free_tms;
                }
                for (i = 0; i < nritems; i++) {
                        tm_list[i] = alloc_tree_mod_elem(old_root, i,
-                           BTRFS_MOD_LOG_KEY_REMOVE_WHILE_FREEING, GFP_NOFS);
+                           BTRFS_MOD_LOG_KEY_REMOVE_WHILE_FREEING);
                        if (!tm_list[i]) {
                                ret = -ENOMEM;
                                goto free_tms;
        tm_list_rem = tm_list + nr_items;
        for (i = 0; i < nr_items; i++) {
                tm_list_rem[i] = alloc_tree_mod_elem(src, i + src_offset,
-                   BTRFS_MOD_LOG_KEY_REMOVE, GFP_NOFS);
+                                                    BTRFS_MOD_LOG_KEY_REMOVE);
                if (!tm_list_rem[i]) {
                        ret = -ENOMEM;
                        goto free_tms;
                }
 
                tm_list_add[i] = alloc_tree_mod_elem(dst, i + dst_offset,
-                                               BTRFS_MOD_LOG_KEY_ADD, GFP_NOFS);
+                                                    BTRFS_MOD_LOG_KEY_ADD);
                if (!tm_list_add[i]) {
                        ret = -ENOMEM;
                        goto free_tms;
 
        for (i = 0; i < nritems; i++) {
                tm_list[i] = alloc_tree_mod_elem(eb, i,
-                   BTRFS_MOD_LOG_KEY_REMOVE_WHILE_FREEING, GFP_NOFS);
+                                   BTRFS_MOD_LOG_KEY_REMOVE_WHILE_FREEING);
                if (!tm_list[i]) {
                        ret = -ENOMEM;
                        goto free_tms;