struct btrfs_key *ins, int ref_mod);
 static int alloc_reserved_tree_block(struct btrfs_trans_handle *trans,
                                     struct btrfs_delayed_ref_node *node,
-                                    u64 flags, struct btrfs_disk_key *key);
+                                    struct btrfs_delayed_extent_op *extent_op);
 static int do_chunk_alloc(struct btrfs_trans_handle *trans,
                          struct btrfs_fs_info *fs_info, u64 flags,
                          int force);
        }
        if (node->action == BTRFS_ADD_DELAYED_REF && insert_reserved) {
                BUG_ON(!extent_op || !extent_op->update_flags);
-               ret = alloc_reserved_tree_block(trans, node,
-                                               extent_op->flags_to_set,
-                                               &extent_op->key);
+               ret = alloc_reserved_tree_block(trans, node, extent_op);
        } else if (node->action == BTRFS_ADD_DELAYED_REF) {
                ret = __btrfs_inc_extent_ref(trans, fs_info, node,
                                             parent, ref_root,
 
 static int alloc_reserved_tree_block(struct btrfs_trans_handle *trans,
                                     struct btrfs_delayed_ref_node *node,
-                                    u64 flags, struct btrfs_disk_key *key)
+                                    struct btrfs_delayed_extent_op *extent_op)
 {
        struct btrfs_fs_info *fs_info = trans->fs_info;
        int ret;
        u32 size = sizeof(*extent_item) + sizeof(*iref);
        u64 num_bytes;
        u64 parent;
+       u64 flags = extent_op->flags_to_set;
        bool skinny_metadata = btrfs_fs_incompat(fs_info, SKINNY_METADATA);
 
        ref = btrfs_delayed_node_to_tree_ref(node);
                iref = (struct btrfs_extent_inline_ref *)(extent_item + 1);
        } else {
                block_info = (struct btrfs_tree_block_info *)(extent_item + 1);
-               btrfs_set_tree_block_key(leaf, block_info, key);
+               btrfs_set_tree_block_key(leaf, block_info, &extent_op->key);
                btrfs_set_tree_block_level(leaf, block_info, ref->level);
                iref = (struct btrfs_extent_inline_ref *)(block_info + 1);
        }