add sioplus scheduler
mm: Don't wait for congestion when mem is high

This fixes a huge IOWAIT issue when memory usage is high.
Credits to Oppo

Change-Id: I6123909b7350a7ff3b7173d296ce1a03afd53ad4
android: logger: reduce to 128k the size of logger device
msm: rq_stats: Support to know cpu utilization in userspace

Support to read utilization stats from userspace, used by
mpdecision. This implementation is independent of governor
and sampling rates.

Change-Id: I678c7462ba77d84ce4c51c36a61da7ac99ffecc8
Signed-off-by: Narayanan Gopalakrishnan <nargop@codeaurora.org>
Signed-off-by: Ajay Dudani <adudani@codeaurora.org>
msm: rq_stats: Fix missing initalization of cur_freq
msm:rq_stats: Add hotplug disable attribute

Register for suspend and resume notifications from kernel. This should
be done as part of core_initcall so as to receive notification as close
as possible to the actual event. Add hotplug_disable attribute to
rq-stats node. Set/clear this attribute based on the suspend/resume events.

CRS-fixed: 452456
Bug: 9022807
Change-Id: I76fee349b57f47df40785e9c2503e2e1cc6e064e
Signed-off-by: Archana Sathyakumar <asathyak@codeaurora.org>
Signed-off-by: Mekala Natarajan <mekalan@codeaurora.org>
msm:rq_stats: Register for Cpufreq policy notification

Currently the load of the system is calculated using the max
frequency that is read during startup(It does not get updated
when the policy changes). As a result, the average load of the
system is incorrectly calculated and the system might not bring
the cpus online to manage the additional load. This
reduces the performance of the system.

To fix this issue, register rq_stats to receive cpufreq policy
notifications. Update the policy's max frequency when a
notification is received and use that value to calculate the load.

Change-Id: Icc78e28c736c170e198f723fd96c13dfb2dafe8a
Signed-off-by: Archana Sathyakumar <asathyak@codeaurora.org>
Signed-off-by: Anji Jonnala <anjir@codeaurora.org>
msm: thermal: use thermal control from @myfluxy n4 kernel
msm: thermal: cleaned unused code
msm: thermal: reduced tamp max to 75c and tuning board
msm: thermal: make thermal harmonious
msm: thermal: add freq_debug switch to reduce logs in dmesg

Thanks
@dorimanx
defconfig: use row as default scheduler
Image: Update makecompile
mach-msm: Add CPU voltage interface
devices-msm8x60: Increase KGSL max bus bandwidth
sched: cpu_power: enable ARCH_POWER

Heteregeneous ARM platform uses arch_scale_freq_power function
to reflect the relative capacity of each core

Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1341826026-6504-6-git-send-email-vincent.guittot@linaro.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
sched: Add controls for sched features
sched: Remove stale power aware scheduling remnants and dysfunctional knobs
sched/numa: Add SD_PERFER_SIBLING to CPU domain

Commit 8e7fbcbc22c ("sched: Remove stale power aware scheduling remnants
and dysfunctional knobs") removed SD_PERFER_SIBLING from the CPU domain.

On NUMA machines this causes that load_balance() doesn't perfer LCPU in
 same physical CPU package.

It causes some actual performance regressions on our NUMA machines from
Core2 to NHM and SNB.

Adding this domain flag again recovers the performance drop.

This change doesn't have any bad impact on any of my benchmarks:
 specjbb, kbuild, fio, hackbench .. etc, on all my machines.

Signed-off-by: Alex Shi <alex.shi@intel.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1342765190-21540-1-git-send-email-alex.shi@intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>