public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Peter Zijlstra <a.p.zijlstra@chello.nl>
To: bharata@linux.vnet.ibm.com
Cc: linux-kernel@vger.kernel.org,
	Srivatsa Vaddagiri <vatsa@linux.vnet.ibm.com>,
	Ingo Molnar <mingo@elte.hu>,
	Dhaval Giani <dhaval@linux.vnet.ibm.com>
Subject: Re: [PATCH] sched: Don't allow priority switch to realtime when the task doesn't belong to init_task_group and when CONFIG_RT_GROUP_SCHED isn't set
Date: Mon, 24 Nov 2008 09:32:06 +0100	[thread overview]
Message-ID: <1227515526.7685.21861.camel@twins> (raw)
In-Reply-To: <20081124035807.GA3278@in.ibm.com>

On Mon, 2008-11-24 at 09:28 +0530, Bharata B Rao wrote:
> On Sun, Nov 23, 2008 at 02:11:16AM +0100, Peter Zijlstra wrote:
> > On Thu, 2008-11-20 at 11:48 +0530, Bharata B Rao wrote:
> > > Applies on 2.6.28-rc5.
> > > 
> > > With CONFIG_RT_GROUP_SCHED not set, don't allow a task's priority switch
> > > to realtime if the task isn't part of init_task_group.
> > > 
> > > A task belonging to a fair group could use sched_setscheduler/sched_setparam
> > > to become a realtime task. If such a task belongs to one of the
> > > child groups of init_task_group and if CONFIG_RT_GROUP_SCHED is not set,
> > > then it ends up getting queued in init_task_group's runqueue.
> > > So we have a situation where, a task belongs to one group (child)
> > > but ends in the runqueue of another group (init_task_group).
> > > This does not look correct.
> > > 
> > > Fix this by failing such priority change requests in sched_setscheduler()
> > > and sched_setparam().
> > 
> > NAK
> > 
> > !RT_GROUP means the RT tasks should be fully invariant to any grouping
> > configuration. This patch breaks that.
> > 
> > Furthermore your justification for this is plain wrong, you write as if
> > an RT tasks can belong to any grouping (in the !RT_GROUP case), by the
> 
> Hmm... but that's I the impression I got when I started an RT
> task in a subgroup and saw it listed in the tasks list of the cgroup.
> So if RT tasks don't care about grouping (!RT_GROUP_SCHED), may be then
> such tasks shoudn't be shown in the cgroup tasks list.

Sure, do as you like upon the cgroup interface

>  And may be as Ingo
> suggested they should be moved to init_task_group.

Bzzt, wrong! They should not be moved to any group, they cannot be moved
to any group, as they are group invariant.

>  Without that it makes one
> think that a task is contributing to the cpu time of a group in which
> it was started, but it in reality it is not.

Until one thinks more and realizes RT tasks don't contribute anything to
groups as they are not part of them.


  reply	other threads:[~2008-11-24  8:32 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-11-20  6:18 [PATCH] sched: Don't allow priority switch to realtime when the task doesn't belong to init_task_group and when CONFIG_RT_GROUP_SCHED isn't set Bharata B Rao
2008-11-20  7:58 ` Ingo Molnar
2008-11-20  8:03   ` Dhaval Giani
2008-11-20  8:17     ` Ingo Molnar
2008-11-20  8:19   ` Bharata B Rao
2008-11-23  1:11 ` Peter Zijlstra
2008-11-24  3:58   ` Bharata B Rao
2008-11-24  8:32     ` Peter Zijlstra [this message]
2008-11-24  8:46       ` Dhaval Giani
2008-11-24  9:06         ` Peter Zijlstra
2008-11-24 15:24           ` Chris Friesen
2008-11-24 15:36             ` Peter Zijlstra
2008-11-25 18:51               ` Chris Friesen
2008-11-25 20:17                 ` Peter Zijlstra
2008-11-24 17:05       ` Srivatsa Vaddagiri
2008-11-24 18:46         ` Peter Zijlstra

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=1227515526.7685.21861.camel@twins \
    --to=a.p.zijlstra@chello.nl \
    --cc=bharata@linux.vnet.ibm.com \
    --cc=dhaval@linux.vnet.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=vatsa@linux.vnet.ibm.com \
    /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