Re: [RFC][PATCH 08/10] sched/fair: Implement delayed dequeue

From: Hongyan Xia
Date: Mon Jun 03 2024 - 11:57:30 EST


On 23/05/2024 10:33, Peter Zijlstra wrote:
On Thu, May 23, 2024 at 10:06:04AM +0100, Luis Machado wrote:

Booting the kernel with NO_DELAY_DEQUEUE (default to false), things work fine. Then
if I switch to DELAY_DEQUEUE at runtime, things start using a lot more power.

The interesting bit is if I switch to NO_DELAY_DEQUEUE again at runtime, things don't
go back to normal. Rather they stay the same, using a lot more energy.

Ooh, cute.. weird. I'll try and see if we leak state somehow.

Hi. I'm working on uclamp anyway so I just gave this series (and all fixes mentioned in this thread) a go.

It seems after running with this series for a while, suddenly uclamp_max no longer works. Running a task with uclamp_max of 110 still sees an rq uclamp_max of 1024. Also weirdly, the PELT signal of that uclamp_max is completely broken. It goes up to a very high value and then suddenly drops to almost 0 from time to time.

I wonder if the reason Luis saw that is because he was the first one to run delayed dequeue with uclamp. I'm not familiar enough with the series to know how it could possibly affect uclamp so investigating in this front may be worth trying. Maybe some leaked uclamp state on the rq?