All of lore.kernel.org
 help / color / mirror / Atom feed
From: Quentin Perret <qperret@google.com>
To: Doug Anderson <dianders@chromium.org>
Cc: Ingo Molnar <mingo@redhat.com>,
	Peter Zijlstra <peterz@infradead.org>,
	juri.lelli@redhat.com,
	Vincent Guittot <vincent.guittot@linaro.org>,
	dietmar.eggemann@arm.com, Steven Rostedt <rostedt@goodmis.org>,
	bsegall@google.com, mgorman@suse.de, ctheegal@codeaurora.org,
	patrick.bellasi@matbug.net, valentin.schneider@arm.com,
	qais.yousef@arm.com, LKML <linux-kernel@vger.kernel.org>,
	kernel-team@android.com
Subject: Re: [PATCH] sched/core: Fix reset-on-fork from RT with uclamp
Date: Wed, 15 Apr 2020 09:20:01 +0100	[thread overview]
Message-ID: <20200415082001.GA256573@google.com> (raw)
In-Reply-To: <CAD=FV=Vo4h43vS1K1+ziAJhQ3UG+Zrx8JN8Q1tkMWU1Oh6OavA@mail.gmail.com>

Hi Doug,

On Tuesday 14 Apr 2020 at 13:45:03 (-0700), Doug Anderson wrote:
> Hi,
> 
> On Tue, Apr 14, 2020 at 9:13 AM Quentin Perret <qperret@google.com> wrote:
> >
> > uclamp_fork() resets the uclamp values to their default when the
> > reset-on-fork flag is set. It also checks whether the task has a RT
> > policy, and sets its uclamp.min to 1024 accordingly. However, during
> > reset-on-fork, the task's policy is lowered to SCHED_NORMAL right after,
> > hence leading to an erroneous uclamp.min setting for the new task if it
> > was forked from RT.
> >
> > Fix this by removing the unnecessary check on rt_policy() in
> > uclamp_fork() as this doesn't make sense if the reset-on-fork flag is
> > set.
> >
> > Reported-by: Chitti Babu Theegala <ctheegal@codeaurora.org>
> > Signed-off-by: Quentin Perret <qperret@google.com>
> > ---
> >  kernel/sched/core.c | 4 ----
> >  1 file changed, 4 deletions(-)
> >
> > diff --git a/kernel/sched/core.c b/kernel/sched/core.c
> > index 3a61a3b8eaa9..9ea3e484eea2 100644
> > --- a/kernel/sched/core.c
> > +++ b/kernel/sched/core.c
> > @@ -1234,10 +1234,6 @@ static void uclamp_fork(struct task_struct *p)
> >         for_each_clamp_id(clamp_id) {
> >                 unsigned int clamp_value = uclamp_none(clamp_id);
> >
> > -               /* By default, RT tasks always get 100% boost */
> > -               if (unlikely(rt_task(p) && clamp_id == UCLAMP_MIN))
> > -                       clamp_value = uclamp_none(UCLAMP_MAX);
> > -
> >                 uclamp_se_set(&p->uclamp_req[clamp_id], clamp_value, false);
> 
> The local variable "clamp_value" doesn't have a lot of value anymore,
> does it?  (Pun intended).

:)

> Remove it?

Right, but I figured the generated code should be similar, and
'uclamp_se_set(&p->uclamp_req[clamp_id], uclamp_none(clamp_id), false);'
doesn't fit in 80 cols at this identation level, so I kept the local
var. No strong opinion, though.

Thanks,
Quentin

  reply	other threads:[~2020-04-15  8:20 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-14 16:13 [PATCH] sched/core: Fix reset-on-fork from RT with uclamp Quentin Perret
2020-04-14 16:21 ` Joel Fernandes
2020-04-14 16:27   ` Quentin Perret
2020-04-14 16:32     ` Joel Fernandes
2020-04-14 17:21 ` Patrick Bellasi
2020-04-14 17:25   ` Quentin Perret
2020-04-14 20:45 ` Doug Anderson
2020-04-15  8:20   ` Quentin Perret [this message]
2020-04-15 16:31     ` Doug Anderson
2020-04-15 17:47       ` Patrick Bellasi
2020-04-16  8:54         ` Quentin Perret

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200415082001.GA256573@google.com \
    --to=qperret@google.com \
    --cc=bsegall@google.com \
    --cc=ctheegal@codeaurora.org \
    --cc=dianders@chromium.org \
    --cc=dietmar.eggemann@arm.com \
    --cc=juri.lelli@redhat.com \
    --cc=kernel-team@android.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mgorman@suse.de \
    --cc=mingo@redhat.com \
    --cc=patrick.bellasi@matbug.net \
    --cc=peterz@infradead.org \
    --cc=qais.yousef@arm.com \
    --cc=rostedt@goodmis.org \
    --cc=valentin.schneider@arm.com \
    --cc=vincent.guittot@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.