diff mbox series

[v4,10/12] mm: remove page_file_offset and folio_file_pos

Message ID 20240502084939.30250-3-ryncsn@gmail.com (mailing list archive)
State New
Headers show
Series mm/swap: clean up and optimize swap cache index | expand

Commit Message

Kairui Song May 2, 2024, 8:49 a.m. UTC
From: Kairui Song <kasong@tencent.com>

These two helpers were useful for mixed usage of swap cache and page
cache, which help retrieve the corresponding file or swap device offset
of a page or folio.

They were introduced in commit f981c5950fa8 ("mm: methods for teaching
filesystems about PG_swapcache pages") and used in commit d56b4ddf7781
("nfs: teach the NFS client how to treat PG_swapcache pages"), suppose
to be used with direct_IO for swap over fs.

But after commit e1209d3a7a67 ("mm: introduce ->swap_rw and use it
for reads from SWP_FS_OPS swap-space"), swap with direct_IO is no more,
and swap cache mapping is never exposed to fs.

Now we have dropped all users of page_file_offset and folio_file_pos,
so they can be deleted.

Signed-off-by: Kairui Song <kasong@tencent.com>
---
 include/linux/pagemap.h | 17 -----------------
 1 file changed, 17 deletions(-)

Comments

Huang, Ying May 8, 2024, 6:32 a.m. UTC | #1
Kairui Song <ryncsn@gmail.com> writes:

> From: Kairui Song <kasong@tencent.com>
>
> These two helpers were useful for mixed usage of swap cache and page
> cache, which help retrieve the corresponding file or swap device offset
> of a page or folio.
>
> They were introduced in commit f981c5950fa8 ("mm: methods for teaching
> filesystems about PG_swapcache pages") and used in commit d56b4ddf7781
> ("nfs: teach the NFS client how to treat PG_swapcache pages"), suppose
> to be used with direct_IO for swap over fs.
>
> But after commit e1209d3a7a67 ("mm: introduce ->swap_rw and use it
> for reads from SWP_FS_OPS swap-space"), swap with direct_IO is no more,
> and swap cache mapping is never exposed to fs.
>
> Now we have dropped all users of page_file_offset and folio_file_pos,
> so they can be deleted.
>
> Signed-off-by: Kairui Song <kasong@tencent.com>

LGTM, Thanks!

Reviewed-by: "Huang, Ying" <ying.huang@intel.com>

> ---
>  include/linux/pagemap.h | 17 -----------------
>  1 file changed, 17 deletions(-)
>
> diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h
> index 850d32057939..a324582ea702 100644
> --- a/include/linux/pagemap.h
> +++ b/include/linux/pagemap.h
> @@ -918,11 +918,6 @@ static inline loff_t page_offset(struct page *page)
>  	return ((loff_t)page->index) << PAGE_SHIFT;
>  }
>  
> -static inline loff_t page_file_offset(struct page *page)
> -{
> -	return ((loff_t)page_index(page)) << PAGE_SHIFT;
> -}
> -
>  /**
>   * folio_pos - Returns the byte position of this folio in its file.
>   * @folio: The folio.
> @@ -932,18 +927,6 @@ static inline loff_t folio_pos(struct folio *folio)
>  	return page_offset(&folio->page);
>  }
>  
> -/**
> - * folio_file_pos - Returns the byte position of this folio in its file.
> - * @folio: The folio.
> - *
> - * This differs from folio_pos() for folios which belong to a swap file.
> - * NFS is the only filesystem today which needs to use folio_file_pos().
> - */
> -static inline loff_t folio_file_pos(struct folio *folio)
> -{
> -	return page_file_offset(&folio->page);
> -}
> -
>  /*
>   * Get the offset in PAGE_SIZE (even for hugetlb folios).
>   */
diff mbox series

Patch

diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h
index 850d32057939..a324582ea702 100644
--- a/include/linux/pagemap.h
+++ b/include/linux/pagemap.h
@@ -918,11 +918,6 @@  static inline loff_t page_offset(struct page *page)
 	return ((loff_t)page->index) << PAGE_SHIFT;
 }
 
-static inline loff_t page_file_offset(struct page *page)
-{
-	return ((loff_t)page_index(page)) << PAGE_SHIFT;
-}
-
 /**
  * folio_pos - Returns the byte position of this folio in its file.
  * @folio: The folio.
@@ -932,18 +927,6 @@  static inline loff_t folio_pos(struct folio *folio)
 	return page_offset(&folio->page);
 }
 
-/**
- * folio_file_pos - Returns the byte position of this folio in its file.
- * @folio: The folio.
- *
- * This differs from folio_pos() for folios which belong to a swap file.
- * NFS is the only filesystem today which needs to use folio_file_pos().
- */
-static inline loff_t folio_file_pos(struct folio *folio)
-{
-	return page_file_offset(&folio->page);
-}
-
 /*
  * Get the offset in PAGE_SIZE (even for hugetlb folios).
  */