]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
fb_defio: use a folio in fb_deferred_io_work()
authorKefeng Wang <wangkefeng.wang@huawei.com>
Tue, 4 Jun 2024 11:48:21 +0000 (19:48 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Thu, 4 Jul 2024 02:30:17 +0000 (19:30 -0700)
Replaces three calls to compound_head() with one, which removes last
caller of page_mkclean().

Link: https://lkml.kernel.org/r/20240604114822.2089819-4-wangkefeng.wang@huawei.com
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
Acked-by: David Hildenbrand <david@redhat.com>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Helge Deller <deller@gmx.de>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
drivers/video/fbdev/core/fb_defio.c

index 806ecd32219b691327d9620e41316404624a73ae..c9c8e294b7e7ee3890f89c0103a6827979063313 100644 (file)
@@ -244,10 +244,11 @@ static void fb_deferred_io_work(struct work_struct *work)
        /* here we mkclean the pages, then do all deferred IO */
        mutex_lock(&fbdefio->lock);
        list_for_each_entry(pageref, &fbdefio->pagereflist, list) {
-               struct page *cur = pageref->page;
-               lock_page(cur);
-               page_mkclean(cur);
-               unlock_page(cur);
+               struct folio *folio = page_folio(pageref->page);
+
+               folio_lock(folio);
+               folio_mkclean(folio);
+               folio_unlock(folio);
        }
 
        /* driver's callback with pagereflist */