Re: [PATCH] lib/flex_proportions.c: aging counts when fraction smaller than max_frac/FPROP_FRAC_BASE

From: Andrew Morton
Date: Thu May 07 2020 - 19:46:17 EST


On Wed, 6 May 2020 14:21:28 +0800 Tan Hu <tan.hu@xxxxxxxxxx> wrote:

> If the given type has fraction smaller than max_frac/FPROP_FRAC_BASE,
> __fprop_inc_percpu_max should follow the design formula and aging
> fraction too.
>
> Signed-off-by: Tan Hu <tan.hu@xxxxxxxxxx>
> ---
> lib/flex_proportions.c | 7 +++----
> 1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/lib/flex_proportions.c b/lib/flex_proportions.c
> index 7852bfff5..451543937 100644
> --- a/lib/flex_proportions.c
> +++ b/lib/flex_proportions.c
> @@ -266,8 +266,7 @@ void __fprop_inc_percpu_max(struct fprop_global *p,
> if (numerator >
> (((u64)denominator) * max_frac) >> FPROP_FRAC_SHIFT)
> return;
> - } else
> - fprop_reflect_period_percpu(p, pl);
> - percpu_counter_add_batch(&pl->events, 1, PROP_BATCH);
> - percpu_counter_add(&p->events, 1);
> + }
> +
> + __fprop_inc_percpu(p, pl);
> }

(Cc Jan)