btrfs: send: remove stale code when checking for shared extents
authorFilipe Manana <fdmanana@suse.com>
Mon, 11 Jan 2021 11:42:32 +0000 (11:42 +0000)
committerDavid Sterba <dsterba@suse.com>
Mon, 8 Feb 2021 21:58:51 +0000 (22:58 +0100)
After commit 040ee6120cb670 ("Btrfs: send, improve clone range") we do not
use anymore the data_offset field of struct backref_ctx, as after that we
do all the necessary checks for the data offset of file extent items at
clone_range(). Since there are no more users of data_offset from that
structure, remove it.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/send.c

index 78a3537..3bcbf2b 100644 (file)
@@ -1191,9 +1191,6 @@ struct backref_ctx {
        /* may be truncated in case it's the last extent in a file */
        u64 extent_len;
 
-       /* data offset in the file extent item */
-       u64 data_offset;
-
        /* Just to check for bugs in backref resolving */
        int found_itself;
 };
@@ -1401,19 +1398,6 @@ static int find_extent_clone(struct send_ctx *sctx,
        backref_ctx->cur_offset = data_offset;
        backref_ctx->found_itself = 0;
        backref_ctx->extent_len = num_bytes;
-       /*
-        * For non-compressed extents iterate_extent_inodes() gives us extent
-        * offsets that already take into account the data offset, but not for
-        * compressed extents, since the offset is logical and not relative to
-        * the physical extent locations. We must take this into account to
-        * avoid sending clone offsets that go beyond the source file's size,
-        * which would result in the clone ioctl failing with -EINVAL on the
-        * receiving end.
-        */
-       if (compressed == BTRFS_COMPRESS_NONE)
-               backref_ctx->data_offset = 0;
-       else
-               backref_ctx->data_offset = btrfs_file_extent_offset(eb, fi);
 
        /*
         * The last extent of a file may be too large due to page alignment.