]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
mm: remove page_mkclean()
authorKefeng Wang <wangkefeng.wang@huawei.com>
Tue, 4 Jun 2024 11:48:22 +0000 (19:48 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Thu, 4 Jul 2024 02:30:17 +0000 (19:30 -0700)
There are no more users of page_mkclean(), remove it and update the
document and comment.

Link: https://lkml.kernel.org/r/20240604114822.2089819-5-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>
Documentation/core-api/pin_user_pages.rst
drivers/video/fbdev/core/fb_defio.c
include/linux/mm.h
include/linux/rmap.h
mm/gup.c
mm/mremap.c

index 57b17978e156088facf55a3a7ffe7b4d5eb2bd94..c16ca163b55e3c8a1caab1b6136ae37df3bbf72d 100644 (file)
@@ -132,7 +132,7 @@ CASE 1: Direct IO (DIO)
 -----------------------
 There are GUP references to pages that are serving
 as DIO buffers. These buffers are needed for a relatively short time (so they
-are not "long term"). No special synchronization with page_mkclean() or
+are not "long term"). No special synchronization with folio_mkclean() or
 munmap() is provided. Therefore, flags to set at the call site are: ::
 
     FOLL_PIN
@@ -144,7 +144,7 @@ CASE 2: RDMA
 ------------
 There are GUP references to pages that are serving as DMA
 buffers. These buffers are needed for a long time ("long term"). No special
-synchronization with page_mkclean() or munmap() is provided. Therefore, flags
+synchronization with folio_mkclean() or munmap() is provided. Therefore, flags
 to set at the call site are: ::
 
     FOLL_PIN | FOLL_LONGTERM
@@ -170,7 +170,7 @@ callback, simply remove the range from the device's page tables.
 
 Either way, as long as the driver unpins the pages upon mmu notifier callback,
 then there is proper synchronization with both filesystem and mm
-(page_mkclean(), munmap(), etc). Therefore, neither flag needs to be set.
+(folio_mkclean(), munmap(), etc). Therefore, neither flag needs to be set.
 
 CASE 4: Pinning for struct page manipulation only
 -------------------------------------------------
@@ -200,7 +200,7 @@ folio_maybe_dma_pinned(): the whole point of pinning
 ====================================================
 
 The whole point of marking folios as "DMA-pinned" or "gup-pinned" is to be able
-to query, "is this folio DMA-pinned?" That allows code such as page_mkclean()
+to query, "is this folio DMA-pinned?" That allows code such as folio_mkclean()
 (and file system writeback code in general) to make informed decisions about
 what to do when a folio cannot be unmapped due to such pins.
 
index c9c8e294b7e7ee3890f89c0103a6827979063313..d38998714215defb230ce0c29634204862d0b690 100644 (file)
@@ -113,7 +113,7 @@ static vm_fault_t fb_deferred_io_fault(struct vm_fault *vmf)
                printk(KERN_ERR "no mapping available\n");
 
        BUG_ON(!page->mapping);
-       page->index = vmf->pgoff; /* for page_mkclean() */
+       page->index = vmf->pgoff; /* for folio_mkclean() */
 
        vmf->page = page;
        return 0;
@@ -161,7 +161,7 @@ static vm_fault_t fb_deferred_io_track_page(struct fb_info *info, unsigned long
 
        /*
         * We want the page to remain locked from ->page_mkwrite until
-        * the PTE is marked dirty to avoid page_mkclean() being called
+        * the PTE is marked dirty to avoid folio_mkclean() being called
         * before the PTE is updated, which would leave the page ignored
         * by defio.
         * Do this by locking the page here and informing the caller
index cb4aa725252e82f807d4ac9376c3fab4912ff09b..101945baffc783b453b717dd0538a2dfd08fe7f4 100644 (file)
@@ -1577,7 +1577,7 @@ static inline void put_page(struct page *page)
  * issue.
  *
  * Locking: the lockless algorithm described in folio_try_get_rcu()
- * provides safe operation for get_user_pages(), page_mkclean() and
+ * provides safe operation for get_user_pages(), folio_mkclean() and
  * other calls that race to set up page table entries.
  */
 #define GUP_PIN_COUNTING_BIAS (1U << 10)
index 694d3d8862452d90786a83bc9bddd141f95590f7..980fa5d75d69c2ddaf9fae7e3e405afaf53a2966 100644 (file)
@@ -802,8 +802,4 @@ static inline int folio_mkclean(struct folio *folio)
 }
 #endif /* CONFIG_MMU */
 
-static inline int page_mkclean(struct page *page)
-{
-       return folio_mkclean(page_folio(page));
-}
 #endif /* _LINUX_RMAP_H */
index a01a0c96da312df0269a722c225247088fd41404..6ff9f95a99a742ff23271ac6b3b60a65b8dd125a 100644 (file)
--- a/mm/gup.c
+++ b/mm/gup.c
@@ -378,7 +378,7 @@ void unpin_user_pages_dirty_lock(struct page **pages, unsigned long npages,
                 * 1) This code sees the page as already dirty, so it
                 * skips the call to set_page_dirty(). That could happen
                 * because clear_page_dirty_for_io() called
-                * page_mkclean(), followed by set_page_dirty().
+                * folio_mkclean(), followed by set_page_dirty().
                 * However, now the page is going to get written back,
                 * which meets the original intention of setting it
                 * dirty, so all is well: clear_page_dirty_for_io() goes
index 5f96bc5ee91827fdcab8e132ce657c8f28686f6c..e7ae140fc6409bff946cf1c0e7f77b74d02f5ec7 100644 (file)
@@ -198,7 +198,7 @@ static int move_ptes(struct vm_area_struct *vma, pmd_t *old_pmd,
                 * PTE.
                 *
                 * NOTE! Both old and new PTL matter: the old one
-                * for racing with page_mkclean(), the new one to
+                * for racing with folio_mkclean(), the new one to
                 * make sure the physical page stays valid until
                 * the TLB entry for the old mapping has been
                 * flushed.