From: Peter Zijlstra <a.p.zijlstra@chello.nl>
To: Paul Turner <pjt@google.com>
Cc: linux-kernel@vger.kernel.org, Venki Pallipadi <venki@google.com>,
Srivatsa Vaddagiri <vatsa@in.ibm.com>,
Mike Galbraith <efault@gmx.de>,
Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>,
Ben Segall <bsegall@google.com>, Ingo Molnar <mingo@elte.hu>,
Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>
Subject: Re: [RFC PATCH 04/14] sched: maintain the load contribution of blocked entities
Date: Thu, 16 Feb 2012 13:25:38 +0100 [thread overview]
Message-ID: <1329395138.2293.206.camel@twins> (raw)
In-Reply-To: <20120202013826.20844.16743.stgit@kitami.mtv.corp.google.com>
On Wed, 2012-02-01 at 17:38 -0800, Paul Turner wrote:
> +static inline void subtract_blocked_load_contrib(struct cfs_rq *cfs_rq,
> + long load_contrib)
> +{
> + if (likely(load_contrib < cfs_rq->blocked_load_avg))
> + cfs_rq->blocked_load_avg -= load_contrib;
> + else
> + cfs_rq->blocked_load_avg = 0;
> +}
> +
> /* Update a sched_entity's runnable average */
> -static inline void update_entity_load_avg(struct sched_entity *se)
> +static inline void update_entity_load_avg(struct sched_entity *se,
> + int update_cfs_rq)
> {
> struct cfs_rq *cfs_rq = cfs_rq_of(se);
> long contrib_delta;
> @@ -1106,8 +1130,34 @@ static inline void update_entity_load_avg(struct sched_entity *se)
> return;
>
> contrib_delta = __update_entity_load_avg_contrib(se);
> +
> + if (!update_cfs_rq)
> + return;
> +
> if (se->on_rq)
> cfs_rq->runnable_load_avg += contrib_delta;
> + else
> + subtract_blocked_load_contrib(cfs_rq, -contrib_delta);
> +}
So that last bit is add_blocked_load_contrib(), right?
next prev parent reply other threads:[~2012-02-16 12:25 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-02 1:38 [RFC PATCH 00/14] sched: entity load-tracking re-work Paul Turner
2012-02-02 1:38 ` [RFC PATCH 04/14] sched: maintain the load contribution of blocked entities Paul Turner
2012-02-16 12:25 ` Peter Zijlstra [this message]
2012-02-17 11:53 ` Paul Turner
2012-02-02 1:38 ` [RFC PATCH 08/14] sched: normalize tg load contributions against runnable time Paul Turner
2012-02-15 23:36 ` Peter Zijlstra
2012-02-17 12:32 ` Paul Turner
2012-02-20 16:10 ` Peter Zijlstra
2012-02-17 12:34 ` Peter Zijlstra
2012-02-15 23:38 ` Peter Zijlstra
2012-02-02 1:38 ` [RFC PATCH 07/14] sched: compute load contribution by a group entity Paul Turner
2012-02-02 1:38 ` [RFC PATCH 03/14] sched: aggregate load contributed by task entities on parenting cfs_rq Paul Turner
2012-02-02 1:38 ` [RFC PATCH 01/14] sched: track the runnable average on a per-task entitiy basis Paul Turner
2012-02-15 23:37 ` Peter Zijlstra
2012-02-17 11:43 ` Paul Turner
2012-02-16 13:27 ` Peter Zijlstra
2012-02-17 11:44 ` Paul Turner
2012-02-02 1:38 ` [RFC PATCH 06/14] sched: aggregate total task_group load Paul Turner
2012-02-17 4:41 ` Nikunj A Dadhania
2012-02-17 10:52 ` Paul Turner
2012-02-02 1:38 ` [RFC PATCH 05/14] sched: account for blocked load waking back up Paul Turner
2012-02-16 15:57 ` Peter Zijlstra
2012-02-17 13:00 ` Paul Turner
2012-02-16 16:02 ` Peter Zijlstra
2012-02-17 11:39 ` Paul Turner
2012-02-02 1:38 ` [RFC PATCH 02/14] sched: maintain per-rq runnable averages Paul Turner
2012-02-02 1:38 ` [RFC PATCH 13/14] sched: make __update_entity_runnable_avg() fast Paul Turner
2012-02-06 20:48 ` Peter Zijlstra
2012-02-17 12:49 ` Paul Turner
2012-02-02 1:38 ` [RFC PATCH 09/14] sched: maintain runnable averages across throttled periods Paul Turner
2012-02-02 1:38 ` [RFC PATCH 11/14] sched: refactor update_shares_cpu() -> update_blocked_avgs() Paul Turner
2012-02-02 1:38 ` [RFC PATCH 10/14] sched: replace update_shares weight distribution with per-entity computation Paul Turner
2012-02-02 1:38 ` [RFC PATCH 12/14] sched: update_cfs_shares at period edge Paul Turner
2012-02-02 1:38 ` [RFC PATCH 14/14] sched: implement usage tracking Paul Turner
2012-02-16 13:37 ` Peter Zijlstra
2012-02-17 10:54 ` Paul Turner
2012-02-20 16:11 ` Peter Zijlstra
2012-02-16 16:58 ` Peter Zijlstra
2012-02-17 11:32 ` Paul Turner
2012-02-20 16:30 ` Peter Zijlstra
2012-02-29 10:37 ` sched per task ARM fix Pantelis Antoniou
2012-02-29 10:37 ` [PATCH 1/2] sched: entity load-tracking re-work - Fix for ARM Pantelis Antoniou
2012-02-28 17:45 ` Morten Rasmussen
2012-02-28 17:52 ` Pantelis Antoniou
2012-02-29 10:37 ` [PATCH 2/2] sched: load-tracking compile when cgroup undefined Pantelis Antoniou
2012-03-13 16:57 ` [RFC PATCH 14/14] sched: implement usage tracking Vincent Guittot
2012-03-14 15:01 ` Peter Zijlstra
2012-03-14 15:45 ` Vincent Guittot
2012-03-14 15:47 ` Paul Turner
2012-03-15 10:52 ` Peter Zijlstra
2012-03-14 15:44 ` Paul Turner
2012-02-06 20:02 ` [RFC PATCH 00/14] sched: entity load-tracking re-work Peter Zijlstra
2012-02-17 9:07 ` Nikunj A Dadhania
2012-02-17 10:48 ` Paul Turner
2012-02-20 9:41 ` Nikunj A Dadhania
2012-02-21 2:33 ` Paul Turner
2012-02-20 17:01 ` Peter Zijlstra
2012-03-12 10:39 ` Morten Rasmussen
2012-03-13 16:44 ` Paul E. McKenney
2012-03-13 17:08 ` Anca Emanuel
2012-03-13 17:23 ` Paul E. McKenney
2012-03-14 9:03 ` Amit Kucheria
2012-03-14 19:19 ` Paul E. McKenney
2012-03-13 17:28 ` Peter Zijlstra
2012-03-12 10:57 ` Vincent Guittot
2012-03-14 15:59 ` Paul Turner
2012-03-15 9:59 ` Vincent Guittot
2012-04-25 13:07 ` Vincent Guittot
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=1329395138.2293.206.camel@twins \
--to=a.p.zijlstra@chello.nl \
--cc=bsegall@google.com \
--cc=efault@gmx.de \
--cc=kamalesh@linux.vnet.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=pjt@google.com \
--cc=svaidy@linux.vnet.ibm.com \
--cc=vatsa@in.ibm.com \
--cc=venki@google.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 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.