Re: [Linaro-validation] LAVA: Jobs submitted to vexpress device type

2012-09-25 Thread Dave Pigott
On 24 Sep 2012, at 12:03, Alexander Sack wrote: > On Mon, Sep 24, 2012 at 12:48 PM, Dave Pigott wrote: >> Unfortunately, not as easy as it sounds. We'd have to actually change the >> dispatcher to intercept submissions to vexpress, and then re-route them to >> vexpress-a9, because we can'\t have

Re: [Linaro-validation] LAVA: Jobs submitted to vexpress device type

2012-09-25 Thread Fathi Boudra
On 25 September 2012 10:22, Dave Pigott wrote: > On 24 Sep 2012, at 12:03, Alexander Sack wrote: > >> On Mon, Sep 24, 2012 at 12:48 PM, Dave Pigott wrote: >>> Unfortunately, not as easy as it sounds. We'd have to actually change the >>> dispatcher to intercept submissions to vexpress, and then re

Re: [Linaro-validation] LAVA: Jobs submitted to vexpress device type

2012-09-25 Thread Dave Pigott
On 25 Sep 2012, at 08:40, Fathi Boudra wrote: > On 25 September 2012 10:22, Dave Pigott wrote: >> On 24 Sep 2012, at 12:03, Alexander Sack wrote: >> >>> On Mon, Sep 24, 2012 at 12:48 PM, Dave Pigott >>> wrote: Unfortunately, not as easy as it sounds. We'd have to actually change the

[PATCH 2/3] workqueue: create __flush_delayed_work to avoid duplicating code

2012-09-25 Thread Viresh Kumar
flush_delayed_work() and flush_delayed_work_sync() had major portion of code similar. This patch introduces another routine __flush_delayed_work() which contains the common part to avoid code duplication. Signed-off-by: Viresh Kumar --- kernel/workqueue.c | 15 +-- 1 file changed, 9

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

2012-09-25 Thread Viresh Kumar
Workqueues queues work on current cpu, if the caller haven't passed a preferred cpu. This may wake up an idle CPU, which is actually not required. This work can be processed by any CPU and so we must select a non-idle CPU here. This patch adds in support in workqueue framework to get preferred CPU

[PATCH 0/3] Create sched_select_cpu() and use it in workqueues

2012-09-25 Thread Viresh Kumar
In order to save power, it would be useful to schedule work onto non-IDLE cpus instead of waking up an IDLE one. To achieve this, we need scheduler to guide kernel frameworks (like: timers & workqueues) on which is the most preferred CPU that must be used for these tasks. This patchset is about i

[PATCH 1/3] sched: Create sched_select_cpu() to give preferred CPU for power saving

2012-09-25 Thread Viresh Kumar
In order to save power, it would be useful to schedule work onto non-IDLE cpus instead of waking up an IDLE one. To achieve this, we need scheduler to guide kernel frameworks (like: timers & workqueues) on which is the most preferred CPU that must be used for these tasks. This routine returns the

Re: [PATCH 1/3] sched: Create sched_select_cpu() to give preferred CPU for power saving

2012-09-25 Thread Peter Zijlstra
On Tue, 2012-09-25 at 16:06 +0530, Viresh Kumar wrote: > +/* sched-domain levels */ > +#define SD_SIBLING 0x01/* Only for CONFIG_SCHED_SMT */ > +#define SD_MC 0x02/* Only for CONFIG_SCHED_MC */ > +#define SD_BOOK0x04/* Only for CONFIG

Re: [PATCH 0/3] Create sched_select_cpu() and use it in workqueues

2012-09-25 Thread Viresh Kumar
On 25 September 2012 16:06, Viresh Kumar wrote: > Test case 2: > --- > I have created a small module, which does following: > - Create one work for each CPU (using queue_work_on(), so must schedule on > that > cpu) > - Above work, will queue "n" works for each cpu with queue_work(). The

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

2012-09-25 Thread Peter Zijlstra
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) > { > int ret; > > - ret = queue_work_on(get_cpu(), wq, work); > - put_cpu(); > + preempt_disable(); > + ret = qu

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

2012-09-25 Thread Viresh Kumar
On 25 September 2012 16:52, Peter Zijlstra 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) >> { >> int ret; >> >> - ret = queue_work_on(get_cpu(), wq, work); >> -

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 wrote: > On 25 September 2012 16:52, Peter Zijlstra 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) >>> { >>> int ret; >>> >>> -

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

2012-09-25 Thread Peter Zijlstra
On Tue, 2012-09-25 at 17:00 +0530, Viresh Kumar wrote: > But this is what the initial idea during LPC we had. Yeah.. that's true. > Any improvements here you can suggest? We could uhm... /me tries thinking ... reuse some of the NOHZ magic? Would that be sufficient, not waking a NOHZ cpu, or do

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

2012-09-25 Thread Peter Zijlstra
On Tue, 2012-09-25 at 13:40 +0200, Peter Zijlstra wrote: > On Tue, 2012-09-25 at 17:00 +0530, Viresh Kumar wrote: > > But this is what the initial idea during LPC we had. > > Yeah.. that's true. > > > Any improvements here you can suggest? > > We could uhm... /me tries thinking ... reuse some

[PATCH][RESEND] power: opp: rcu reclaim

2012-09-25 Thread Vincent Guittot
synchronize_rcu blocks the caller of opp_enable/disbale for a complete grace period. This blocking duration prevents any intensive use of the functions. Replace synchronize_rcu by call_rcu which will call our function for freeing the old opp element. The duration of opp_enable and opp_disable will

Re: [Powertop] [PATCH v2 1/2] Updates to support Android platform

2012-09-25 Thread Chris Ferron
On 09/24/2012 10:34 PM, Rajagopal Venkat wrote: On 24 September 2012 21:27, Chris Ferron wrote: On 09/24/2012 06:28 AM, Rajagopal Venkat wrote: This patch adds following minor changes to prepare powertop to support Android platform. - Add missing HAVE_CONFIG_H conditional check. - remove un-u

big.LITTLE MP status Sep 25, 2012

2012-09-25 Thread David Zinman
https://wiki.linaro.org/projects/big.LITTLE.MP Announcement == == big.LITTLE Mini-Summit @ Linaro Connect Copenhagen Q32012 == Thursday November 1, 2012 Plenaries: 8.30 - 9.00, 2 x 15 minutes 9am - 1pm: 1 break 10.45am to 11.00am Plenaries - Introduction to th

Re: [PATCH 2/3] workqueue: create __flush_delayed_work to avoid duplicating code

2012-09-25 Thread Tejun Heo
On Tue, Sep 25, 2012 at 04:06:07PM +0530, Viresh Kumar wrote: > flush_delayed_work() and flush_delayed_work_sync() had major portion of code > similar. This patch introduces another routine __flush_delayed_work() which > contains the common part to avoid code duplication. This part has seen a lot

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

2012-09-25 Thread Tejun Heo
Hello, On Tue, Sep 25, 2012 at 04:06:08PM +0530, Viresh Kumar wrote: > +config MIGRATE_WQ > + bool "(EXPERIMENTAL) Migrate Workqueues to non-idle cpu" > + depends on SMP && EXPERIMENTAL > + help > + Workqueues queues work on current cpu, if the caller haven't passed a > + p

2012-09-26 Android Platform Team Meeting Agenda Posted

2012-09-25 Thread Zach Pfeffer
Please take a look at: https://wiki.linaro.org/Platform/Android/Meetings/2012-09-26 Feel free to add to the agenda and join us in #linaro-meeting on irc.freenode.net at 13:00 UTC on 2012/9/26. -- Zach Pfeffer Android Platform Team Lead, Linaro Platform Teams Linaro.org | Open source software fo

Re: [PATCH 2/3] workqueue: create __flush_delayed_work to avoid duplicating code

2012-09-25 Thread Viresh Kumar
On 25 September 2012 23:17, Tejun Heo wrote: > On Tue, Sep 25, 2012 at 04:06:07PM +0530, Viresh Kumar wrote: >> flush_delayed_work() and flush_delayed_work_sync() had major portion of code >> similar. This patch introduces another routine __flush_delayed_work() which >> contains the common part to