On Thu, Feb 22, 2018 at 05:01:53PM +0000, Patrick Bellasi wrote:
> +#define UTIL_EST_NEED_UPDATE_FLAG 0x1

> @@ -5321,12 +5345,19 @@ static inline void util_est_dequeue(struct cfs_rq 
> *cfs_rq,
>       if (!task_sleep)
>               return;
>  
> +     /*
> +      * Skip update of task's estimated utilization if the PELT signal has
> +      * never been updated (at least once) since last enqueue time.
> +      */
> +     ue = READ_ONCE(p->se.avg.util_est);
> +     if (ue.enqueued & UTIL_EST_NEED_UPDATE_FLAG)
> +             return;

The name and function seem inverted, if the flag is set, we do _NOT_
update util_est.

How about something like UTIL_EST_UNCHANGED ? That would give:

        /*
         * If the PELT values haven't changed since enqueue time,
         * skip the util_est update.
         */
        if (enqueue & UTIL_EST_UNCHANGED)
                return;


Reply via email to