LKML Archive on
 help / color / Atom feed
From: Andrew Morton <>
To: "Kirill A. Shutemov" <>
Cc: Paul Menage <>, Li Zefan <>,
	Thomas Gleixner <>,,,
	Arjan van de Ven <>,, Matt Helsley <>,
Subject: Re: [PATCH, v9 3/3] cgroups: introduce timer slack controller
Date: Mon, 14 Mar 2011 16:46:52 -0700
Message-ID: <> (raw)
In-Reply-To: <>

On Mon, 14 Mar 2011 16:05:24 +0200
Kirill A. Shutemov" <> wrote:

> +Overview
> +--------
> +
> +Every task_struct has timer_slack_ns value. This value uses to round up
> +poll() and select() timeout values. This feature can be useful in
> +mobile environment where combined wakeups are desired.
> +
> +Originally, prctl() was the only way to change timer slack value of
> +a process. So you was not able change timer slack value of another
> +process.
> +
> +cgroup subsys "timer_slack" implements timer slack controller. It
> +provides a way to set minimal timer slack value for a group of tasks.
> +If a task belongs to a cgroup with minimal timer slack value higher than
> +task's value, cgroup's value will be applied.
> +
> +Timer slack controller allows to implement setting timer slack value of
> +a process based on a policy. For example, you can create foreground and
> +background cgroups and move tasks between them based on system state.

(quoting myself from last time)

Why do we need a cgroup for this as opposed to (say) inheritance over
fork(), or a system-wide knob, or a per-process/threadgroup knob, or
just leaving the existing code as-is?  Presumably you felt that a
cgroup approach is better for manageability, but you didn't tell us
about this and you didn't explore alternative ways of solving the

I'm still having trouble seeing why we should merge this.  Who will use
it, and for what reason and what benefits will they see?  Quantified
benefits, if possible!

  reply index

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-14 14:05 [PATCH, v9 0/3] Introduce " Kirill A. Shutemov
2011-03-14 14:05 ` [PATCH, v9 1/3] hrtimer: introduce effective timer slack Kirill A. Shutemov
2011-03-14 14:05 ` [PATCH, v9 2/3] hrtimer: implement PR_GET_EFFECTIVE_TIMERSLACK Kirill A. Shutemov
2011-03-14 14:05 ` [PATCH, v9 3/3] cgroups: introduce timer slack controller Kirill A. Shutemov
2011-03-14 23:46   ` Andrew Morton [this message]
2011-03-15  9:11     ` Kirill A. Shutemov
2011-03-16 11:35     ` jacob pan

Reply instructions:

You may reply publically 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:

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

  git send-email \ \ \ \ \ \ \ \ \ \ \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

LKML Archive on

Archives are clonable:
	git clone --mirror lkml/git/0.git
	git clone --mirror lkml/git/1.git
	git clone --mirror lkml/git/2.git
	git clone --mirror lkml/git/3.git
	git clone --mirror lkml/git/4.git
	git clone --mirror lkml/git/5.git
	git clone --mirror lkml/git/6.git
	git clone --mirror lkml/git/7.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 lkml lkml/ \
	public-inbox-index lkml

Example config snippet for mirrors

Newsgroup available over NNTP:

AGPL code for this site: git clone