diff mbox series

btrfs: cleanup how we calculate lockend in lock_and_cleanup_extent_if_need()

Message ID 20200813063352.94447-1-wqu@suse.com (mailing list archive)
State New, archived
Headers show
Series btrfs: cleanup how we calculate lockend in lock_and_cleanup_extent_if_need() | expand

Commit Message

Qu Wenruo Aug. 13, 2020, 6:33 a.m. UTC
We're just doing rounding up to sectorsize to calculate the lockend.

There is no need to do the unnecessary length calculation, just direct
round_up() is enough.

Signed-off-by: Qu Wenruo <wqu@suse.com>
---
 fs/btrfs/file.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

Comments

Nikolay Borisov Aug. 17, 2020, 10:49 a.m. UTC | #1
On 13.08.20 г. 9:33 ч., Qu Wenruo wrote:
> We're just doing rounding up to sectorsize to calculate the lockend.
> 
> There is no need to do the unnecessary length calculation, just direct
> round_up() is enough.
> 
> Signed-off-by: Qu Wenruo <wqu@suse.com>

Reviewed-by: Nikolay Borisov <nborisov@suse.com>

> ---
>  fs/btrfs/file.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
> index 2f96f083eb8c..c71ea9e5c529 100644
> --- a/fs/btrfs/file.c
> +++ b/fs/btrfs/file.c
> @@ -1475,9 +1475,7 @@ lock_and_cleanup_extent_if_need(struct btrfs_inode *inode, struct page **pages,
>  	int ret = 0;
>  
>  	start_pos = round_down(pos, fs_info->sectorsize);
> -	last_pos = start_pos
> -		+ round_up(pos + write_bytes - start_pos,
> -			   fs_info->sectorsize) - 1;
> +	last_pos = round_up(pos + write_bytes, fs_info->sectorsize) - 1;
>  
>  	if (start_pos < inode->vfs_inode.i_size) {
>  		struct btrfs_ordered_extent *ordered;
>
David Sterba Aug. 17, 2020, 12:18 p.m. UTC | #2
On Thu, Aug 13, 2020 at 02:33:52PM +0800, Qu Wenruo wrote:
> We're just doing rounding up to sectorsize to calculate the lockend.
> 
> There is no need to do the unnecessary length calculation, just direct
> round_up() is enough.
> 
> Signed-off-by: Qu Wenruo <wqu@suse.com>

Added to misc-next, thanks.
diff mbox series

Patch

diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
index 2f96f083eb8c..c71ea9e5c529 100644
--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
@@ -1475,9 +1475,7 @@  lock_and_cleanup_extent_if_need(struct btrfs_inode *inode, struct page **pages,
 	int ret = 0;
 
 	start_pos = round_down(pos, fs_info->sectorsize);
-	last_pos = start_pos
-		+ round_up(pos + write_bytes - start_pos,
-			   fs_info->sectorsize) - 1;
+	last_pos = round_up(pos + write_bytes, fs_info->sectorsize) - 1;
 
 	if (start_pos < inode->vfs_inode.i_size) {
 		struct btrfs_ordered_extent *ordered;