* [PATCH 6.1.y] mm/damon/lru_sort: avoid divide-by-zero in damon_lru_sort_apply_parameters() [not found] <2025091308-affix-ungreased-9889@gregkh> @ 2025-09-14 3:28 ` SeongJae Park 2025-09-14 3:32 ` SeongJae Park 0 siblings, 1 reply; 2+ messages in thread From: SeongJae Park @ 2025-09-14 3:28 UTC (permalink / raw) To: stable Cc: damon, Quanmin Yan, SeongJae Park, Kefeng Wang, ze zuo, Andrew Morton From: Quanmin Yan <yanquanmin1@huawei.com> Patch series "mm/damon: avoid divide-by-zero in DAMON module's parameters application". DAMON's RECLAIM and LRU_SORT modules perform no validation on user-configured parameters during application, which may lead to division-by-zero errors. Avoid the divide-by-zero by adding validation checks when DAMON modules attempt to apply the parameters. This patch (of 2): During the calculation of 'hot_thres' and 'cold_thres', either 'sample_interval' or 'aggr_interval' is used as the divisor, which may lead to division-by-zero errors. Fix it by directly returning -EINVAL when such a case occurs. Additionally, since 'aggr_interval' is already required to be set no smaller than 'sample_interval' in damon_set_attrs(), only the case where 'sample_interval' is zero needs to be checked. Link: https://lkml.kernel.org/r/20250827115858.1186261-2-yanquanmin1@huawei.com Fixes: 40e983cca927 ("mm/damon: introduce DAMON-based LRU-lists Sorting") Signed-off-by: Quanmin Yan <yanquanmin1@huawei.com> Reviewed-by: SeongJae Park <sj@kernel.org> Cc: Kefeng Wang <wangkefeng.wang@huawei.com> Cc: ze zuo <zuoze1@huawei.com> Cc: <stable@vger.kernel.org> [6.0+] Signed-off-by: Andrew Morton <akpm@linux-foundation.org> (cherry picked from commit 711f19dfd783ffb37ca4324388b9c4cb87e71363) Signed-off-by: SeongJae Park <sj@kernel.org> --- mm/damon/lru_sort.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/mm/damon/lru_sort.c b/mm/damon/lru_sort.c index 98a678129b06..61311800abc9 100644 --- a/mm/damon/lru_sort.c +++ b/mm/damon/lru_sort.c @@ -203,6 +203,9 @@ static int damon_lru_sort_apply_parameters(void) unsigned int hot_thres, cold_thres; int err = 0; + if (!damon_lru_sort_mon_attrs.sample_interval) + return -EINVAL; + err = damon_set_attrs(ctx, &damon_lru_sort_mon_attrs); if (err) return err; -- 2.39.5 ^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH 6.1.y] mm/damon/lru_sort: avoid divide-by-zero in damon_lru_sort_apply_parameters() 2025-09-14 3:28 ` [PATCH 6.1.y] mm/damon/lru_sort: avoid divide-by-zero in damon_lru_sort_apply_parameters() SeongJae Park @ 2025-09-14 3:32 ` SeongJae Park 0 siblings, 0 replies; 2+ messages in thread From: SeongJae Park @ 2025-09-14 3:32 UTC (permalink / raw) To: SeongJae Park Cc: stable, damon, Quanmin Yan, Kefeng Wang, ze zuo, Andrew Morton On Sat, 13 Sep 2025 20:28:45 -0700 SeongJae Park <sj@kernel.org> wrote: > From: Quanmin Yan <yanquanmin1@huawei.com> > > Patch series "mm/damon: avoid divide-by-zero in DAMON module's parameters > application". > > DAMON's RECLAIM and LRU_SORT modules perform no validation on > user-configured parameters during application, which may lead to > division-by-zero errors. > > Avoid the divide-by-zero by adding validation checks when DAMON modules > attempt to apply the parameters. > > This patch (of 2): > > During the calculation of 'hot_thres' and 'cold_thres', either > 'sample_interval' or 'aggr_interval' is used as the divisor, which may > lead to division-by-zero errors. Fix it by directly returning -EINVAL > when such a case occurs. Additionally, since 'aggr_interval' is already > required to be set no smaller than 'sample_interval' in damon_set_attrs(), > only the case where 'sample_interval' is zero needs to be checked. > > Link: https://lkml.kernel.org/r/20250827115858.1186261-2-yanquanmin1@huawei.com > Fixes: 40e983cca927 ("mm/damon: introduce DAMON-based LRU-lists Sorting") > Signed-off-by: Quanmin Yan <yanquanmin1@huawei.com> > Reviewed-by: SeongJae Park <sj@kernel.org> > Cc: Kefeng Wang <wangkefeng.wang@huawei.com> > Cc: ze zuo <zuoze1@huawei.com> > Cc: <stable@vger.kernel.org> [6.0+] > Signed-off-by: Andrew Morton <akpm@linux-foundation.org> > (cherry picked from commit 711f19dfd783ffb37ca4324388b9c4cb87e71363) > Signed-off-by: SeongJae Park <sj@kernel.org> FYI, the commit was able to be cleanly cherry-pcked, but seems caused a build error. This patch fixes the build error. Thanks, SJ [...] ^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-09-14 3:32 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <2025091308-affix-ungreased-9889@gregkh>
2025-09-14 3:28 ` [PATCH 6.1.y] mm/damon/lru_sort: avoid divide-by-zero in damon_lru_sort_apply_parameters() SeongJae Park
2025-09-14 3:32 ` SeongJae Park
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox