On 30.04.25 20:10, Kairui Song wrote:
> From: Kairui Song <kasong@tencent.com>
>
> folio_index is only needed for mixed usage of page cache and swap
> cache, for pure page cache usage, the caller can just use
> folio->index instead.
>
> It can't be a swap cache folio here. Swap mapping may only call into fs
> through `swap_rw` but fuse does not use that method for SWAP.
>
> Signed-off-by: Kairui Song <kasong@tencent.com>
> Cc: Miklos Szeredi <miklos@szeredi.hu>
> Cc: Joanne Koong <joannelkoong@gmail.com>
> Cc: Josef Bacik <josef@toxicpanda.com>
> Cc: linux-fsdevel@vger.kernel.org
> Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org>
> ---
> fs/fuse/file.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/fs/fuse/file.c b/fs/fuse/file.c
> index 754378dd9f71..6f19a4daa559 100644
> --- a/fs/fuse/file.c
> +++ b/fs/fuse/file.c
> @@ -487,7 +487,7 @@ static inline bool fuse_folio_is_writeback(struct inode *inode,
> struct folio *folio)
> {
> pgoff_t last = folio_next_index(folio) - 1;
> - return fuse_range_is_writeback(inode, folio_index(folio), last);
> + return fuse_range_is_writeback(inode, folio->index, last);
> }
>
> static void fuse_wait_on_folio_writeback(struct inode *inode,
> @@ -2349,7 +2349,7 @@ static bool fuse_writepage_need_send(struct fuse_conn *fc, struct folio *folio,
> return true;
>
> /* Discontinuity */
> - if (data->orig_folios[ap->num_folios - 1]->index + 1 != folio_index(folio))
> + if (data->orig_folios[ap->num_folios - 1]->index + 1 != folio->index)
> return true;
>
> /* Need to grow the pages array? If so, did the expansion fail? */
Reviewed-by: David Hildenbrand <david@redhat.com>
--
Cheers,
David / dhildenb