All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Zijlstra <peterz@infradead.org>
To: bharata@linux.vnet.ibm.com
Cc: linux-kernel@vger.kernel.org,
	Dhaval Giani <dhaval@linux.vnet.ibm.com>,
	Balbir Singh <balbir@linux.vnet.ibm.com>,
	Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>,
	Gautham R Shenoy <ego@in.ibm.com>,
	Srivatsa Vaddagiri <vatsa@in.ibm.com>,
	Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>,
	Ingo Molnar <mingo@elte.hu>, Pavel Emelyanov <xemul@openvz.org>,
	Herbert Poetzl <herbert@13thfloor.at>,
	Avi Kivity <avi@redhat.com>, Chris Friesen <cfriesen@nortel.com>,
	Paul Menage <menage@google.com>,
	Mike Waychison <mikew@google.com>
Subject: Re: [RFC v4 PATCH 2/7] sched: Bandwidth initialization for fair task groups
Date: Fri, 04 Dec 2009 17:09:54 +0100	[thread overview]
Message-ID: <1259942994.17907.894.camel@laptop> (raw)
In-Reply-To: <20091117143439.GM17335@in.ibm.com>

On Tue, 2009-11-17 at 20:04 +0530, Bharata B Rao wrote:

> +++ b/kernel/sched.c
> @@ -237,6 +237,15 @@ static DEFINE_MUTEX(sched_domains_mutex);
>  
>  #include <linux/cgroup.h>
>  
> +#if defined(CONFIG_FAIR_GROUP_SCHED) && defined(CONFIG_CFS_HARD_LIMITS)
> +struct cfs_bandwidth {
> +	spinlock_t		cfs_runtime_lock;
> +	ktime_t			cfs_period;
> +	u64			cfs_runtime;
> +	struct hrtimer		cfs_period_timer;
> +};
> +#endif
> +
>  struct cfs_rq;
>  
>  static LIST_HEAD(task_groups);

So what's wrong with using struct rt_bandwidth, aside from the name?

> @@ -445,6 +457,19 @@ struct cfs_rq {
>  	unsigned long rq_weight;
>  #endif
>  #endif
> +#ifdef CONFIG_CFS_HARD_LIMITS
> +	/* set when the group is throttled  on this cpu */
> +	int cfs_throttled;
> +
> +	/* runtime currently consumed by the group on this rq */
> +	u64 cfs_time;
> +
> +	/* runtime available to the group on this rq */
> +	u64 cfs_runtime;
> +
> +	/* Protects the cfs runtime related fields of this cfs_rq */
> +	spinlock_t cfs_runtime_lock;
> +#endif
>  };

If you put these 4 in a new struct, say rq_bandwidth, and also use that
for rt_rq, then I bet you can write patch 6 with a lot less copy/paste
action.


  reply	other threads:[~2009-12-04 16:10 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-11-17 14:33 [RFC v4 PATCH 0/7] CFS Hard limits - v4 Bharata B Rao
2009-11-17 14:34 ` [RFC v4 PATCH 1/7] sched: Rename sched_rt_period_mask() and use it in CFS also Bharata B Rao
2009-11-17 14:34 ` [RFC v4 PATCH 2/7] sched: Bandwidth initialization for fair task groups Bharata B Rao
2009-12-04 16:09   ` Peter Zijlstra [this message]
2009-12-04 16:09   ` Peter Zijlstra
2009-12-05 13:04     ` Bharata B Rao
2009-11-17 14:35 ` [RFC v4 PATCH 3/7] sched: Enforce hard limits by throttling Bharata B Rao
2009-12-04 16:09   ` Peter Zijlstra
2009-12-05 13:02     ` Bharata B Rao
2009-11-17 14:35 ` [RFC v4 PATCH 4/7] sched: Unthrottle the throttled tasks Bharata B Rao
2009-11-17 14:36 ` [RFC v4 PATCH 5/7] sched: Add throttle time statistics to /proc/sched_debug Bharata B Rao
2009-11-17 14:37 ` [RFC v4 PATCH 6/7] sched: Rebalance cfs runtimes Bharata B Rao
2009-12-04 16:09   ` Peter Zijlstra
2009-12-05 13:08     ` Bharata B Rao
2009-11-17 14:37 ` [RFC v4 PATCH 7/7] sched: Hard limits documentation Bharata B Rao

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=1259942994.17907.894.camel@laptop \
    --to=peterz@infradead.org \
    --cc=avi@redhat.com \
    --cc=balbir@linux.vnet.ibm.com \
    --cc=bharata@linux.vnet.ibm.com \
    --cc=cfriesen@nortel.com \
    --cc=dhaval@linux.vnet.ibm.com \
    --cc=ego@in.ibm.com \
    --cc=herbert@13thfloor.at \
    --cc=kamalesh@linux.vnet.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=menage@google.com \
    --cc=mikew@google.com \
    --cc=mingo@elte.hu \
    --cc=svaidy@linux.vnet.ibm.com \
    --cc=vatsa@in.ibm.com \
    --cc=xemul@openvz.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 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.