damon_call() and damos_walk() can leak memory and/or deadlock when they
race with kdamond terminations. Fix those.
Changes from RFC v3
(https://lore.kernel.org/20260327142605.4834-1-sj@kernel.org)
- Drop RFC tag.
- Rebase to latest mm-new.
Changes from RFC v2
(https://lore.kernel.org/20260327004952.58266-1-sj@kernel.org)
- Update and wordsmith commit message.
- Add damos_walk() race fix.
Changes from RFC v1
(https://lore.kernel.org/20260326062347.88569-3-sj@kernel.org)
- Clarify damon_call() call condition.
- Init call_controls_obsolete before kdamond_started completion.
- Wordsmith commit message.
- Split out repeat_call_control leak fix from the series.
SeongJae Park (2):
mm/damon/core: fix damon_call() vs kdamond_fn() exit race
mm/damon/core: fix damos_walk() vs kdamond_fn() exit race
include/linux/damon.h | 2 ++
mm/damon/core.c | 66 ++++++++++++++++++-------------------------
2 files changed, 30 insertions(+), 38 deletions(-)
base-commit: 305aff97ab8306284a0aa85f9128403b50c89019
--
2.47.3