[Cluster-devel] [PATCH 02/23] filemap: Added filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
This is the equivalent of find_get_pages_range_tag(), except for folios instead of pages. One noteable difference is filemap_get_folios_tag() does not take in a maximum pages argument. It instead tries to fill a folio batch and stops either once full (15 folios) or reaching the end of the search

[Cluster-devel] [PATCH 21/23] nilfs2: Convert nilfs_copy_dirty_pages() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Convert function to use folios throughout. This is in preparation for the removal of find_get_pages_range_tag(). Signed-off-by: Vishal Moola (Oracle) --- fs/nilfs2/page.c | 39 --- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git

[Cluster-devel] [PATCH 00/23] Convert to filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
This patch series replaces find_get_pages_range_tag() with filemap_get_folios_tag(). This also allows the removal of multiple calls to compound_head() throughout. It also makes a good chunk of the straightforward conversions to folios, and takes the opportunity to introduce a function that grabs a

[Cluster-devel] [PATCH 10/23] ext4: Convert mpage_prepare_extent_to_map() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Converted the function to use folios throughout. This is in preparation for the removal of find_get_pages_range_tag(). Now supports large folios. Signed-off-by: Vishal Moola (Oracle) --- fs/ext4/inode.c | 55 - 1 file changed, 27 insertions(+), 28

[Cluster-devel] [PATCH 23/23] filemap: Remove find_get_pages_range_tag()

2022-09-02 Thread Vishal Moola (Oracle)
All callers to find_get_pages_range_tag(), find_get_pages_tag(), pagevec_lookup_range_tag(), and pagevec_lookup_tag() have been removed. Signed-off-by: Vishal Moola (Oracle) --- include/linux/pagemap.h | 10 --- include/linux/pagevec.h | 8 -- mm/filemap.c| 60

[Cluster-devel] [PATCH 17/23] gfs2: Convert gfs2_write_cache_jdata() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Converted function to use folios throughout. This is in preparation for the removal of find_get_pgaes_range_tag(). Also had to modify and rename gfs2_write_jdata_pagevec() to take in and utilize folio_batch rather than pagevec and use folios rather than pages. gfs2_write_jdata_batch() now

[Cluster-devel] [PATCH 06/23] btrfs: Convert btree_write_cache_pages() to use filemap_get_folio_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Converted function to use folios throughout. This is in preparation for the removal of find_get_pages_range_tag(). Signed-off-by: Vishal Moola (Oracle) --- fs/btrfs/extent_io.c | 19 ++- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/fs/btrfs/extent_io.c

[Cluster-devel] [PATCH 20/23] nilfs2: Convert nilfs_btree_lookup_dirty_buffers() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Convert function to use folios throughout. This is in preparation for the removal of find_get_pages_range_tag(). Signed-off-by: Vishal Moola (Oracle) --- fs/nilfs2/btree.c | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/fs/nilfs2/btree.c b/fs/nilfs2/btree.c

[Cluster-devel] [PATCH 15/23] f2fs: Convert last_fsync_dnode() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Convert to use folios. This is in preparation for the removal of find_get_pages_range_tag(). Signed-off-by: Vishal Moola (Oracle) --- fs/f2fs/node.c | 19 ++- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c index

[Cluster-devel] [PATCH 08/23] ceph: Convert ceph_writepages_start() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Convert function to use folios throughout. This is in preparation for the removal of find_get_pages_range_tag(). This change does NOT support large folios. This shouldn't be an issue as of now since ceph only utilizes folios of size 1 anyways, and there is a lot of work to be done on ceph

[Cluster-devel] [PATCH 07/23] btrfs: Convert extent_write_cache_pages() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Converted function to use folios throughout. This is in preparation for the removal of find_get_pages_range_tag(). Now also supports large folios. Signed-off-by: Vishal Moola (Oracle) --- fs/btrfs/extent_io.c | 38 +++--- 1 file changed, 19 insertions(+), 19

[Cluster-devel] [PATCH 18/23] nilfs2: Convert nilfs_lookup_dirty_data_buffers() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Convert function to use folios throughout. This is in preparation for the removal of find_get_pages_range_tag(). Signed-off-by: Vishal Moola (Oracle) --- fs/nilfs2/segment.c | 29 - 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/fs/nilfs2/segment.c

[Cluster-devel] [PATCH 05/23] afs: Convert afs_writepages_region() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Convert to use folios throughout. This function is in preparation to remove find_get_pages_range_tag(). Also modified this function to write the whole batch one at a time, rather than calling for a new set every single write. Signed-off-by: Vishal Moola (Oracle) --- fs/afs/write.c | 114

[Cluster-devel] [PATCH 11/23] f2fs: Convert f2fs_fsync_node_pages() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Convert function to use folios. This is in preparation for the removal of find_get_pages_range_tag(). Does NOT support large folios. Signed-off-by: Vishal Moola (Oracle) --- fs/f2fs/node.c | 19 ++- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/fs/f2fs/node.c

[Cluster-devel] [PATCH 12/23] f2fs: Convert f2fs_flush_inline_data() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Convert function to use folios. This is in preparation for the removal of find_get_pages_tag(). Does NOT support large folios. Signed-off-by: Vishal Moola (Oracle) --- fs/f2fs/node.c | 17 + 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/fs/f2fs/node.c

[Cluster-devel] [PATCH 22/23] nilfs2: Convert nilfs_clear_dirty_pages() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Convert function to use folios throughout. This is in preparation for the removal of find_get_pages_range_tag(). Signed-off-by: Vishal Moola (Oracle) --- fs/nilfs2/page.c | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/fs/nilfs2/page.c

[Cluster-devel] [PATCH 04/23] page-writeback: Convert write_cache_pages() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Converted function to use folios throughout. This is in preparation for the removal of find_get_pages_range_tag(). Signed-off-by: Vishal Moola (Oracle) --- mm/page-writeback.c | 44 +++- 1 file changed, 23 insertions(+), 21 deletions(-) diff --git

[Cluster-devel] [PATCH 03/23] filemap: Convert __filemap_fdatawait_range() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Converted function to use folios. This is in preparation for the removal of find_get_pages_range_tag(). Signed-off-by: Vishal Moola (Oracle) --- mm/filemap.c | 24 +--- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/mm/filemap.c b/mm/filemap.c index

[Cluster-devel] [PATCH 16/23] f2fs: Convert f2fs_sync_meta_pages() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Convert function to use folios. This is in preparation for the removal of find_get_pages_range_tag(). Initially the function was checking if the previous page index is truly the previous page i.e. 1 index behind the current page. To convert to folios and maintain this check we need to make the

[Cluster-devel] [PATCH 14/23] f2fs: Convert f2fs_write_cache_pages() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Converted the function to use folios. This is in preparation for the removal of find_get_pages_range_tag(). Also modified f2fs_all_cluster_page_ready to take in a folio_batch instead of pagevec. This does NOT support large folios. The function currently only utilizes folios of size 1 so this

[Cluster-devel] [PATCH 13/23] f2fs: Convert f2fs_sync_node_pages() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Convert function to use folios. This is in preparation for the removal of find_get_pages_range_tag(). Does NOT support large folios. Signed-off-by: Vishal Moola (Oracle) --- fs/f2fs/node.c | 17 + 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/fs/f2fs/node.c

[Cluster-devel] [PATCH 01/23] pagemap: Add filemap_grab_folio()

2022-09-02 Thread Vishal Moola (Oracle)
Add function filemap_grab_folio() to grab a folio from the page cache. This function is meant to serve as a folio replacement for grab_cache_page, and is used to facilitate the removal of find_get_pages_range_tag(). Signed-off-by: Vishal Moola (Oracle) --- include/linux/pagemap.h | 20

[Cluster-devel] [PATCH 09/23] cifs: Convert wdata_alloc_and_fillpages() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Convert function to use folios. This is in preparation for the removal of find_get_pages_range_tag(). Now also supports the use of large folios. Since tofind might be larger than the max number of folios in a folio_batch (15), we loop through filling in wdata->pages pulling more batches until we

[Cluster-devel] [PATCH 19/23] nilfs2: Convert nilfs_lookup_dirty_node_buffers() to use filemap_get_folios_tag()

2022-09-02 Thread Vishal Moola (Oracle)
Convert function to use folios throughout. This is in preparation for the removal of find_get_pages_range_tag(). Signed-off-by: Vishal Moola (Oracle) --- fs/nilfs2/segment.c | 15 +++ 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/fs/nilfs2/segment.c

Re: [Cluster-devel] [PATCH 07/23] btrfs: Convert extent_write_cache_pages() to use filemap_get_folios_tag()

2022-09-02 Thread David Sterba
On Thu, Sep 01, 2022 at 03:01:22PM -0700, Vishal Moola (Oracle) wrote: > Converted function to use folios throughout. This is in preparation for > the removal of find_get_pages_range_tag(). Now also supports large > folios. > > Signed-off-by: Vishal Moola (Oracle) Acked-by: David Sterba

Re: [Cluster-devel] [PATCH 06/23] btrfs: Convert btree_write_cache_pages() to use filemap_get_folio_tag()

2022-09-02 Thread David Sterba
On Thu, Sep 01, 2022 at 03:01:21PM -0700, Vishal Moola (Oracle) wrote: > Converted function to use folios throughout. This is in preparation for > the removal of find_get_pages_range_tag(). > > Signed-off-by: Vishal Moola (Oracle) Acked-by: David Sterba

Re: [Cluster-devel] [PATCH 14/23] f2fs: Convert f2fs_write_cache_pages() to use filemap_get_folios_tag()

2022-09-02 Thread kernel test robot
op us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Vishal-Moola-Oracle/Convert-to-filemap_get_folios_tag/20220902-060430 base: https://git.kerne

Re: [Cluster-devel] [PATCH 14/23] f2fs: Convert f2fs_write_cache_pages() to use filemap_get_folios_tag()

2022-09-02 Thread kernel test robot
op us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Vishal-Moola-Oracle/Convert-to-filemap_get_folios_tag/20220902-060430 base: https://git.kerne