Merge remote-tracking branch 'msm-4.4/tmp-8f70215' into msm-4.8
* msm44/tmp-8f70215:
defconfig: msmskunk: Turn on SCHED_TUNE related config options.
sysctl: disallow setting sched_time_avg_ms to 0
sysctl: define upper limit for sched_freq_reporting_policy
sched: fix argument type in update_task_burst()
sched: maintain group busy time counters in runqueue
sched: set LBF_IGNORE_PREFERRED_CLUSTER_TASKS correctly
cpumask: Correctly report CPU as not isolated in UP case
sched: Update capacity and load scale factor for all clusters at boot
sched: kill sync_cpu maintenance
sched: hmp: Remove the global sysctl_sched_enable_colocation tunable
sched: hmp: Ensure that best_cluster() never returns NULL
sched: Initialize variables
sched: Fix compilation errors when CFS_BANDWIDTH && !SCHED_HMP
sched: fix compiler errors with !SCHED_HMP
sched: Convert the global wake_up_idle flag to a per cluster flag
sched: fix a bug in handling top task table rollover
sched: fix stale predicted load in trace_sched_get_busy()
sched: Delete heavy task heuristics in prediction code
sched: Fix new task accounting bug in transfer_busy_time()
sched: Fix deadlock between cpu hotplug and upmigrate change
sched: Avoid packing tasks with low sleep time
sched: Track average sleep time
sched: Avoid waking idle cpu for short-burst tasks
sched: Track burst length for tasks
sched: Ensure proper task migration when a CPU is isolated
sched/core: Fix race condition in clearing hmp request
sched/core: Prevent (user) space tasks from affining to isolated cpus
sched: pre-allocate colocation groups
sched/core: Do not free task while holding rq lock
sched: Disable interrupts while holding related_thread_group_lock
sched: Ensure proper synch between isolation, hotplug, and suspend
sched/hmp: Enhance co-location and scheduler boost features
sched: revise boost logic when boost_type is SCHED_BOOST_ON_BIG
sched: Remove thread group iteration from colocation
core_ctl: Export boost function
sched: core: Skip migrating tasks that aren't enqueued on dead_rq
sched/core: Fix migrate tasks bail-out condition
core_ctl: Synchronize access to cluster cpu list
sched: Ensure watchdog is enabled before disabling
sched/core: Keep rq online after cpu isolation
sched: Fix race condition with active balance
sched/hmp: Fix memory leak when task fork fails
sched/hmp: Use GFP_KERNEL for top task memory allocations
sched/hmp: Use improved information for frequency notifications
sched/hmp: Remove capping when reporting load to the cpufreq governor
sched: prevent race between disable window statistics and task grouping
sched/hmp: Disable interrupts when resetting all task stats
sched/hmp: Automatically add children threads to colocation group
sched: Fix compilation issue with reset_hmp_stats
sched/fair: Fix compilation issue
sched: Set curr/prev_window_cpu pointers to NULL in sched_exit()
sched: don't bias towards waker cluster when sched_boost is set
sched/hmp: Fix range checking for target load
sched/core_ctl: Move header file to global location
core_ctl: Add refcounting to boost api
sched/fair: Fix issue with trace flag not being set properly
sched: Add multiple load reporting policies for cpu frequency
sched: Optimize the next top task search logic upon task migration
sched: Add the mechanics of top task tracking for frequency guidance
sched: Enhance the scheduler migration load fixup feature
sched: Add per CPU load tracking for each task
sched: bucketize CPU c-state levels
sched: use wakeup latency as c-state determinant
sched/tune: Remove redundant checks for NULL css
sched: Add cgroup attach functionality to the tune controller
sched: Update the number of tune groups to 5
sched/tune: add initial support for CGroups based boosting
sched/tune: add sysctl interface to define a boost value
sched: Fix integer overflow in sched_update_nr_prod()
sched: Add a device tree property to specify the sched boost type
sched: Add a stub function for init_clusters()
sched: add a knob to prefer the waker CPU for sync wakeups
sched: Fix a division by zero bug in scale_exec_time()
sched: Fix CPU selection when all online CPUs are isolated
sched: don't assume higher capacity means higher power in lb
sched/core_ctl: Integrate core control with cpu isolation
sched/core_ctl: Refactor cpu data
trace: Move core control trace events to scheduler
core_ctrl: Move core control into kernel
sched/tick: Ensure timers does not get queued on isolated cpus
perf: Add cpu isolation awareness
smp: Do not wake up all idle CPUs
pmqos: Enable cpu isolation awareness
vmstat: Add cpu isolation awareness
irq: Make irq affinity function cpu isolation aware
drivers/base: cpu: Add node for cpu isolation
sched/core: Add trace point for cpu isolation
sched: add cpu isolation support
watchdog: Add support for cpu isolation
soc: qcom: watchdog_v2: Add support for cpu isolation
cpumask: Add cpu isolation support
timer: Do not require CPUSETS to be enabled for migration
timer: Add function to migrate timers
hrtimer.h: prevent pinned timer state from breaking inactive test
hrtimer: make sure PINNED flag is cleared after removing hrtimer
hrtimer: create hrtimer_quiesce_cpu() to isolate CPU from hrtimers
hrtimer: update timer->state with 'pinned' information
timer: create timer_quiesce_cpu() to isolate CPU from timers
arm64: topology: Export arch_get_cpu_efficiency API
arm64: topology: Allow specifying the CPU efficiency from device tree
arm64: topology: Define arch_get_cpu_efficiency() API for scheduler
arm64: topology: Tell the scheduler about the relative power of cores
sched: Introduce the concept CPU clusters in the scheduler
Change-Id: I76be10a2bec8d445f918e2b5505f117810001740
Signed-off-by: Syed Rameez Mustafa <rameezmustafa@codeaurora.org>