From: Con Kolivas <kernel@kolivas.org>
To: "Chen, Kenneth W" <kenneth.w.chen@intel.com>
Cc: tim.c.chen@linux.intel.com, linux-kernel@vger.kernel.org,
mingo@elte.hu, Andrew Morton <akpm@osdl.org>
Subject: Re: Regression seen for patch "sched:dont decrease idle sleep avg"
Date: Mon, 15 May 2006 02:03:13 +1000 [thread overview]
Message-ID: <200605150203.13633.kernel@kolivas.org> (raw)
In-Reply-To: <4sur0l$12a3ma@fmsmga001.fm.intel.com>
On Friday 12 May 2006 10:04, Chen, Kenneth W wrote:
> Tim Chen writes:
> > See patch:
> > http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=co
> >mmit;h=e72ff0bb2c163eb13014ba113701bd42dab382fe
>
> Con Kolivas wrote on Monday, May 08, 2006 5:43 PM
>
> > This patch corrects a bug in the original code which unintentionally
> > dropped the priority of tasks that were idle but were already high
> > priority on other merits. It doesn't further increase the priority.
>
> This got me to take a non-casual look at that particular git commit. The
> first portion of the change log description says perfectly about the
> intent, but after studying the code, I have to say that the actual code
> does not implement what people say it will do. In recalc_task_prio(), if a
> task's sleep_time is more than INTERACTIVE_SLEEP, it will bump up
> p->sleep_avg all the way to near maximum (at MAX_SLEEP_AVG -
> DEF_TIMESLICE), which according to my calculation, it will have a priority
> bonus of 4 (out of max 5).
>
> IOW, for a prolonged sleep, a task will immediately get near maximum
> priority boost. Is that what the real intent is? Seems to be on the
> contrary to what the source code comments as well.
>
> I think in the if (sleep_time > INTERACTIVE_SLEEP) block, p->sleep_avg
> should be treated similarly like what the "else" block is doing: scale it
> proportionally with past sleep time, perhaps not the immediate previously
> prolonged sleep because that would for sure bump up priority too fast. A
> better method might be p->sleep_avg *= 2 or something like that.
There would be no difference if the priority boost is done lower. The if and
else blocks both end up equating to the same amount of priority boost, with
the former having a ceiling on it, so yes it is the intent. You'll see that
the amount of sleep required to jump from lowest priority to MAX_SLEEP_AVG -
DEF_TIMESLICE is INTERACTIVE_SLEEP.
-ck
next prev parent reply other threads:[~2006-05-14 16:05 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-05-08 23:18 Regression seen for patch "sched:dont decrease idle sleep avg" Tim Chen
2006-05-09 0:43 ` Con Kolivas
2006-05-09 1:07 ` Martin Bligh
2006-05-12 0:04 ` Chen, Kenneth W
2006-05-13 12:27 ` Andrew Morton
2006-05-13 13:07 ` Mike Galbraith
2006-05-14 16:03 ` Con Kolivas [this message]
2006-05-15 19:01 ` Chen, Kenneth W
2006-05-15 23:45 ` Con Kolivas
2006-05-16 1:22 ` Chen, Kenneth W
2006-05-16 1:44 ` Con Kolivas
2006-05-16 4:10 ` Mike Galbraith
2006-05-16 23:32 ` Tim Chen
2006-05-17 4:25 ` Mike Galbraith
2006-05-17 4:45 ` Peter Williams
2006-05-17 5:24 ` Mike Galbraith
2006-05-17 8:23 ` Con Kolivas
2006-05-17 9:49 ` Mike Galbraith
2006-05-17 10:25 ` Con Kolivas
2006-05-17 11:42 ` Mike Galbraith
2006-05-17 12:46 ` Con Kolivas
2006-05-17 13:41 ` Mike Galbraith
2006-05-17 15:10 ` Con Kolivas
2006-05-17 17:21 ` Ray Lee
2006-05-17 19:33 ` Chen, Kenneth W
2006-05-18 0:35 ` Con Kolivas
2006-05-18 1:10 ` Chen, Kenneth W
2006-05-18 1:38 ` Con Kolivas
2006-05-18 5:44 ` Mike Galbraith
2006-05-18 5:52 ` Con Kolivas
2006-05-18 7:04 ` Mike Galbraith
2006-05-18 12:59 ` Mike Galbraith
2006-05-19 1:10 ` Con Kolivas
2006-05-18 23:17 ` Chen, Kenneth W
2006-05-19 1:30 ` [PATCH] sched: fix interactive ceiling code Con Kolivas
2006-05-19 2:02 ` Mike Galbraith
2006-05-19 9:40 ` Ingo Molnar
2006-05-19 14:37 ` Chen, Kenneth W
2006-05-19 16:19 ` tim_c_chen
2006-05-18 23:34 ` Regression seen for patch "sched:dont decrease idle sleep avg" Chen, Kenneth W
2006-05-19 1:07 ` Con Kolivas
2006-05-16 4:07 ` Mike Galbraith
-- strict thread matches above, loose matches on Subject: below --
2006-05-18 4:01 Al Boldi
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=200605150203.13633.kernel@kolivas.org \
--to=kernel@kolivas.org \
--cc=akpm@osdl.org \
--cc=kenneth.w.chen@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=tim.c.chen@linux.intel.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