btrfs: cow_file_range() num_bytes and disk_num_bytes are same
authorAnand Jain <Anand.Jain@oracle.com>
Thu, 15 Feb 2018 04:29:38 +0000 (12:29 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 9 Jul 2020 07:35:54 +0000 (09:35 +0200)
[ Upstream commit 3752d22fcea160cc2493e34f5e0e41cdd7fdd921 ]

This patch deletes local variable disk_num_bytes as its value
is same as num_bytes in the function cow_file_range().

Signed-off-by: Anand Jain <anand.jain@oracle.com>
Reviewed-by: Nikolay Borisov <nborisov@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/btrfs/inode.c

index c425443..6d63050 100644 (file)
@@ -947,7 +947,6 @@ static noinline int cow_file_range(struct inode *inode,
        u64 alloc_hint = 0;
        u64 num_bytes;
        unsigned long ram_size;
-       u64 disk_num_bytes;
        u64 cur_alloc_size;
        u64 blocksize = root->sectorsize;
        struct btrfs_key ins;
@@ -963,7 +962,6 @@ static noinline int cow_file_range(struct inode *inode,
 
        num_bytes = ALIGN(end - start + 1, blocksize);
        num_bytes = max(blocksize,  num_bytes);
-       disk_num_bytes = num_bytes;
 
        /* if this is a small write inside eof, kick off defrag */
        if (num_bytes < SZ_64K &&
@@ -992,16 +990,15 @@ static noinline int cow_file_range(struct inode *inode,
                }
        }
 
-       BUG_ON(disk_num_bytes >
-              btrfs_super_total_bytes(root->fs_info->super_copy));
+       BUG_ON(num_bytes > btrfs_super_total_bytes(root->fs_info->super_copy));
 
        alloc_hint = get_extent_allocation_hint(inode, start, num_bytes);
        btrfs_drop_extent_cache(inode, start, start + num_bytes - 1, 0);
 
-       while (disk_num_bytes > 0) {
+       while (num_bytes > 0) {
                unsigned long op;
 
-               cur_alloc_size = disk_num_bytes;
+               cur_alloc_size = num_bytes;
                ret = btrfs_reserve_extent(root, cur_alloc_size, cur_alloc_size,
                                           root->sectorsize, 0, alloc_hint,
                                           &ins, 1, 1);
@@ -1058,7 +1055,7 @@ static noinline int cow_file_range(struct inode *inode,
 
                btrfs_dec_block_group_reservations(root->fs_info, ins.objectid);
 
-               if (disk_num_bytes < cur_alloc_size)
+               if (num_bytes < cur_alloc_size)
                        break;
 
                /* we're not doing compressed IO, don't unlock the first
@@ -1076,8 +1073,10 @@ static noinline int cow_file_range(struct inode *inode,
                                             delalloc_end, locked_page,
                                             EXTENT_LOCKED | EXTENT_DELALLOC,
                                             op);
-               disk_num_bytes -= cur_alloc_size;
-               num_bytes -= cur_alloc_size;
+               if (num_bytes < cur_alloc_size)
+                       num_bytes = 0;
+               else
+                       num_bytes -= cur_alloc_size;
                alloc_hint = ins.objectid + ins.offset;
                start += cur_alloc_size;
        }