Re: [PATCH 3/3] workqueue: Schedule work on non-idle cpu instead of current one

2012-09-25 Thread Vincent Guittot
On 25 September 2012 13:30, Viresh Kumar viresh.ku...@linaro.org wrote: On 25 September 2012 16:52, Peter Zijlstra pet...@infradead.org wrote: On Tue, 2012-09-25 at 16:06 +0530, Viresh Kumar wrote: @@ -1066,8 +1076,9 @@ int queue_work(struct workqueue_struct *wq, struct work_struct *work) {

[RFC 0/6] sched: packing small tasks

2012-10-07 Thread Vincent Guittot
: | CA7 | CA7 | total | - default | 40 | 40 | 80 | - Vincent Guittot (6): Revert sched: introduce temporary FAIR_GROUP_SCHED dependency for load-tracking sched: add a new SD SHARE_POWERLINE flag

Re: [patch 15/16] sched: implement usage tracking

2012-10-19 Thread Vincent Guittot
Hi Paul, I think that you have forgot to reset .usage_avg_sum in the __sched_fork as it's already done for .runnable_avg_sum and .usage_avg_sum And it seems that this reset is not corrected in the latest version in your git repo:

Re: [RFC 2/6] sched: add a new SD SHARE_POWERLINE flag for sched_domain

2012-10-29 Thread Vincent Guittot
On 24 October 2012 17:17, Santosh Shilimkar santosh.shilim...@ti.com wrote: Vincent, Few comments/questions. On Sunday 07 October 2012 01:13 PM, Vincent Guittot wrote: This new flag SD SHARE_POWERLINE reflects the sharing of the power rail between the members of a domain

Re: [RFC 2/6] sched: add a new SD SHARE_POWERLINE flag for sched_domain

2012-10-29 Thread Vincent Guittot
It looks like i need to describe more what On 29 October 2012 10:40, Vincent Guittot vincent.guit...@linaro.org wrote: On 24 October 2012 17:17, Santosh Shilimkar santosh.shilim...@ti.com wrote: Vincent, Few comments/questions. On Sunday 07 October 2012 01:13 PM, Vincent Guittot wrote

Re: [RFC 3/6] sched: pack small tasks

2012-10-29 Thread Vincent Guittot
On 24 October 2012 17:20, Santosh Shilimkar santosh.shilim...@ti.com wrote: Vincent, Few comments/questions. On Sunday 07 October 2012 01:13 PM, Vincent Guittot wrote: During sched_domain creation, we define a pack buddy CPU if available. On a system that share the powerline at all level

Re: [RFC 4/6] sched: secure access to other CPU statistics

2012-10-29 Thread Vincent Guittot
On 24 October 2012 17:21, Santosh Shilimkar santosh.shilim...@ti.com wrote: $subject is bit confusing here. On Sunday 07 October 2012 01:13 PM, Vincent Guittot wrote: The atomic update of runnable_avg_sum and runnable_avg_period are ensured by their size and the toolchain. But we must

Re: [RFC 5/6] sched: pack the idle load balance

2012-10-29 Thread Vincent Guittot
On 24 October 2012 17:21, Santosh Shilimkar santosh.shilim...@ti.com wrote: On Sunday 07 October 2012 01:13 PM, Vincent Guittot wrote: Look for an idle CPU close the pack buddy CPU whenever possible. s/close/close to yes The goal is to prevent the wake up of a CPU which doesn't share

Re: [RFC 6/6] ARM: sched: clear SD_SHARE_POWERLINE

2012-10-29 Thread Vincent Guittot
On 24 October 2012 17:21, Santosh Shilimkar santosh.shilim...@ti.com wrote: On Sunday 07 October 2012 01:13 PM, Vincent Guittot wrote: The ARM platforms take advantage of packing small tasks on few cores. This is true even when the cores of a cluster can't be powergated independently

Re: [RFC 6/6] ARM: sched: clear SD_SHARE_POWERLINE

2012-11-12 Thread Vincent Guittot
On 2 November 2012 12:00, Santosh Shilimkar santosh.shilim...@ti.com wrote: On Monday 29 October 2012 06:58 PM, Vincent Guittot wrote: On 24 October 2012 17:21, Santosh Shilimkar santosh.shilim...@ti.com wrote: On Sunday 07 October 2012 01:13 PM, Vincent Guittot wrote: The ARM platforms

Re: [RFC 3/6] sched: pack small tasks

2012-11-12 Thread Vincent Guittot
On 2 November 2012 11:53, Santosh Shilimkar santosh.shilim...@ti.com wrote: On Monday 29 October 2012 06:42 PM, Vincent Guittot wrote: On 24 October 2012 17:20, Santosh Shilimkar santosh.shilim...@ti.com wrote: Vincent, Few comments/questions. On Sunday 07 October 2012 01:13 PM, Vincent

Re: [RFC 3/6] sched: pack small tasks

2012-11-12 Thread Vincent Guittot
On 9 November 2012 17:46, Morten Rasmussen morten.rasmus...@arm.com wrote: On Fri, Nov 02, 2012 at 10:53:47AM +, Santosh Shilimkar wrote: On Monday 29 October 2012 06:42 PM, Vincent Guittot wrote: On 24 October 2012 17:20, Santosh Shilimkar santosh.shilim...@ti.com wrote: Vincent

Re: [RFC 3/6] sched: pack small tasks

2012-11-12 Thread Vincent Guittot
+0100, Vincent Guittot wrote: During sched_domain creation, we define a pack buddy CPU if available. On a system that share the powerline at all level, the buddy is set to -1 On a dual clusters / dual cores system which can powergate each core and cluster independantly, the buddy configuration

[PATCH Resend v6] sched: fix wrong rq's runnable_avg update with rt tasks

2013-04-18 Thread Vincent Guittot
Rostedt's patches : https://lkml.org/lkml/2013/2/12/558 Changes since V1: - move code out of schedule function and create a pre_schedule callback for idle class instead. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c | 23 +-- kernel

Re: [PATCH Resend v6] sched: fix wrong rq's runnable_avg update with rt tasks

2013-04-19 Thread Vincent Guittot
On 19 April 2013 06:30, Mike Galbraith efa...@gmx.de wrote: On Thu, 2013-04-18 at 18:34 +0200, Vincent Guittot wrote: The current update of the rq's load can be erroneous when RT tasks are involved The update of the load of a rq that becomes idle, is done only if the avg_idle is less than

Re: [PATCH Resend v6] sched: fix wrong rq's runnable_avg update with rt tasks

2013-04-19 Thread Vincent Guittot
On 19 April 2013 10:14, Mike Galbraith efa...@gmx.de wrote: On Fri, 2013-04-19 at 09:49 +0200, Vincent Guittot wrote: On 19 April 2013 06:30, Mike Galbraith efa...@gmx.de wrote: On Thu, 2013-04-18 at 18:34 +0200, Vincent Guittot wrote: The current update of the rq's load can be erroneous

Re: [PATCH Resend v6] sched: fix wrong rq's runnable_avg update with rt tasks

2013-04-19 Thread Vincent Guittot
On 19 April 2013 11:21, Mike Galbraith efa...@gmx.de wrote: On Fri, 2013-04-19 at 10:50 +0200, Vincent Guittot wrote: On 19 April 2013 10:14, Mike Galbraith efa...@gmx.de wrote: On Fri, 2013-04-19 at 09:49 +0200, Vincent Guittot wrote: On 19 April 2013 06:30, Mike Galbraith efa...@gmx.de

[PATCH v6] sched: fix init NOHZ_IDLE flag

2013-04-19 Thread Vincent Guittot
the build of the sched_domain will not corrupt the initialization state Change since V1: - remove the patch for SCHED softirq on an idle core use case as it was a side effect of the other use cases. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- include/linux/sched.h | 12

[PATCH v4] sched: fix wrong rq's runnable_avg update with rt tasks

2013-04-04 Thread Vincent Guittot
useless definition for UP platform - rebased on top of Steven Rostedt's patches : https://lkml.org/lkml/2013/2/12/558 Changes since V1: - move code out of schedule function and create a pre_schedule callback for idle class instead. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel

Re: [PATCH Resend v5] sched: fix init NOHZ_IDLE flag

2013-04-04 Thread Vincent Guittot
On 4 April 2013 19:07, Frederic Weisbecker fweis...@gmail.com wrote: 2013/4/3 Vincent Guittot vincent.guit...@linaro.org: On my smp platform which is made of 5 cores in 2 clusters, I have the nr_busy_cpu field of sched_group_power struct that is not null when the platform is fully idle

Re: [RFC PATCH v3 5/6] sched: pack the idle load balance

2013-04-05 Thread Vincent Guittot
-03-26 at 15:03 +0100, Vincent Guittot wrote: But ha! here's your NO_HZ link.. but does the above DTRT and ensure that the ILB is a little core when possible? The loop looks for an idle CPU as close as possible to the buddy CPU and the buddy CPU is the 1st CPU has been chosen. So if your

Re: [patch v3 6/8] sched: consider runnable load average in move_tasks

2013-04-09 Thread Vincent Guittot
On 2 April 2013 05:23, Alex Shi alex@intel.com wrote: Except using runnable load average in background, move_tasks is also the key functions in load balance. We need consider the runnable load average in it in order to the apple to apple load comparison. Signed-off-by: Alex Shi

Re: [PATCH Resend v5] sched: fix init NOHZ_IDLE flag

2013-04-09 Thread Vincent Guittot
On 4 April 2013 19:30, Vincent Guittot vincent.guit...@linaro.org wrote: On 4 April 2013 19:07, Frederic Weisbecker fweis...@gmail.com wrote: 2013/4/3 Vincent Guittot vincent.guit...@linaro.org: On my smp platform which is made of 5 cores in 2 clusters, I have the nr_busy_cpu field

Re: [patch v3 6/8] sched: consider runnable load average in move_tasks

2013-04-09 Thread Vincent Guittot
On 9 April 2013 10:05, Alex Shi alex@intel.com wrote: On 04/09/2013 03:08 PM, Vincent Guittot wrote: On 2 April 2013 05:23, Alex Shi alex@intel.com wrote: Except using runnable load average in background, move_tasks is also the key functions in load balance. We need consider

Re: [PATCH v4] sched: fix wrong rq's runnable_avg update with rt tasks

2013-04-09 Thread Vincent Guittot
On 9 April 2013 10:50, Peter Zijlstra pet...@infradead.org wrote: On Thu, 2013-04-04 at 16:15 +0200, Vincent Guittot wrote: Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c | 23 +-- kernel/sched/idle_task.c | 10

Re: [patch v3 6/8] sched: consider runnable load average in move_tasks

2013-04-09 Thread Vincent Guittot
On 9 April 2013 12:38, Alex Shi alex@intel.com wrote: On 04/09/2013 04:58 PM, Vincent Guittot wrote: How do you ensure that runnable_avg_period and runnable_avg_sum are coherent ? an update of the statistic can occur in the middle of your sequence. Thanks for your question, Vincent

Re: [PATCH v4] sched: fix wrong rq's runnable_avg update with rt tasks

2013-04-09 Thread Vincent Guittot
On 9 April 2013 10:55, Peter Zijlstra pet...@infradead.org wrote: On Thu, 2013-04-04 at 16:15 +0200, Vincent Guittot wrote: Changes since V2: - remove useless definition for UP platform - rebased on top of Steven Rostedt's patches : https://lkml.org/lkml/2013/2/12/558 So what's the status

Re: [PATCH v4] sched: fix wrong rq's runnable_avg update with rt tasks

2013-04-09 Thread Vincent Guittot
On 9 April 2013 15:16, Steven Rostedt rost...@goodmis.org wrote: On Tue, 2013-04-09 at 14:18 +0200, Vincent Guittot wrote: On 9 April 2013 10:55, Peter Zijlstra pet...@infradead.org wrote: On Thu, 2013-04-04 at 16:15 +0200, Vincent Guittot wrote: Changes since V2: - remove useless

[PATCH v5] sched: fix wrong rq's runnable_avg update with rt tasks

2013-04-09 Thread Vincent Guittot
: - move code out of schedule function and create a pre_schedule callback for idle class instead. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c | 23 +-- kernel/sched/idle_task.c | 16 kernel/sched/sched.h | 12

Re: [patch v3 6/8] sched: consider runnable load average in move_tasks

2013-04-09 Thread Vincent Guittot
On 9 April 2013 16:48, Alex Shi alex@intel.com wrote: On 04/09/2013 07:56 PM, Vincent Guittot wrote: On 9 April 2013 12:38, Alex Shi alex@intel.com wrote: On 04/09/2013 04:58 PM, Vincent Guittot wrote: How do you ensure that runnable_avg_period and runnable_avg_sum are coherent

Re: [patch v3 6/8] sched: consider runnable load average in move_tasks

2013-04-10 Thread Vincent Guittot
On 10 April 2013 08:07, Michael Wang wang...@linux.vnet.ibm.com wrote: On 04/09/2013 03:08 PM, Vincent Guittot wrote: On 2 April 2013 05:23, Alex Shi alex@intel.com wrote: Except using runnable load average in background, move_tasks is also the key functions in load balance. We need

Re: [RFC PATCH 0/2] cpufreq: Introduce LAB cpufreq governor.

2013-04-10 Thread Vincent Guittot
On 9 April 2013 20:52, Vincent Guittot vincent.guit...@linaro.org wrote: On Tuesday, 9 April 2013, Lukasz Majewski l.majew...@samsung.com wrote: Hi Viresh and Vincent, On 9 April 2013 16:07, Lukasz Majewski l.majew...@samsung.com wrote: On Mon, Apr 1, 2013 at 1:54 PM, Jonghwa Lee Our

Re: [PATCH v4] sched: fix wrong rq's runnable_avg update with rt tasks

2013-04-10 Thread Vincent Guittot
On 10 April 2013 09:26, Peter Zijlstra pet...@infradead.org wrote: On Tue, 2013-04-09 at 11:06 +0200, Vincent Guittot wrote: +void idle_enter(struct rq *this_rq) +{ + update_rq_runnable_avg(this_rq, 1); +} +void idle_exit(struct rq *this_rq) +{ + update_rq_runnable_avg

Re: [RFC PATCH 0/2] cpufreq: Introduce LAB cpufreq governor.

2013-04-10 Thread Vincent Guittot
On 10 April 2013 10:44, Lukasz Majewski l.majew...@samsung.com wrote: Hi Vincent, On Tuesday, 9 April 2013, Lukasz Majewski l.majew...@samsung.com wrote: Hi Viresh and Vincent, On 9 April 2013 16:07, Lukasz Majewski l.majew...@samsung.com wrote: On Mon, Apr 1, 2013 at 1:54 PM,

Re: [RFC PATCH 0/2] cpufreq: Introduce LAB cpufreq governor.

2013-04-10 Thread Vincent Guittot
On 10 April 2013 11:38, Lukasz Majewski l.majew...@samsung.com wrote: Hi Vincent, On 10 April 2013 10:44, Lukasz Majewski l.majew...@samsung.com wrote: Hi Vincent, On Tuesday, 9 April 2013, Lukasz Majewski l.majew...@samsung.com wrote: Hi Viresh and Vincent, On 9 April

[PATCH v6] sched: fix wrong rq's runnable_avg update with rt tasks

2013-04-10 Thread Vincent Guittot
Rostedt's patches : https://lkml.org/lkml/2013/2/12/558 Changes since V1: - move code out of schedule function and create a pre_schedule callback for idle class instead. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c | 23 +-- kernel

Re: [PATCH Resend v5] sched: fix init NOHZ_IDLE flag

2013-04-10 Thread Vincent Guittot
On 9 April 2013 14:45, Frederic Weisbecker fweis...@gmail.com wrote: 2013/4/4 Vincent Guittot vincent.guit...@linaro.org: On 4 April 2013 19:07, Frederic Weisbecker fweis...@gmail.com wrote: Is it possible that we can be dealing here with a sched_group/sched_group_power that is used on another

Re: [PATCH Resend v5] sched: fix init NOHZ_IDLE flag

2013-04-12 Thread Vincent Guittot
On 11 April 2013 16:56, Frederic Weisbecker fweis...@gmail.com wrote: On Wed, Apr 03, 2013 at 03:37:43PM +0200, Vincent Guittot wrote: On my smp platform which is made of 5 cores in 2 clusters, I have the nr_busy_cpu field of sched_group_power struct that is not null when the platform is fully

Re: [patch v6 03/21] sched: only count runnable avg on cfs_rq's nr_running

2013-04-02 Thread Vincent Guittot
On 30 March 2013 15:34, Alex Shi alex@intel.com wrote: Old function count the runnable avg on rq's nr_running even there is only rt task in rq. That is incorrect, so correct it to cfs_rq's nr_running. Signed-off-by: Alex Shi alex@intel.com --- kernel/sched/fair.c | 2 +- 1 file

Re: [patch v6 10/21] sched: get rq potential maximum utilization

2013-04-02 Thread Vincent Guittot
On 30 March 2013 15:34, Alex Shi alex@intel.com wrote: Since the rt task priority is higher than fair tasks, cfs_rq utilization is just the left of rt utilization. When there are some cfs tasks in queue, the potential utilization may be yielded, so mulitiplying cfs task number to get max

[PATCH Resend v5] sched: fix init NOHZ_IDLE flag

2013-04-03 Thread Vincent Guittot
as it was a side effect of the other use cases. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- include/linux/sched.h |6 +++ kernel/sched/core.c | 105 - kernel/sched/fair.c | 35 +++-- kernel/sched/sched.h

[PATCH v5] sched: fix init NOHZ_IDLE flag

2013-03-19 Thread Vincent Guittot
as it was a side effect of the other use cases. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- include/linux/sched.h |6 +++ kernel/sched/core.c | 105 - kernel/sched/fair.c | 35 +++-- kernel/sched/sched.h

[RFC PATCH v3 0/6] sched: packing small tasks

2013-03-22 Thread Vincent Guittot
| - default | 40 | 40 | 80 | - Vincent Guittot (6): Revert sched: Introduce temporary FAIR_GROUP_SCHED dependency for load-tracking sched: add a new SD_SHARE_POWERDOMAIN flag for sched_domain sched: pack

[RFC PATCH v3 3/6] sched: pack small tasks

2013-03-22 Thread Vincent Guittot
| --- buddy | CPU0 | CPU0 | CPU0 | CPU2 | Small tasks tend to slip out of the periodic load balance so the best place to choose to migrate them is during their wake up. The decision is in O(1) as we only check again one buddy CPU Signed-off-by: Vincent Guittot vincent.guit...@linaro.org Reviewed

[RFC PATCH v3 5/6] sched: pack the idle load balance

2013-03-22 Thread Vincent Guittot
Look for an idle CPU close to the pack buddy CPU whenever possible. The goal is to prevent the wake up of a CPU which doesn't share the power domain of the pack buddy CPU. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org Reviewed-by: Morten Rasmussen morten.rasmus...@arm.com --- kernel

[RFC PATCH v3 6/6] ARM: sched: clear SD_SHARE_POWERDOMAIN

2013-03-22 Thread Vincent Guittot
The ARM platforms take advantage of packing small tasks on few cores. This is true even when the cores of a cluster can't be power gated independantly. So we clear SD_SHARE_POWERDOMAIN at MC and CPU level. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org Reviewed-by: Morten Rasmussen

[RFC PATCH v3 1/6] Revert sched: Introduce temporary FAIR_GROUP_SCHED dependency for load-tracking

2013-03-22 Thread Vincent Guittot
This reverts commit f4e26b120b9de84cb627bc7361ba43cfdc51341f. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- include/linux/sched.h |8 +--- kernel/sched/core.c |7 +-- kernel/sched/fair.c | 13 ++--- kernel/sched/sched.h |9 + 4 files

[RFC PATCH v3 4/6] sched: secure access to other CPU statistics

2013-03-22 Thread Vincent Guittot
plugging a CPU, which implies that we could use the max value instead of reading runnable_avg_period after 345ms. During the starting phase, we must ensure a minimum of coherency between the fields. A simple rule is runnable_avg_sum = runnable_avg_period. Signed-off-by: Vincent Guittot vincent.guit

[RFC PATCH v3 2/6] sched: add a new SD_SHARE_POWERDOMAIN flag for sched_domain

2013-03-22 Thread Vincent Guittot
worth packing some tasks in a group of CPUs in order to power gated the other groups instead of spreading the tasks. The default behavior of the scheduler is to spread tasks so the flag is set into all sched_domains. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org Reviewed-by: Morten

Re: [RFC PATCH v3 0/6] sched: packing small tasks

2013-03-25 Thread Vincent Guittot
. Regards, Vincent Thanks Regards Preeti U Murthy On 03/22/2013 05:55 PM, Vincent Guittot wrote: Hi, This patchset takes advantage of the new per-task load tracking that is available in the kernel for packing the small tasks in as few as possible CPU/Cluster/Core. The main goal of packing

Re: [RFC PATCH v3 3/6] sched: pack small tasks

2013-03-26 Thread Vincent Guittot
On 26 March 2013 13:37, Peter Zijlstra pet...@infradead.org wrote: On Fri, 2013-03-22 at 13:25 +0100, Vincent Guittot wrote: +static bool is_light_task(struct task_struct *p) +{ + /* A light task runs less than 20% in average */ + return ((p-se.avg.runnable_avg_sum * 5

Re: [RFC PATCH v3 4/6] sched: secure access to other CPU statistics

2013-03-26 Thread Vincent Guittot
On 26 March 2013 13:50, Peter Zijlstra pet...@infradead.org wrote: On Fri, 2013-03-22 at 13:25 +0100, Vincent Guittot wrote: @@ -3364,13 +3364,16 @@ done: static bool is_buddy_busy(int cpu) { struct rq *rq = cpu_rq(cpu); + u32 sum = rq-avg.runnable_avg_sum; + u32

Re: [RFC PATCH v3 3/6] sched: pack small tasks

2013-03-26 Thread Vincent Guittot
On 26 March 2013 13:46, Peter Zijlstra pet...@infradead.org wrote: On Fri, 2013-03-22 at 13:25 +0100, Vincent Guittot wrote: During the creation of sched_domain, we define a pack buddy CPU for each CPU when one is available. We want to pack at all levels where a group of CPU can be power

Re: [RFC PATCH v3 5/6] sched: pack the idle load balance

2013-03-26 Thread Vincent Guittot
On 26 March 2013 13:52, Peter Zijlstra pet...@infradead.org wrote: On Fri, 2013-03-22 at 13:25 +0100, Vincent Guittot wrote: Look for an idle CPU close to the pack buddy CPU whenever possible. The goal is to prevent the wake up of a CPU which doesn't share the power domain of the pack buddy

Re: [RFC PATCH v3 5/6] sched: pack the idle load balance

2013-03-26 Thread Vincent Guittot
On 26 March 2013 15:42, Peter Zijlstra pet...@infradead.org wrote: On Tue, 2013-03-26 at 15:03 +0100, Vincent Guittot wrote: But ha! here's your NO_HZ link.. but does the above DTRT and ensure that the ILB is a little core when possible? The loop looks for an idle CPU as close as possible

Re: [RFC PATCH v3 5/6] sched: pack the idle load balance

2013-03-27 Thread Vincent Guittot
On 27 March 2013 05:56, Alex Shi alex@intel.com wrote: On 03/26/2013 11:55 PM, Vincent Guittot wrote: So extrapolating that to a 4+4 big-little you'd get something like: | little A9 || big A15 | | 0 | 1 | 2 | 3 || 4 | 5 | 6 | 7

Re: [RFC PATCH v3 3/6] sched: pack small tasks

2013-03-27 Thread Vincent Guittot
On 27 March 2013 09:46, Peter Zijlstra pet...@infradead.org wrote: On Tue, 2013-03-26 at 08:29 -0700, Arjan van de Ven wrote: Isn't this basically related to picking the NO_HZ cpu; if the system isn't fully symmetric with its power gates you want the NO_HZ cpu to be the 'special' cpu. If it

Re: [RFC PATCH v3 5/6] sched: pack the idle load balance

2013-03-27 Thread Vincent Guittot
On 27 March 2013 09:47, Alex Shi alex@intel.com wrote: So supposing the current ILB is 6, we'll only check 4, not 0-3, even though there might be a perfectly idle cpu in there. We will check 4,5,7 at MC level in order to pack in the group of A15 (because they are not sharing the same

Re: [RFC PATCH v3 3/6] sched: pack small tasks

2013-03-27 Thread Vincent Guittot
On 27 March 2013 11:21, Preeti U Murthy pre...@linux.vnet.ibm.com wrote: Hi, On 03/26/2013 05:56 PM, Peter Zijlstra wrote: On Fri, 2013-03-22 at 13:25 +0100, Vincent Guittot wrote: +static bool is_buddy_busy(int cpu) +{ + struct rq *rq = cpu_rq(cpu); + + /* +* A busy

Re: [PATCH] topology: removed kzalloc return value cast

2013-03-13 Thread Vincent Guittot
*)kzalloc(alloc_size, GFP_NOWAIT); + cpu_capacity = kzalloc(alloc_size, GFP_NOWAIT); you're right Acked-by: Vincent Guittot vincent.guit...@linaro.org while ((cn = of_find_node_by_type(cn, cpu))) { const u32 *rate, *reg; -- 1.7.10.4 -- To unsubscribe from this list

[PATCH Resend 1/3] sched: fix nr_busy_cpus with coupled cpuidle

2012-12-03 Thread Vincent Guittot
-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/time/tick-sched.c |2 ++ 1 file changed, 2 insertions(+) diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c index 955d35b..b8d74ea 100644 --- a/kernel/time/tick-sched.c +++ b/kernel/time/tick-sched.c @@ -570,6 +570,8 @@ void

[PATCH Resend 3/3] sched: fix update NOHZ_IDLE flag

2012-12-03 Thread Vincent Guittot
to detect such intialization step and to not modify the NOHZ_IDLE flag Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 24a5588..1ef57a8 100644

[PATCH Resend 2/3] sched: fix init NOHZ_IDLE flag

2012-12-03 Thread Vincent Guittot
-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/core.c |1 + 1 file changed, 1 insertion(+) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index bae620a..77a01c8 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -5875,6 +5875,7 @@ static void

[PATCH Resend 0/3] sched: fix nr_busy_cpus

2012-12-03 Thread Vincent Guittot
idle state while booting all CPUs - when a CPU is unplug and/or replug Vincent Guittot (3): sched: fix nr_busy_cpus with coupled cpuidle sched: fix init NOHZ_IDLE flag sched: fix update NOHZ_IDLE flag kernel/sched/core.c |1 + kernel/sched/fair.c |2 +- kernel/time/tick

[PATCH] sched: fix wrong rq's runnable_avg update with rt task

2013-02-08 Thread Vincent Guittot
. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/core.c |3 +++ kernel/sched/fair.c | 10 ++ kernel/sched/sched.h |5 + 3 files changed, 18 insertions(+) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 26058d0..592e06c 100644

Re: [PATCH] sched: fix wrong rq's runnable_avg update with rt task

2013-02-08 Thread Vincent Guittot
On 8 February 2013 15:46, Steven Rostedt rost...@goodmis.org wrote: On Fri, 2013-02-08 at 12:11 +0100, Vincent Guittot wrote: When a RT task is scheduled on an idle CPU, the update of the rq's load is not done because CFS's functions are not called. Then, the idle_balance, which is called just

Re: [PATCH v2 1/2] sched: fix init NOHZ_IDLE flag

2013-02-08 Thread Vincent Guittot
On 8 February 2013 16:35, Frederic Weisbecker fweis...@gmail.com wrote: 2013/2/4 Vincent Guittot vincent.guit...@linaro.org: On 1 February 2013 19:03, Frederic Weisbecker fweis...@gmail.com wrote: diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 257002c..fd41924 100644

[PATCH v3 2/2] sched: fix update NOHZ_IDLE flag

2013-02-08 Thread Vincent Guittot
) first in order to detect such intialization step and to not modify the NOHZ_IDLE flag Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 5eea870

[PATCH v3 0/2] sched: fix nr_busy_cpus

2013-02-08 Thread Vincent Guittot
state instead of busy state so a CPU that enters idle during the build of the sched_domain will not corrupt the initialization state Change since V1: - remove the patch for SCHED softirq on an idle core use case as it was a side effect of the other use cases. Vincent Guittot (2): sched

[PATCH v3 1/2] sched: fix init NOHZ_IDLE flag

2013-02-08 Thread Vincent Guittot
/2 protects this init against an update of NOHZ_IDLE flag because a NULL sched_domain is attached to the CPU during the build of the new sched_domain so nohz_kick_needed and set_cpu_sd_state_busy are not called and can't clear the NOHZ_IDLE flag Signed-off-by: Vincent Guittot vincent.guit

Re: [PATCH v5 00/45] CPU hotplug: stop_machine()-free CPU hotplug

2013-02-11 Thread Vincent Guittot
Hi Srivatsa, I can try to run some of our stress tests on your patches. Have you got a git tree that i can pull ? Regards, Vincent On 8 February 2013 19:09, Srivatsa S. Bhat srivatsa.b...@linux.vnet.ibm.com wrote: On 02/08/2013 10:14 PM, Srivatsa S. Bhat wrote: On 02/08/2013 09:11 PM, Russell

[PATCH] sched: fix env-src_cpu for active migration

2013-02-12 Thread Vincent Guittot
need_active_balance uses env-src_cpu which is set only if there is more than 1 task on the run queue. We must set the src_cpu field unconditionnally otherwise the test env-src_cpu env-dst_cpu will always fail if there is only 1 task on the run queue Signed-off-by: Vincent Guittot vincent.guit

[PATCH v2] sched: fix wrong rq's runnable_avg update with rt task

2013-02-12 Thread Vincent Guittot
. Changes since V1: - move code out of schedule function and create a pre_schedule callback for idle class instead. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c | 10 ++ kernel/sched/idle_task.c |7 +++ kernel/sched/sched.h |5

Re: [PATCH v2] sched: fix wrong rq's runnable_avg update with rt task

2013-02-12 Thread Vincent Guittot
On 12 February 2013 14:23, Vincent Guittot vincent.guit...@linaro.org wrote: When a RT task is scheduled on an idle CPU, the update of the rq's load is not done because CFS's functions are not called. Then, the idle_balance, which is called just before entering the idle function, updates

Re: [PATCH v2] sched: fix wrong rq's runnable_avg update with rt task

2013-02-12 Thread Vincent Guittot
On 12 February 2013 15:53, Steven Rostedt rost...@goodmis.org wrote: On Tue, 2013-02-12 at 14:23 +0100, Vincent Guittot wrote: .set_curr_task = set_curr_task_idle, diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index fc88644..9707092 100644 --- a/kernel/sched/sched.h

Re: [PATCH] sched: fix env-src_cpu for active migration

2013-02-12 Thread Vincent Guittot
-dst_cpu will always fail if there is only 1 task on the run queue Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c |6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 81fa536..32938ea

[PATCH v3] sched: fix wrong rq's runnable_avg update with rt task

2013-02-13 Thread Vincent Guittot
. Changes since V2: - remove useless definition for UP platform - rebased on top of Steven Rostedt's patches : https://lkml.org/lkml/2013/2/12/558 Changes since V1: - move code out of schedule function and create a pre_schedule callback for idle class instead. Signed-off-by: Vincent Guittot

Re: [PATCH] sched: fix env-src_cpu for active migration

2013-02-13 Thread Vincent Guittot
Damien, Regarding your sched_domain config and especially the flags field, you should not be impacted by my patch because - need_active_balance is the only new place that use env-src_cpu in the load_balance function - and your machine will never test the condition: env-src_cpu env-dst_cpu in

Re: [PATCH] sched: fix env-src_cpu for active migration

2013-02-13 Thread Vincent Guittot
On 13 February 2013 15:08, Damien Wyart damien.wy...@gmail.com wrote: * Vincent Guittot vincent.guit...@linaro.org [2013-02-13 13:08]: Damien, Regarding your sched_domain config and especially the flags field, you should not be impacted by my patch because - need_active_balance is the only

Re: [PATCH v3] sched: fix wrong rq's runnable_avg update with rt task

2013-02-13 Thread Vincent Guittot
On 13 February 2013 16:28, Paul Turner p...@google.com wrote: On Wed, Feb 13, 2013 at 12:54 AM, Vincent Guittot vincent.guit...@linaro.org wrote: When a RT task is scheduled on an idle CPU, the update of the rq's load is not done because CFS's functions are not called. Then, the idle_balance

Re: [PATCH] sched: fix env-src_cpu for active migration

2013-02-13 Thread Vincent Guittot
On 13 February 2013 15:28, Vincent Guittot vincent.guit...@linaro.org wrote: On 13 February 2013 15:08, Damien Wyart damien.wy...@gmail.com wrote: * Vincent Guittot vincent.guit...@linaro.org [2013-02-13 13:08]: Damien, Regarding your sched_domain config and especially the flags field, you

Re: [PATCH v2 1/2] sched: fix init NOHZ_IDLE flag

2013-02-04 Thread Vincent Guittot
On 1 February 2013 19:03, Frederic Weisbecker fweis...@gmail.com wrote: 2013/1/29 Vincent Guittot vincent.guit...@linaro.org: On my smp platform which is made of 5 cores in 2 clusters,I have the nr_busy_cpu field of sched_group_power struct that is not null when the platform is fully idle

[PATCH v2 1/2] sched: fix init NOHZ_IDLE flag

2013-01-29 Thread Vincent Guittot
-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/core.c |1 + 1 file changed, 1 insertion(+) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 257002c..fd41924 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -5884,6 +5884,7 @@ static void

[PATCH v2 2/2] sched: fix update NOHZ_IDLE flag

2013-01-29 Thread Vincent Guittot
) first in order to detect such intialization step and to not modify the NOHZ_IDLE flag Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 5eea870

[PATCH v2 0/2] sched: fix nr_busy_cpus

2013-01-29 Thread Vincent Guittot
on an idle core use case as it was a side effect of the other use cases. Vincent Guittot (2): sched: fix init NOHZ_IDLE flag sched: fix update NOHZ_IDLE flag kernel/sched/core.c |1 + kernel/sched/fair.c |2 +- 2 files changed, 2 insertions(+), 1 deletion(-) -- 1.7.9.5

Re: [PATCH v4] sched: fix init NOHZ_IDLE flag

2013-02-26 Thread Vincent Guittot
On 26 February 2013 14:16, Frederic Weisbecker fweis...@gmail.com wrote: 2013/2/22 Vincent Guittot vincent.guit...@linaro.org: I wanted to avoid having to use the sd pointer for testing NOHZ_IDLE flag because it occurs each time we go into idle but it seems to be not easily feasible. Another

Re: [PATCH v4] sched: fix init NOHZ_IDLE flag

2013-02-27 Thread Vincent Guittot
On 26 February 2013 18:43, Frederic Weisbecker fweis...@gmail.com wrote: 2013/2/26 Vincent Guittot vincent.guit...@linaro.org: On 26 February 2013 14:16, Frederic Weisbecker fweis...@gmail.com wrote: 2013/2/22 Vincent Guittot vincent.guit...@linaro.org: I wanted to avoid having to use the sd

Re: [PATCH v4] sched: fix init NOHZ_IDLE flag

2013-02-27 Thread Vincent Guittot
On 27 February 2013 17:13, Frederic Weisbecker fweis...@gmail.com wrote: On Wed, Feb 27, 2013 at 09:28:26AM +0100, Vincent Guittot wrote: Ok I don't like having a per cpu state in struct sched domain but for now I can't find anything better. So my suggestion is that we do this and describe

Re: [PATCH 3/4] ARM: nomadik: add dynamic irq flag to the timer

2013-03-01 Thread Vincent Guittot
On 1 March 2013 02:13, Linus Walleij linus.wall...@linaro.org wrote: On Tue, Feb 26, 2013 at 11:17 PM, Daniel Lezcano daniel.lezc...@linaro.org wrote: Add the dynamic irq affinity feature to the timer clock device. Signed-off-by: Daniel Lezcano daniel.lezc...@linaro.org Looks reasonable to

Re: [PATCH v6 00/46] CPU hotplug: stop_machine()-free CPU hotplug

2013-03-01 Thread Vincent Guittot
Hi Srivatsa, I have run some tests with genload on my ARM platform but even with the mainline the cpu_down is quite short and stable ( around 4ms ) with 5 or 2 online cores. The duration is similar with your patches I have maybe not used the right option for genload ? I have used genload -m 10

Re: [PATCH Resend 1/3] sched: fix nr_busy_cpus with coupled cpuidle

2013-01-24 Thread Vincent Guittot
On 24 January 2013 17:44, Frederic Weisbecker fweis...@gmail.com wrote: 2012/12/3 Vincent Guittot vincent.guit...@linaro.org: With the coupled cpuidle driver (but probably also with other drivers), a CPU loops in a temporary safe state while waiting for other CPUs of its cluster to be ready

Re: [PATCH] sched: fix env-src_cpu for active migration

2013-02-14 Thread Vincent Guittot
On 13 February 2013 21:02, Damien Wyart damien.wy...@gmail.com wrote: Bingo, that was the problem in my setup: as the patch was applied through a script with others, I had missed the error message about the conflict (I have also another conflict which can be safely ignored so the new one did

Re: [PATCH] sched: fix env-src_cpu for active migration

2013-02-14 Thread Vincent Guittot
On 13 February 2013 21:03, Paul Turner p...@google.com wrote: On Tue, Feb 12, 2013 at 5:19 AM, Vincent Guittot vincent.guit...@linaro.org wrote: need_active_balance uses env-src_cpu which is set only if there is more than 1 task on the run queue. We must set the src_cpu field unconditionnally

Re: [PATCH v5 00/45] CPU hotplug: stop_machine()-free CPU hotplug

2013-02-18 Thread Vincent Guittot
On 15 February 2013 20:40, Srivatsa S. Bhat srivatsa.b...@linux.vnet.ibm.com wrote: Hi Vincent, On 02/15/2013 06:58 PM, Vincent Guittot wrote: Hi Srivatsa, I have run some tests with you branch (thanks Paul for the git tree) and you will find results below. Thank you very much

Re: [PATCH v5 00/45] CPU hotplug: stop_machine()-free CPU hotplug

2013-02-18 Thread Vincent Guittot
On 18 February 2013 11:51, Srivatsa S. Bhat srivatsa.b...@linux.vnet.ibm.com wrote: On 02/18/2013 04:04 PM, Srivatsa S. Bhat wrote: On 02/18/2013 03:54 PM, Vincent Guittot wrote: On 15 February 2013 20:40, Srivatsa S. Bhat srivatsa.b...@linux.vnet.ibm.com wrote: Hi Vincent, On 02/15/2013 06

Re: [PATCH v3 1/2] sched: fix init NOHZ_IDLE flag

2013-02-18 Thread Vincent Guittot
On 8 February 2013 19:05, Vincent Guittot vincent.guit...@linaro.org wrote: On my smp platform which is made of 5 cores in 2 clusters, I have the nr_busy_cpu field of sched_group_power struct that is not null when the platform is fully idle. The root cause seems to be: During the boot sequence

Re: [PATCH v2 1/2] sched: fix init NOHZ_IDLE flag

2013-02-18 Thread Vincent Guittot
On 18 February 2013 15:38, Frederic Weisbecker fweis...@gmail.com wrote: 2013/2/18 Frederic Weisbecker fweis...@gmail.com: 2013/2/8 Vincent Guittot vincent.guit...@linaro.org: On 8 February 2013 16:35, Frederic Weisbecker fweis...@gmail.com wrote: What if the following happen (inventing

Re: [PATCH v5 00/45] CPU hotplug: stop_machine()-free CPU hotplug

2013-02-18 Thread Vincent Guittot
On 18 February 2013 16:30, Steven Rostedt rost...@goodmis.org wrote: On Mon, 2013-02-18 at 11:58 +0100, Vincent Guittot wrote: My tests have been done without cpuidle because i have some issues with function tracer and cpuidle But the cpu hotplug and cpuidle work well when I run the tests

Re: [PATCH v2 1/2] sched: fix init NOHZ_IDLE flag

2013-02-19 Thread Vincent Guittot
On 18 February 2013 16:40, Frederic Weisbecker fweis...@gmail.com wrote: 2013/2/18 Vincent Guittot vincent.guit...@linaro.org: On 18 February 2013 15:38, Frederic Weisbecker fweis...@gmail.com wrote: I pasted the original at: http://pastebin.com/DMm5U8J8 We can clear the idle flag only

Re: [PATCH v5 00/45] CPU hotplug: stop_machine()-free CPU hotplug

2013-02-19 Thread Vincent Guittot
On 18 February 2013 20:53, Steven Rostedt rost...@goodmis.org wrote: On Mon, 2013-02-18 at 17:50 +0100, Vincent Guittot wrote: yes for sure. The problem is more linked to cpuidle and function tracer. cpu hotplug and function tracer work when cpuidle is disable. cpu hotplug and cpuidle works

  1   2   3   4   5   6   7   8   9   10   >