On 4 July 2012 16:09, Amit Kucheria amit.kucheria@linaro.org wrote:
Hi all,
Git Location: http://git.linaro.org/gitweb?p=arm/big.LITTLE/mp.git%3Ba=summary Branch: big-LITTLE-MP-v1
We're announcing a kernel tree to track the various topics of the big.LITTLE MP project. The aim of this tree is to help consolidate the various topic patchsets that improve the behaviour of Linux on asymmetric cores (e.g. big.LITTLE) and make smarter scheduling decisions possible in order to save power. I'd like to think of it as a linux-next tree focused on asymmetric support enablement.
Viresh will recreate this tree when new versions of the topic patchsets are available. IOW, as the patches are reviewed on the lists and go through iterations, we'll pull each topic patchset into a topic branch (e.g. per-task-load-average-v2, arm-asymmetric-support-v3). Then a merge tree will be created (e.g. big-LITTLE-MP-v1) as needed based on the latest versions of these topics. This should allow users to track individual topics or leave out some topics if they so desire. More topics will be added to this tree as the work becomes available.
Linaro platform team will take the merge branch (big-LITTLE-MP-v1, -v2, etc.) and use it for platform enablement work and testing on real hardware and models.
Problems should be reported on LKML/LAKML as usual if they are related to the individual topic trees. If they're related to a bad merge or config enablement please report on linaro-dev@lists.linaro.org.
Hi Andrey,
big-LITTLE-MP-v2 is ready to be pulled in. Following is a pull request for it:
--------------8<--------------------->8-------------------
The following changes since commit bd0a521e88aa7a06ae7aabaed7ae196ed4ad867a:
Linux 3.5-rc6 (2012-07-07 17:23:56 -0700)
are available in the git repository at:
git://git.linaro.org/arm/big.LITTLE/mp.git big-LITTLE-MP-v2
for you to fetch changes up to ca789c61deb0219cd3fefdb26090bbc9701deada:
Merge branches 'arm-asymmetric-support-v3', 'cpuidle-next-v4', 'per-cpu-thread-hotplug-v2', 'task-placement-v1' and 'config-fragments' into big-LITTLE-MP-v3 (2012-07-11 10:51:29 +0100)
----------------------------------------------------------------
Ben Segall (1): sched: maintain per-rq runnable averages
Colin Cross (4): cpuidle: refactor out cpuidle_enter_state cpuidle: fix error handling in __cpuidle_register_device cpuidle: add support for states that affect multiple cpus cpuidle: coupled: add parallel barrier function
Morten Rasmussen (5): sched: Add ftrace events for entity load-tracking sched: entity load-tracking load_avg_ratio sched: load-tracking driven wakeup migration for HMP platforms sched: Forced migration of high load task on HMP platforms sched: Add HMP forced task migration ftrace event
Paul E. McKenney (1): rcu: Use smp_hotplug_thread facility for RCUs per-CPU kthread
Paul Turner (15): sched: track the runnable average on a per-task entitiy basis sched: aggregate load contributed by task entities on parenting cfs_rq sched: maintain the load contribution of blocked entities sched: add an rq migration call-back to sched_class sched: account for blocked load waking back up sched: aggregate total task_group load sched: compute load contribution by a group entity sched: normalize tg load contributions against runnable time sched: maintain runnable averages across throttled periods sched: replace update_shares weight distribution with per-entity computation sched: refactor update_shares_cpu() -> update_blocked_avgs() sched: update_cfs_shares at period edge sched: make __update_entity_runnable_avg() fast sched: implement usage tracking sched: introduce temporary FAIR_GROUP_SCHED dependency for load-tracking
Peter Zijlstra (1): sched, x86: Remove broken power estimation
Thomas Gleixner (6): rcu: Yield simpler kthread: Implement park/unpark facility smpboot: Provide infrastructure for percpu hotplug threads softirq: Use hotplug thread infrastructure watchdog: Use hotplug thread infrastructure infiniband: ehca: Use hotplug thread infrastructure
Vincent Guittot (4): ARM: topology: Add arch_scale_freq_power function ARM: topology: factorize the update of sibling masks ARM: topology: Update cpu_power according to DT information sched: cpu_power: enable ARCH_POWER
Viresh Kumar (3): configs: Add config fragments for big LITTLE MP linaro/configs: Update big LITTLE MP fragment for task placement work Merge branches 'arm-asymmetric-support-v3', 'cpuidle-next-v4', 'per-cpu-thread-hotplug-v2', 'task-placement-v1' and 'config-fragments' into big-LITTLE-MP-v3
arch/arm/Kconfig | 29 + arch/arm/kernel/topology.c | 209 +++- arch/x86/kernel/cpu/Makefile | 2 +- arch/x86/kernel/cpu/sched.c | 55 - drivers/cpuidle/Kconfig | 3 + drivers/cpuidle/Makefile | 1 + drivers/cpuidle/coupled.c | 715 +++++++++++ drivers/cpuidle/cpuidle.c | 68 +- drivers/cpuidle/cpuidle.h | 32 + drivers/infiniband/hw/ehca/ehca_irq.c | 240 ++-- drivers/infiniband/hw/ehca/ehca_irq.h | 5 +- include/linux/cpuidle.h | 11 + include/linux/kthread.h | 11 +- include/linux/sched.h | 19 + include/linux/smpboot.h | 40 + include/trace/events/sched.h | 151 +++ kernel/cpu.c | 10 +- kernel/kthread.c | 184 ++- kernel/rcutree.c | 12 +- kernel/rcutree.h | 15 +- kernel/rcutree_plugin.h | 375 +----- kernel/rcutree_trace.c | 3 +- kernel/sched/core.c | 5 + kernel/sched/debug.c | 39 +- kernel/sched/fair.c | 1105 ++++++++++++++--- kernel/sched/features.h | 2 +- kernel/sched/sched.h | 60 +- kernel/smpboot.c | 206 ++++ kernel/smpboot.h | 4 + kernel/softirq.c | 84 +- kernel/watchdog.c | 231 ++-- linaro/configs/android.conf | 30 + linaro/configs/big-LITTLE-MP.conf | 9 + linaro/configs/linaro-base.conf | 84 ++ linaro/configs/ubuntu-minimal.conf | 24 + linaro/configs/ubuntu.conf | 2133 +++++++++++++++++++++++++++++++++ 36 files changed, 5174 insertions(+), 1032 deletions(-) delete mode 100644 arch/x86/kernel/cpu/sched.c create mode 100644 drivers/cpuidle/coupled.c create mode 100644 include/linux/smpboot.h create mode 100644 linaro/configs/android.conf create mode 100644 linaro/configs/big-LITTLE-MP.conf create mode 100644 linaro/configs/linaro-base.conf create mode 100644 linaro/configs/ubuntu-minimal.conf create mode 100644 linaro/configs/ubuntu.conf