diff options
-rw-r--r-- | target/linux/generic/backport-5.15/020-v6.1-01-mm-x86-arm64-add-arch_has_hw_pte_young.patch (renamed from target/linux/generic/pending-5.15/020-00-mm-x86-arm64-add-arch_has_hw_pte_young.patch) | 0 | ||||
-rw-r--r-- | target/linux/generic/backport-5.15/020-v6.1-02-mm-x86-add-CONFIG_ARCH_HAS_NONLEAF_PMD_YOUNG.patch (renamed from target/linux/generic/pending-5.15/020-01-mm-x86-add-CONFIG_ARCH_HAS_NONLEAF_PMD_YOUNG.patch) | 0 | ||||
-rw-r--r-- | target/linux/generic/backport-5.15/020-v6.1-03-mm-vmscan.c-refactor-shrink_node.patch (renamed from target/linux/generic/pending-5.15/020-02-mm-vmscan.c-refactor-shrink_node.patch) | 0 | ||||
-rw-r--r-- | target/linux/generic/backport-5.15/020-v6.1-04-mm-multigenerational-lru-groundwork.patch (renamed from target/linux/generic/pending-5.15/020-03-mm-multigenerational-lru-groundwork.patch) | 0 | ||||
-rw-r--r-- | target/linux/generic/backport-5.15/020-v6.1-05-mm-multigenerational-lru-mm_struct-list.patch (renamed from target/linux/generic/pending-5.15/020-04-mm-multigenerational-lru-mm_struct-list.patch) | 0 | ||||
-rw-r--r-- | target/linux/generic/backport-5.15/020-v6.1-06-mm-multigenerational-lru-aging.patch (renamed from target/linux/generic/pending-5.15/020-05-mm-multigenerational-lru-aging.patch) | 0 | ||||
-rw-r--r-- | target/linux/generic/backport-5.15/020-v6.1-07-mm-multigenerational-lru-eviction.patch (renamed from target/linux/generic/pending-5.15/020-06-mm-multigenerational-lru-eviction.patch) | 0 | ||||
-rw-r--r-- | target/linux/generic/backport-5.15/020-v6.1-08-mm-multigenerational-lru-user-interface.patch (renamed from target/linux/generic/pending-5.15/020-07-mm-multigenerational-lru-user-interface.patch) | 0 | ||||
-rw-r--r-- | target/linux/generic/backport-5.15/020-v6.1-09-mm-multigenerational-lru-Kconfig.patch (renamed from target/linux/generic/pending-5.15/020-08-mm-multigenerational-lru-Kconfig.patch) | 0 | ||||
-rw-r--r-- | target/linux/generic/backport-5.15/020-v6.1-10-mm-multigenerational-lru-documentation.patch (renamed from target/linux/generic/pending-5.15/020-09-mm-multigenerational-lru-documentation.patch) | 0 | ||||
-rw-r--r-- | target/linux/generic/backport-5.15/021-v6.1-mm-mglru-don-t-sync-disk-for-each-aging-cycle.patch | 32 |
11 files changed, 32 insertions, 0 deletions
diff --git a/target/linux/generic/pending-5.15/020-00-mm-x86-arm64-add-arch_has_hw_pte_young.patch b/target/linux/generic/backport-5.15/020-v6.1-01-mm-x86-arm64-add-arch_has_hw_pte_young.patch index 48bcaf3e3e..48bcaf3e3e 100644 --- a/target/linux/generic/pending-5.15/020-00-mm-x86-arm64-add-arch_has_hw_pte_young.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-01-mm-x86-arm64-add-arch_has_hw_pte_young.patch diff --git a/target/linux/generic/pending-5.15/020-01-mm-x86-add-CONFIG_ARCH_HAS_NONLEAF_PMD_YOUNG.patch b/target/linux/generic/backport-5.15/020-v6.1-02-mm-x86-add-CONFIG_ARCH_HAS_NONLEAF_PMD_YOUNG.patch index 785af275f5..785af275f5 100644 --- a/target/linux/generic/pending-5.15/020-01-mm-x86-add-CONFIG_ARCH_HAS_NONLEAF_PMD_YOUNG.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-02-mm-x86-add-CONFIG_ARCH_HAS_NONLEAF_PMD_YOUNG.patch diff --git a/target/linux/generic/pending-5.15/020-02-mm-vmscan.c-refactor-shrink_node.patch b/target/linux/generic/backport-5.15/020-v6.1-03-mm-vmscan.c-refactor-shrink_node.patch index f466f1105c..f466f1105c 100644 --- a/target/linux/generic/pending-5.15/020-02-mm-vmscan.c-refactor-shrink_node.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-03-mm-vmscan.c-refactor-shrink_node.patch diff --git a/target/linux/generic/pending-5.15/020-03-mm-multigenerational-lru-groundwork.patch b/target/linux/generic/backport-5.15/020-v6.1-04-mm-multigenerational-lru-groundwork.patch index fbc15d8c91..fbc15d8c91 100644 --- a/target/linux/generic/pending-5.15/020-03-mm-multigenerational-lru-groundwork.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-04-mm-multigenerational-lru-groundwork.patch diff --git a/target/linux/generic/pending-5.15/020-04-mm-multigenerational-lru-mm_struct-list.patch b/target/linux/generic/backport-5.15/020-v6.1-05-mm-multigenerational-lru-mm_struct-list.patch index 2592f18e06..2592f18e06 100644 --- a/target/linux/generic/pending-5.15/020-04-mm-multigenerational-lru-mm_struct-list.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-05-mm-multigenerational-lru-mm_struct-list.patch diff --git a/target/linux/generic/pending-5.15/020-05-mm-multigenerational-lru-aging.patch b/target/linux/generic/backport-5.15/020-v6.1-06-mm-multigenerational-lru-aging.patch index 6fc93d9422..6fc93d9422 100644 --- a/target/linux/generic/pending-5.15/020-05-mm-multigenerational-lru-aging.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-06-mm-multigenerational-lru-aging.patch diff --git a/target/linux/generic/pending-5.15/020-06-mm-multigenerational-lru-eviction.patch b/target/linux/generic/backport-5.15/020-v6.1-07-mm-multigenerational-lru-eviction.patch index 09e4315dcc..09e4315dcc 100644 --- a/target/linux/generic/pending-5.15/020-06-mm-multigenerational-lru-eviction.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-07-mm-multigenerational-lru-eviction.patch diff --git a/target/linux/generic/pending-5.15/020-07-mm-multigenerational-lru-user-interface.patch b/target/linux/generic/backport-5.15/020-v6.1-08-mm-multigenerational-lru-user-interface.patch index a1a749fc38..a1a749fc38 100644 --- a/target/linux/generic/pending-5.15/020-07-mm-multigenerational-lru-user-interface.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-08-mm-multigenerational-lru-user-interface.patch diff --git a/target/linux/generic/pending-5.15/020-08-mm-multigenerational-lru-Kconfig.patch b/target/linux/generic/backport-5.15/020-v6.1-09-mm-multigenerational-lru-Kconfig.patch index 4462549f99..4462549f99 100644 --- a/target/linux/generic/pending-5.15/020-08-mm-multigenerational-lru-Kconfig.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-09-mm-multigenerational-lru-Kconfig.patch diff --git a/target/linux/generic/pending-5.15/020-09-mm-multigenerational-lru-documentation.patch b/target/linux/generic/backport-5.15/020-v6.1-10-mm-multigenerational-lru-documentation.patch index f4716fb68d..f4716fb68d 100644 --- a/target/linux/generic/pending-5.15/020-09-mm-multigenerational-lru-documentation.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-10-mm-multigenerational-lru-documentation.patch diff --git a/target/linux/generic/backport-5.15/021-v6.1-mm-mglru-don-t-sync-disk-for-each-aging-cycle.patch b/target/linux/generic/backport-5.15/021-v6.1-mm-mglru-don-t-sync-disk-for-each-aging-cycle.patch new file mode 100644 index 0000000000..269e5eb204 --- /dev/null +++ b/target/linux/generic/backport-5.15/021-v6.1-mm-mglru-don-t-sync-disk-for-each-aging-cycle.patch @@ -0,0 +1,32 @@ +From 14aa8b2d5c2ebead01b542f62d68029023054774 Mon Sep 17 00:00:00 2001 +From: Yu Zhao <yuzhao@google.com> +Date: Wed, 28 Sep 2022 13:36:58 -0600 +Subject: [PATCH 1/1] mm/mglru: don't sync disk for each aging cycle + +wakeup_flusher_threads() was added under the assumption that if a system +runs out of clean cold pages, it might want to write back dirty pages more +aggressively so that they can become clean and be dropped. + +However, doing so can breach the rate limit a system wants to impose on +writeback, resulting in early SSD wearout. + +Link: https://lkml.kernel.org/r/YzSiWq9UEER5LKup@google.com +Fixes: bd74fdaea146 ("mm: multi-gen LRU: support page table walks") +Signed-off-by: Yu Zhao <yuzhao@google.com> +Reported-by: Axel Rasmussen <axelrasmussen@google.com> +Signed-off-by: Andrew Morton <akpm@linux-foundation.org> +--- + mm/vmscan.c | 2 -- + 1 file changed, 2 deletions(-) + +--- a/mm/vmscan.c ++++ b/mm/vmscan.c +@@ -4072,8 +4072,6 @@ static bool try_to_inc_max_seq(struct lr + if (wq_has_sleeper(&lruvec->mm_walk.wait)) + wake_up_all(&lruvec->mm_walk.wait); + +- wakeup_flusher_threads(WB_REASON_VMSCAN); +- + return true; + } + |