android_kernel_samsung_sm8650/mm/damon
SeongJae Park 1e19db10e7 UPSTREAM: mm/damon/sysfs: avoid empty scheme tried regions for large apply interval
DAMON_SYSFS assumes all schemes will be applied for at least one DAMON
monitoring results snapshot within one aggregation interval, or makes no
sense to wait for it while DAMON is deactivated by the watermarks.  That
for deactivated status still makes sense, but the aggregation interval
based assumption is invalid now because each scheme can has its own apply
interval.  For schemes having larger than the aggregation or watermarks
check interval, DAMOS tried regions update request can be finished without
the update.  Avoid the case by explicitly checking the status of the
schemes tried regions update and watermarks based DAMON deactivation.

Link: https://lkml.kernel.org/r/20231012192256.33556-3-sj@kernel.org
Signed-off-by: SeongJae Park <sj@kernel.org>
Cc: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

(cherry picked from commit 76126332c7606ba25a4ae5db37145fd526985b45)

Bug: 300502883
Change-Id: I8283709a023123d7a89fd37a1d4a834888c15c7e
Signed-off-by: cui yangpei <cuiyangpei@xiaomi.com>
2023-12-16 01:38:42 +00:00
..
core-test.h mm/damon/core-test: test damon_set_regions 2022-10-03 14:03:06 -07:00
core.c UPSTREAM: mm/damon/core: skip apply schemes if empty 2023-12-16 01:38:42 +00:00
dbgfs-test.h mm/damon/dbgfs-test: fix is_target_id() change 2022-03-22 15:57:12 -07:00
dbgfs.c mm/damon/dbgfs: check if rm_contexts input is for a real context 2022-11-08 15:57:25 -08:00
Kconfig mm/damon/Kconfig: notify debugfs deprecation plan 2022-10-03 14:03:06 -07:00
lru_sort.c UPSTREAM: mm/damon: use kstrtobool() instead of strtobool() 2023-12-16 01:38:42 +00:00
Makefile UPSTREAM: mm/damon/modules: deduplicate init steps for DAMON context setup 2023-12-16 01:38:42 +00:00
modules-common.c UPSTREAM: mm/damon/modules: deduplicate init steps for DAMON context setup 2023-12-16 01:38:42 +00:00
modules-common.h UPSTREAM: mm/damon/modules: deduplicate init steps for DAMON context setup 2023-12-16 01:38:42 +00:00
ops-common.c UPSTREAM: mm/damon/ops-common: refactor to use {pte|pmd}p_clear_young_notify() 2023-12-16 01:38:42 +00:00
ops-common.h mm/damon/ops-common: atomically test and clear young on ptes and pmds 2023-07-19 16:22:11 +02:00
paddr.c mm/damon/ops-common: atomically test and clear young on ptes and pmds 2023-07-19 16:22:11 +02:00
reclaim.c UPSTREAM: mm/damon: use kstrtobool() instead of strtobool() 2023-12-16 01:38:42 +00:00
sysfs-common.c UPSTREAM: mm/damon/sysfs: move unsigned long range directory to common module 2023-12-16 01:38:42 +00:00
sysfs-common.h UPSTREAM: mm/damon/sysfs: avoid empty scheme tried regions for large apply interval 2023-12-16 01:38:42 +00:00
sysfs-schemes.c UPSTREAM: mm/damon/sysfs: avoid empty scheme tried regions for large apply interval 2023-12-16 01:38:42 +00:00
sysfs.c UPSTREAM: mm/damon/sysfs: avoid empty scheme tried regions for large apply interval 2023-12-16 01:38:42 +00:00
vaddr-test.h mm/damon/vaddr-test: fix memory leak in damon_do_test_apply_three_regions() 2023-10-06 14:57:03 +02:00
vaddr.c This is the 6.1.39 stable release 2023-09-02 19:41:42 +00:00