[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZSP3cuEsgwWcIKRw@gmail.com>
Date: Mon, 9 Oct 2023 14:52:02 +0200
From: Ingo Molnar <mingo@...nel.org>
To: yang.yang29@....com.cn
Cc: surenb@...gle.com, peterz@...radead.org, hannes@...xchg.org,
mingo@...hat.com, linux-kernel@...r.kernel.org,
juri.lelli@...hat.com
Subject: Re: [PATCH linux-next 2/3] sched/psi: Avoid update triggers and
rtpoll_total when it is unnecessary
* yang.yang29@....com.cn <yang.yang29@....com.cn> wrote:
> From: Yang Yang <yang.yang29@....com.cn>
>
> When psimon wakes up and there are no state changes for rtpoll_states,
> it's unnecessary to update triggers and rtpoll_total because the pressures
> being monitored by user had not changed. This will help to slightly reduce
> unnecessary computations of psi.
>
> And update group->rtpoll_next_update after called update_triggers() and
> update rtpoll_total. This will prevent bugs if update_triggers() uses
> group->rtpoll_next_update in the future, and it makes more sense
> to set the next update time after we finished the current update.
> if (now >= group->rtpoll_next_update) {
> - update_triggers(group, now, &update_total, PSI_POLL);
> - group->rtpoll_next_update = now + group->rtpoll_min_period;
> - if (update_total)
> + if (changed_states & group->rtpoll_states) {
> + update_triggers(group, now, &update_total, PSI_POLL);
> memcpy(group->rtpoll_total, group->total[PSI_POLL],
> sizeof(group->rtpoll_total));
> + }
> + group->rtpoll_next_update = now + group->rtpoll_min_period;
So please also split out the second change into a separate patch as well,
as it's an unrelated patch to the state-change optimization.
We have a "one conceptual change per patch" rule for most things.
Thanks,
Ingo
Powered by blists - more mailing lists