]> git.baikalelectronics.ru Git - kernel.git/commitdiff
mm/damon/vaddr: hide kernel pointer from damon_va_three_regions() failure log
authorSeongJae Park <sj@kernel.org>
Fri, 14 Jan 2022 22:10:47 +0000 (14:10 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 15 Jan 2022 14:30:33 +0000 (16:30 +0200)
The failure log message for 'damon_va_three_regions()' prints the target
id, which is a 'struct pid' pointer in the case.  To avoid exposing the
kernel pointer via the log, this makes the log to use the index of the
target in the context's targets list instead.

Link: https://lkml.kernel.org/r/20211229131016.23641-4-sj@kernel.org
Signed-off-by: SeongJae Park <sj@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/damon/vaddr.c

index 223829655d64b40fd6534220beec47ff1306bb4e..89b6468da2b9b0d595a34bbcf4ded9231f80c2ad 100644 (file)
@@ -232,13 +232,19 @@ static int damon_va_three_regions(struct damon_target *t,
 static void __damon_va_init_regions(struct damon_ctx *ctx,
                                     struct damon_target *t)
 {
+       struct damon_target *ti;
        struct damon_region *r;
        struct damon_addr_range regions[3];
        unsigned long sz = 0, nr_pieces;
-       int i;
+       int i, tidx = 0;
 
        if (damon_va_three_regions(t, regions)) {
-               pr_debug("Failed to get three regions of target %lu\n", t->id);
+               damon_for_each_target(ti, ctx) {
+                       if (ti == t)
+                               break;
+                       tidx++;
+               }
+               pr_debug("Failed to get three regions of %dth target\n", tidx);
                return;
        }