mm/page_io: use a folio in sio_read_complete()
authorZhangPeng <zhangpeng362@huawei.com>
Fri, 21 Jul 2023 03:44:47 +0000 (11:44 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Fri, 18 Aug 2023 17:12:45 +0000 (10:12 -0700)
Saves one implicit call to compound_head().

Link: https://lkml.kernel.org/r/20230721034451.16412-7-zhangpeng362@huawei.com
Signed-off-by: ZhangPeng <zhangpeng362@huawei.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Kefeng Wang <wangkefeng.wang@huawei.com>
Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
Cc: Nanyong Sun <sunnanyong@huawei.com>
Cc: Sidhartha Kumar <sidhartha.kumar@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/page_io.c

index 6faaaa9..979d9ce 100644 (file)
@@ -403,17 +403,17 @@ static void sio_read_complete(struct kiocb *iocb, long ret)
 
        if (ret == sio->len) {
                for (p = 0; p < sio->pages; p++) {
-                       struct page *page = sio->bvec[p].bv_page;
+                       struct folio *folio = page_folio(sio->bvec[p].bv_page);
 
-                       SetPageUptodate(page);
-                       unlock_page(page);
+                       folio_mark_uptodate(folio);
+                       folio_unlock(folio);
                }
                count_vm_events(PSWPIN, sio->pages);
        } else {
                for (p = 0; p < sio->pages; p++) {
-                       struct page *page = sio->bvec[p].bv_page;
+                       struct folio *folio = page_folio(sio->bvec[p].bv_page);
 
-                       unlock_page(page);
+                       folio_unlock(folio);
                }
                pr_alert_ratelimited("Read-error on swap-device\n");
        }