From: SeongJae Park Date: Sun, 2 Oct 2022 19:31:30 +0000 (+0000) Subject: mm/damon/core: initialize damon_target->list in damon_new_target() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=b1f44cdabad8c50cd72d6b6731e9fdf3730a8f4f;p=linux.git mm/damon/core: initialize damon_target->list in damon_new_target() 'struct damon_target' creation function, 'damon_new_target()' is not initializing its '->list' field, unlike other DAMON structs creator functions such as 'damon_new_region()'. Normal users of 'damon_new_target()' initializes the field by adding the target to DAMON context's targets list, but some code could access the uninitialized field. This commit avoids the case by initializing the field in 'damon_new_target()'. Link: https://lkml.kernel.org/r/20221002193130.8227-1-sj@kernel.org Fixes: f23b8eee1871 ("mm/damon/core: implement region-based sampling") Signed-off-by: SeongJae Park Reported-by: Hyeonggon Yoo <42.hyeyoo@gmail.com> Tested-by: Hyeonggon Yoo <42.hyeyoo@gmail.com> Signed-off-by: Andrew Morton --- diff --git a/mm/damon/core.c b/mm/damon/core.c index 7d25dc582fe34..4cbe7867b547c 100644 --- a/mm/damon/core.c +++ b/mm/damon/core.c @@ -313,6 +313,7 @@ struct damon_target *damon_new_target(void) t->pid = NULL; t->nr_regions = 0; INIT_LIST_HEAD(&t->regions_list); + INIT_LIST_HEAD(&t->list); return t; }