]> git.ipfire.org Git - thirdparty/linux.git/commit - fs/btrfs/ctree.h
btrfs: support different disk extent size for delalloc
authorOmar Sandoval <osandov@fb.com>
Tue, 19 Nov 2019 06:45:55 +0000 (22:45 -0800)
committerDavid Sterba <dsterba@suse.com>
Mon, 14 Mar 2022 12:13:51 +0000 (13:13 +0100)
commit28c9b1e75aa1794897a9cb709f20f27f4aadebac
treeeff413c080922d074c0f750237e63e32ac3159e8
parentcb36a9bb17c4abf720123dacd449408588247005
btrfs: support different disk extent size for delalloc

Currently, we always reserve the same extent size in the file and extent
size on disk for delalloc because the former is the worst case for the
latter. For BTRFS_IOC_ENCODED_WRITE writes, we know the exact size of
the extent on disk, which may be less than or greater than (for
bookends) the size in the file. Add a disk_num_bytes parameter to
btrfs_delalloc_reserve_metadata() so that we can reserve the correct
amount of csum bytes. No functional change.

Reviewed-by: Nikolay Borisov <nborisov@suse.com>
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Omar Sandoval <osandov@fb.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/ctree.h
fs/btrfs/delalloc-space.c
fs/btrfs/file.c
fs/btrfs/inode.c
fs/btrfs/relocation.c