diff mbox series

[2/4] btrfs: page to folio conversion: prealloc_file_extent_cluster()

Message ID 55f236028fe97c2119ad8aa51cc6e5fe0cb04d0b.1705605787.git.rgoldwyn@suse.com (mailing list archive)
State New, archived
Headers show
Series [1/4] btrfs: Use IS_ERR() instead of checking folio for NULL | expand

Commit Message

Goldwyn Rodrigues Jan. 18, 2024, 7:46 p.m. UTC
From: Goldwyn Rodrigues <rgoldwyn@suse.com>

Convert usage of page to folio in prealloc_file_extent_cluster(). This converts
all page-based function calls to folio-based.

Signed-off-by: Goldwyn Rodrigues <rgoldwyn@suse.com>
---
 fs/btrfs/relocation.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

Comments

Boris Burkov Jan. 18, 2024, 9:34 p.m. UTC | #1
On Thu, Jan 18, 2024 at 01:46:38PM -0600, Goldwyn Rodrigues wrote:
> From: Goldwyn Rodrigues <rgoldwyn@suse.com>
> 
> Convert usage of page to folio in prealloc_file_extent_cluster(). This converts
> all page-based function calls to folio-based.
> 
> Signed-off-by: Goldwyn Rodrigues <rgoldwyn@suse.com>
Reviewed-by: Boris Burkov <boris@bur.io>
> ---
>  fs/btrfs/relocation.c | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/fs/btrfs/relocation.c b/fs/btrfs/relocation.c
> index abe594f77f99..c365bfc60652 100644
> --- a/fs/btrfs/relocation.c
> +++ b/fs/btrfs/relocation.c
> @@ -2858,7 +2858,7 @@ static noinline_for_stack int prealloc_file_extent_cluster(
>  		struct address_space *mapping = inode->vfs_inode.i_mapping;
>  		struct btrfs_fs_info *fs_info = inode->root->fs_info;
>  		const u32 sectorsize = fs_info->sectorsize;
> -		struct page *page;
> +		struct folio *folio;
>  
>  		ASSERT(sectorsize < PAGE_SIZE);
>  		ASSERT(IS_ALIGNED(i_size, sectorsize));
> @@ -2889,16 +2889,16 @@ static noinline_for_stack int prealloc_file_extent_cluster(
>  		clear_extent_bits(&inode->io_tree, i_size,
>  				  round_up(i_size, PAGE_SIZE) - 1,
>  				  EXTENT_UPTODATE);
> -		page = find_lock_page(mapping, i_size >> PAGE_SHIFT);
> +		folio = filemap_lock_folio(mapping, i_size >> PAGE_SHIFT);
>  		/*
>  		 * If page is freed we don't need to do anything then, as we
>  		 * will re-read the whole page anyway.
>  		 */
> -		if (page) {
> -			btrfs_subpage_clear_uptodate(fs_info, page_folio(page), i_size,
> +		if (!IS_ERR(folio)) {
> +			btrfs_subpage_clear_uptodate(fs_info, folio, i_size,
>  					round_up(i_size, PAGE_SIZE) - i_size);
> -			unlock_page(page);
> -			put_page(page);
> +			folio_unlock(folio);
> +			folio_put(folio);
>  		}
>  	}
>  
> -- 
> 2.43.0
>
David Sterba Jan. 22, 2024, 8:44 p.m. UTC | #2
On Thu, Jan 18, 2024 at 01:46:38PM -0600, Goldwyn Rodrigues wrote:
> From: Goldwyn Rodrigues <rgoldwyn@suse.com>
> 
> Convert usage of page to folio in prealloc_file_extent_cluster(). This converts
> all page-based function calls to folio-based.
> 
> Signed-off-by: Goldwyn Rodrigues <rgoldwyn@suse.com>

Reviewed-by: David Sterba <dsterba@suse.com>
diff mbox series

Patch

diff --git a/fs/btrfs/relocation.c b/fs/btrfs/relocation.c
index abe594f77f99..c365bfc60652 100644
--- a/fs/btrfs/relocation.c
+++ b/fs/btrfs/relocation.c
@@ -2858,7 +2858,7 @@  static noinline_for_stack int prealloc_file_extent_cluster(
 		struct address_space *mapping = inode->vfs_inode.i_mapping;
 		struct btrfs_fs_info *fs_info = inode->root->fs_info;
 		const u32 sectorsize = fs_info->sectorsize;
-		struct page *page;
+		struct folio *folio;
 
 		ASSERT(sectorsize < PAGE_SIZE);
 		ASSERT(IS_ALIGNED(i_size, sectorsize));
@@ -2889,16 +2889,16 @@  static noinline_for_stack int prealloc_file_extent_cluster(
 		clear_extent_bits(&inode->io_tree, i_size,
 				  round_up(i_size, PAGE_SIZE) - 1,
 				  EXTENT_UPTODATE);
-		page = find_lock_page(mapping, i_size >> PAGE_SHIFT);
+		folio = filemap_lock_folio(mapping, i_size >> PAGE_SHIFT);
 		/*
 		 * If page is freed we don't need to do anything then, as we
 		 * will re-read the whole page anyway.
 		 */
-		if (page) {
-			btrfs_subpage_clear_uptodate(fs_info, page_folio(page), i_size,
+		if (!IS_ERR(folio)) {
+			btrfs_subpage_clear_uptodate(fs_info, folio, i_size,
 					round_up(i_size, PAGE_SIZE) - i_size);
-			unlock_page(page);
-			put_page(page);
+			folio_unlock(folio);
+			folio_put(folio);
 		}
 	}