diff options
author | Mark Fasheh <mfasheh@suse.de> | 2015-06-09 00:05:25 +0200 |
---|---|---|
committer | Chris Mason <clm@fb.com> | 2015-06-10 16:02:50 +0200 |
commit | e1d227a42ea2b4664f94212bd1106b9a3413ffb8 (patch) | |
tree | e14df0ebdf2241ee848607f06fc39cef6d5c1db4 /scripts/Makefile.asm-generic | |
parent | Btrfs: btrfs_defrag_file: Fix calculation of max_to_defrag. (diff) | |
download | linux-e1d227a42ea2b4664f94212bd1106b9a3413ffb8.tar.xz linux-e1d227a42ea2b4664f94212bd1106b9a3413ffb8.zip |
btrfs: Handle unaligned length in extent_same
The extent-same code rejects requests with an unaligned length. This
poses a problem when we want to dedupe the tail extent of files as we
skip cloning the portion between i_size and the extent boundary.
If we don't clone the entire extent, it won't be deleted. So the
combination of these behaviors winds up giving us worst-case dedupe on
many files.
We can fix this by allowing a length that extents to i_size and
internally aligining those to the end of the block. This is what
btrfs_ioctl_clone() so we can just copy that check over.
Signed-off-by: Mark Fasheh <mfasheh@suse.de>
Signed-off-by: Chris Mason <clm@fb.com>
Diffstat (limited to 'scripts/Makefile.asm-generic')
0 files changed, 0 insertions, 0 deletions