]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
mm/damon/stat: expose negative idle time
authorSeongJae Park <sj@kernel.org>
Tue, 16 Sep 2025 18:31:27 +0000 (11:31 -0700)
committerAndrew Morton <akpm@linux-foundation.org>
Sun, 21 Sep 2025 21:22:39 +0000 (14:22 -0700)
commita983a26d52989996f7626d10833610572112e753
tree8d8ed4d5dea7c13f264fe3461862c2fc0071345b
parentcc7ceb1d14b0a6f6eb83dfdfa91970f69c4c23b4
mm/damon/stat: expose negative idle time

DAMON_STAT calculates the idle time of a region using the region's age if
the region's nr_accesses is zero.  If the nr_accesses value is non-zero
(positive), the idle time of the region becomes zero.

This means the users cannot know how warm and hot data is distributed,
using DAMON_STAT's memory_idle_ms_percentiles output.  The other stat,
namely estimated_memory_bandwidth, can help understanding how the overall
access temperature of the system is, but it is still very rough
information.  On production systems, actually, a significant portion of
the system memory is observed with zero idle time, and we cannot break it
down based on its internal hotness distribution.

Define the idle time of the region using its age, similar to those having
zero nr_accesses, but multiples '-1' to distinguish it.  And expose that
using the same parameter interface, memory_idle_ms_percentiles.

Link: https://lkml.kernel.org/r/20250916183127.65708-3-sj@kernel.org
Signed-off-by: SeongJae Park <sj@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/damon/stat.c