The kernel-doc comment for 'struct damos_quota' describes how "effective quota" is calculated, but does not explain what it is. Actually there was an input[1] about it. Add the explanation on the comment. [1] https://github.com/damonitor/damo/issues/17#issuecomment-2497525043 Cc: Yunjeong Mun <yunjeong.mun@xxxxxx> Cc: Honggyu Kim <honggyu.kim@xxxxxx> Signed-off-by: SeongJae Park <sj@xxxxxxxxxx> --- include/linux/damon.h | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/include/linux/damon.h b/include/linux/damon.h index a67f2c4940e9..a01bfe2ff616 100644 --- a/include/linux/damon.h +++ b/include/linux/damon.h @@ -193,9 +193,13 @@ struct damos_quota_goal { * size quota is set, DAMON tries to apply the action only up to &sz bytes * within &reset_interval. * - * Internally, the time quota is transformed to a size quota using estimated - * throughput of the scheme's action. DAMON then compares it against &sz and - * uses smaller one as the effective quota. + * To convince the different types of quotas and goals, DAMON internally + * converts those into one single size quota called "effective quota". DAMON + * internally uses it as only one real quota. The convert is made as follows. + * + * The time quota is transformed to a size quota using estimated throughput of + * the scheme's action. DAMON then compares it against &sz and uses smaller + * one as the effective quota. * * If @goals is not empt, DAMON calculates yet another size quota based on the * goals using its internal feedback loop algorithm, for every @reset_interval. -- 2.39.5