* [to-be-updated] mm-vmscan-dont-try-to-reclaim-freed-folios.patch removed from -mm tree
@ 2022-07-03 23:05 Andrew Morton
0 siblings, 0 replies; only message in thread
From: Andrew Morton @ 2022-07-03 23:05 UTC (permalink / raw)
To: mm-commits, willy, linmiaohe, akpm
The quilt patch titled
Subject: mm/vmscan: don't try to reclaim freed folios
has been removed from the -mm tree. Its filename was
mm-vmscan-dont-try-to-reclaim-freed-folios.patch
This patch was dropped because an updated version will be merged
------------------------------------------------------
From: Miaohe Lin <linmiaohe@huawei.com>
Subject: mm/vmscan: don't try to reclaim freed folios
Date: Wed, 8 Jun 2022 22:14:32 +0800
If folios were freed from under us, there's no need to reclaim them. Skip
these folios to save lots of cpu cycles and avoid possible unnecessary
disk I/O.
Link: https://lkml.kernel.org/r/20220608141432.23258-1-linmiaohe@huawei.com
Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
Cc: Matthew Wilcox <willy@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
mm/vmscan.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
--- a/mm/vmscan.c~mm-vmscan-dont-try-to-reclaim-freed-folios
+++ a/mm/vmscan.c
@@ -1610,13 +1610,19 @@ retry:
folio = lru_to_folio(page_list);
list_del(&folio->lru);
+ nr_pages = folio_nr_pages(folio);
+
+ if (folio_ref_count(folio) == 1 &&
+ folio_ref_freeze(folio, 1)) {
+ /* folio was freed from under us. So we are done. */
+ goto free_it;
+ }
+
if (!folio_trylock(folio))
goto keep;
VM_BUG_ON_FOLIO(folio_test_active(folio), folio);
- nr_pages = folio_nr_pages(folio);
-
/* Account the number of base pages */
sc->nr_scanned += nr_pages;
_
Patches currently in -mm which might be from linmiaohe@huawei.com are
mm-migration-remove-unneeded-lock-page-and-pagemovable-check.patch
mm-migration-return-errno-when-isolate_huge_page-failed.patch
mm-migration-fix-potential-pte_unmap-on-an-not-mapped-pte.patch
mm-swapfile-fix-possible-data-races-of-inuse_pages.patch
mm-swapfile-fix-possible-data-races-of-inuse_pages-v3.patch
mm-swap-remove-swap_cache_info-statistics.patch
mm-page_alloc-minor-clean-up-for-memmap_init_compound.patch
mm-madvise-minor-cleanup-for-swapin_walk_pmd_entry.patch
mm-mmapc-fix-missing-call-to-vm_unacct_memory-in-mmap_region.patch
mm-khugepaged-remove-unneeded-shmem_huge_enabled-check.patch
mm-khugepaged-stop-swapping-in-page-when-vm_fault_retry-occurs.patch
mm-khugepaged-trivial-typo-and-codestyle-cleanup.patch
mm-khugepaged-minor-cleanup-for-collapse_file.patch
mm-khugepaged-use-helper-macro-__attr_rw.patch
mm-khugepaged-remove-unneeded-return-value-of-khugepaged_add_pte_mapped_thp.patch
mm-khugepaged-try-to-free-transhuge-swapcache-when-possible.patch
filemap-minor-cleanup-for-filemap_write_and_wait_range.patch
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-07-03 23:06 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-03 23:05 [to-be-updated] mm-vmscan-dont-try-to-reclaim-freed-folios.patch removed from -mm tree Andrew Morton
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.