mm/damon/sysfs-schemes: use nr_accesses_bp as the source of tried_regions/<N>/nr_accesses
authorSeongJae Park <sj@kernel.org>
Sat, 16 Sep 2023 02:09:38 +0000 (02:09 +0000)
committerAndrew Morton <akpm@linux-foundation.org>
Wed, 4 Oct 2023 17:32:31 +0000 (10:32 -0700)
DAMON sysfs interface exposes access rate of each region via DAMOS tried
regions directory.  For this, the nr_accesses field of the region is used.
DAMOS was actually using nr_accesses in the past, but it uses
nr_accesses_bp now.  Use the value that it is really using as the source.

Note that this doesn't expose nr_accesses_bp as is (in basis point), but
after converting it to the natural number by dividing the value by 10,000.
Hence there is no behavioral change from users' perspective.

Link: https://lkml.kernel.org/r/20230916020945.47296-3-sj@kernel.org
Signed-off-by: SeongJae Park <sj@kernel.org>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Steven Rostedt (Google) <rostedt@goodmis.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/damon/sysfs-schemes.c

index 527e7d17eb3b23cdf7c8b75380f668491d415dca..093700f50b18c8974400035fa9326bf5a666b39d 100644 (file)
@@ -31,7 +31,7 @@ static struct damon_sysfs_scheme_region *damon_sysfs_scheme_region_alloc(
                return NULL;
        sysfs_region->kobj = (struct kobject){};
        sysfs_region->ar = region->ar;
-       sysfs_region->nr_accesses = region->nr_accesses;
+       sysfs_region->nr_accesses = region->nr_accesses_bp / 10000;
        sysfs_region->age = region->age;
        INIT_LIST_HEAD(&sysfs_region->list);
        return sysfs_region;