Messages in this thread | | | Date | Mon, 22 Apr 2024 11:41:57 +0200 | From | Peter Zijlstra <> | Subject | Re: [PATCH v2] sched/eevdf: Prevent vlag from going out of bounds when reweight_eevdf |
| |
On Mon, Apr 22, 2024 at 04:33:37PM +0800, Xuewen Yan wrote:
> On the Android system, the nice value of a task will change very > frequently. The limit can also be exceeded. > Maybe the !on_rq case is still necessary. > So I'm planning to propose another patch for !on_rq case later after > careful testing locally.
So the scaling is: vlag = vlag * old_Weight / weight
But given that integer devision is truncating, you could expect repeated application of such scaling would eventually decrease the vlag instead of grow it.
Is there perhaps an invocation of reweight_task() missing? Looking at set_load_weight() I'm suspicious of the task_has_idle_policy() case.
| |