diff mbox series

[-next] mm: madvise: use vm_normal_folio() in madvise_free_pte_range()

Message ID 20230112124028.16964-1-wangkefeng.wang@huawei.com (mailing list archive)
State New
Headers show
Series [-next] mm: madvise: use vm_normal_folio() in madvise_free_pte_range() | expand

Commit Message

Kefeng Wang Jan. 12, 2023, 12:40 p.m. UTC
There is already a vm_normal_folio(), use it to make
madvise_free_pte_range() only use a folio.

Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
---
 mm/madvise.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

Comments

Matthew Wilcox Jan. 12, 2023, 1:16 p.m. UTC | #1
On Thu, Jan 12, 2023 at 08:40:28PM +0800, Kefeng Wang wrote:
> There is already a vm_normal_folio(), use it to make
> madvise_free_pte_range() only use a folio.

In my defence, there wasn't a vm_normal_folio() at the time I modified
this function to use folios ;-)

Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org>
diff mbox series

Patch

diff --git a/mm/madvise.c b/mm/madvise.c
index 4561aaa0e46c..7931d2649de1 100644
--- a/mm/madvise.c
+++ b/mm/madvise.c
@@ -614,7 +614,6 @@  static int madvise_free_pte_range(pmd_t *pmd, unsigned long addr,
 	spinlock_t *ptl;
 	pte_t *orig_pte, *pte, ptent;
 	struct folio *folio;
-	struct page *page;
 	int nr_swap = 0;
 	unsigned long next;
 
@@ -655,10 +654,9 @@  static int madvise_free_pte_range(pmd_t *pmd, unsigned long addr,
 			continue;
 		}
 
-		page = vm_normal_page(vma, addr, ptent);
-		if (!page || is_zone_device_page(page))
+		folio = vm_normal_folio(vma, addr, ptent);
+		if (!folio || folio_is_zone_device(folio))
 			continue;
-		folio = page_folio(page);
 
 		/*
 		 * If pmd isn't transhuge but the folio is large and