Use f2fs_get_read_data_folio() instead of f2fs_get_read_data_page().
Saves a hidden call to compound_head() in f2fs_put_page().

Signed-off-by: Matthew Wilcox (Oracle) <wi...@infradead.org>
---
 fs/f2fs/gc.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/fs/f2fs/gc.c b/fs/f2fs/gc.c
index d0fffa2bd9f0..2b8f9239bede 100644
--- a/fs/f2fs/gc.c
+++ b/fs/f2fs/gc.c
@@ -1542,7 +1542,6 @@ static int gc_data_segment(struct f2fs_sb_info *sbi, 
struct f2fs_summary *sum,
        entry = sum;
 
        for (off = 0; off < usable_blks_in_seg; off++, entry++) {
-               struct page *data_page;
                struct inode *inode;
                struct node_info dni; /* dnode info for the data */
                unsigned int ofs_in_node, nofs;
@@ -1585,6 +1584,7 @@ static int gc_data_segment(struct f2fs_sb_info *sbi, 
struct f2fs_summary *sum,
                ofs_in_node = le16_to_cpu(entry->ofs_in_node);
 
                if (phase == 3) {
+                       struct folio *data_folio;
                        int err;
 
                        inode = f2fs_iget(sb, dni.ino);
@@ -1635,15 +1635,15 @@ static int gc_data_segment(struct f2fs_sb_info *sbi, 
struct f2fs_summary *sum,
                                continue;
                        }
 
-                       data_page = f2fs_get_read_data_page(inode, start_bidx,
+                       data_folio = f2fs_get_read_data_folio(inode, start_bidx,
                                                        REQ_RAHEAD, true, NULL);
                        f2fs_up_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]);
-                       if (IS_ERR(data_page)) {
+                       if (IS_ERR(data_folio)) {
                                iput(inode);
                                continue;
                        }
 
-                       f2fs_put_page(data_page, 0);
+                       f2fs_folio_put(data_folio, false);
                        add_gc_inode(gc_list, inode);
                        continue;
                }
-- 
2.47.2



_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to