mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: Namhyung Kim <namhyung@kernel.org>
Cc: Ingo Molnar <mingo@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [Question] sched/rt_mutex: re-enqueue_task on rt_mutex_setprio()
Date: Sat, 07 Jul 2012 21:29:19 -0400	[thread overview]
Message-ID: <1341710959.2783.2.camel@acer.local.home> (raw)
In-Reply-To: <87zk7cgm6u.fsf@sejong.aot.lge.com>

On Sat, 2012-07-07 at 14:44 +0900, Namhyung Kim wrote:
> Hi,
> 
> I have a question on the code below:
> 
> void rt_mutex_setprio(struct task_struct *p, int prio)
> {
>         ...
> 	if (on_rq)
> 		enqueue_task(rq, p, oldprio < prio ? ENQUEUE_HEAD : 0);
> 
> When enqueueing @p with new @prio, it seems put @p at the head of a
> rq if appropriate. I guess it's the case of boosting @p with higher
> priority, right?

Actually, no. We put @p at the head of the queue when unboosting. If a
task is going from a high priority into a lower priority, it is still
treated as "important" for that priority, and is put to the front of the
queue (it was just higher than everything else on that queue). But if we
are boosting a task from a low priority, why put it to the head of other
tasks of its new priority, when those tasks were just higher than this
task, and this task is now just an "equal".

-- Steve

>  So Should the conditional be a reverse form (provided
> that less number means higher priority)? Please shed some light on me.
> 
> Thanks,
> Namhyung



  reply	other threads:[~2012-07-08  1:29 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-07  5:44 Namhyung Kim
2012-07-08  1:29 ` Steven Rostedt [this message]
2012-07-09  0:50   ` Namhyung Kim
2012-07-09  6:48     ` Peter Zijlstra
2012-07-09  7:07       ` Namhyung Kim

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=1341710959.2783.2.camel@acer.local.home \
    --to=rostedt@goodmis.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=namhyung@kernel.org \
    --cc=peterz@infradead.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®