* path must point to the dir item when called.
  */
 static int iterate_dir_item(struct btrfs_root *root, struct btrfs_path *path,
-                           struct btrfs_key *found_key,
                            iterate_dir_item_t iterate, void *ctx)
 {
        int ret = 0;
        return ret;
 }
 
-static int record_ref(struct btrfs_root *root, int num, u64 dir, int index,
-                     struct fs_path *name, void *ctx, struct list_head *refs)
+static int record_ref(struct btrfs_root *root, u64 dir, struct fs_path *name,
+                     void *ctx, struct list_head *refs)
 {
        int ret = 0;
        struct send_ctx *sctx = ctx;
                            void *ctx)
 {
        struct send_ctx *sctx = ctx;
-       return record_ref(sctx->send_root, num, dir, index, name,
-                         ctx, &sctx->new_refs);
+       return record_ref(sctx->send_root, dir, name, ctx, &sctx->new_refs);
 }
 
 
                                void *ctx)
 {
        struct send_ctx *sctx = ctx;
-       return record_ref(sctx->parent_root, num, dir, index, name,
-                         ctx, &sctx->deleted_refs);
+       return record_ref(sctx->parent_root, dir, name, ctx,
+                         &sctx->deleted_refs);
 }
 
 static int record_new_ref(struct send_ctx *sctx)
        int ret = 0;
 
        ret = iterate_dir_item(sctx->send_root, sctx->left_path,
-                              sctx->cmp_key, __process_new_xattr, sctx);
+                              __process_new_xattr, sctx);
 
        return ret;
 }
 static int process_deleted_xattr(struct send_ctx *sctx)
 {
        return iterate_dir_item(sctx->parent_root, sctx->right_path,
-                               sctx->cmp_key, __process_deleted_xattr, sctx);
+                               __process_deleted_xattr, sctx);
 }
 
 struct find_xattr_ctx {
        ctx.found_data = NULL;
        ctx.found_data_len = 0;
 
-       ret = iterate_dir_item(root, path, key, __find_xattr, &ctx);
+       ret = iterate_dir_item(root, path, __find_xattr, &ctx);
        if (ret < 0)
                return ret;
 
        int ret = 0;
 
        ret = iterate_dir_item(sctx->send_root, sctx->left_path,
-                       sctx->cmp_key, __process_changed_new_xattr, sctx);
+                       __process_changed_new_xattr, sctx);
        if (ret < 0)
                goto out;
        ret = iterate_dir_item(sctx->parent_root, sctx->right_path,
-                       sctx->cmp_key, __process_changed_deleted_xattr, sctx);
+                       __process_changed_deleted_xattr, sctx);
 
 out:
        return ret;
                        goto out;
                }
 
-               ret = iterate_dir_item(root, path, &found_key,
-                                      __process_new_xattr, sctx);
+               ret = iterate_dir_item(root, path, __process_new_xattr, sctx);
                if (ret < 0)
                        goto out;