Its better to have the policy enforcement going through a function, so that we have better control and visibility of the decision logic. Signed-off-by: Anand Jain <anand.jain@xxxxxxxxxx> --- fs/btrfs/inode.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 06dea7c89bbd..d0cc3de120b7 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -1189,11 +1189,10 @@ static int cow_file_range_async(struct inode *inode, struct page *locked_page, async_cow->locked_page = locked_page; async_cow->start = start; - if (BTRFS_I(inode)->flags & BTRFS_INODE_NOCOMPRESS && - !btrfs_test_opt(fs_info, FORCE_COMPRESS)) - cur_end = end; - else + if (inode_need_compress(inode)) cur_end = min(end, start + SZ_512K - 1); + else + cur_end = end; async_cow->end = cur_end; INIT_LIST_HEAD(&async_cow->extents); -- 2.13.1 -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
