{"push_id":789980022,"size":54,"distinct_size":54,"ref":"refs/heads/cm-12.1","head":"f63a323fb1d0569752bd368886f87c39bde72a57","before":"24de315ed307948e521ad04f56a5f7a6ad89c512","commits":[{"sha":"4d2b5a0a7ca4a66355edfc8e9dc6de9d429e115d","author":{"email":"bb05168246ed1a6b66d0e7b1ffb0c5e3707764ca@codeaurora.org","name":"Junjie Wu"},"message":"arm: msm: Remove MSM_CPU_FREQ_SET_MIN_MAX related config\n\nMSM_CPU_FREQ_SET_MIN_MAX and related Kconfigs are deprecated. Purge\nthem from Kconfig and qcom-cpufreq.\n\nChange-Id: I8ac786c155c7e235154b60c79f97d76ea15dace2\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/4d2b5a0a7ca4a66355edfc8e9dc6de9d429e115d"},{"sha":"1340bf6d47d8a520c3832964db8fbbeeb458042e","author":{"email":"bb05168246ed1a6b66d0e7b1ffb0c5e3707764ca@codeaurora.org","name":"Junjie Wu"},"message":"qcom-cpufreq: Remove per-cpu workqueue\n\nIt's no longer a requirement to pin frequency change on the CPU that\nis being scaled. Therefore, there is no longer a need for per-cpu\nworkqueue in qcom-cpufreq. Remove the workqueue.\n\nChange-Id: Ic6fd7f898fa8b1b1226a178b04530c24f0398daa\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/1340bf6d47d8a520c3832964db8fbbeeb458042e"},{"sha":"6e4d16f4489427a8b12cce1e00e3ce41c06f000d","author":{"email":"785dce9813c74aa517a07b7a1160c1a9cdebd7be@codeaurora.org","name":"Swetha Chikkaboraiah"},"message":"cpufreq: cpu-boost: Use interruptible wait to not affect load average\n\nUsing the function wait_event in cpu_boost puts the\nprocess enter to 'D' state which contribute to the\nhigh load average. This change will put the process\nboost_sync in the 'S' state (interruptible sleep)\n\nChange-Id: Ie121adbe1fac1d2862ac5342bb97c7c926f7d7a8\nCRs-Fixed: 655484\nSigned-off-by: Swetha Chikkaboraiah <schikk@codeaurora.org>\nSigned-off-by: Raghavendra Ambadas <rambad@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/6e4d16f4489427a8b12cce1e00e3ce41c06f000d"},{"sha":"bdc4ceef99338fe8c1f73dc4ec4561668856970f","author":{"email":"bb05168246ed1a6b66d0e7b1ffb0c5e3707764ca@codeaurora.org","name":"Junjie Wu"},"message":"cpufreq: interactive: Revert timer start modification\n\ncommit f8b276565ce95bd788af0fc8d060f92632590a40\n(cpufreq: Sync on thread migration optimizations)\nintroduced a change to cpufreq_interactive_timer_start() in order\nto reschedule the timer differently based on whether min or max\nis changed. A better way is to reschedule the timer only when\nnecessary.\n\nRevert timer start modification in preparation for the final fix.\n\nChange-Id: I13f3b75a6eee03ac6380c24db899806a9bfbc96a\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/bdc4ceef99338fe8c1f73dc4ec4561668856970f"},{"sha":"2fe3997e7988df8d4fe9e80db2fcb74e3eb884cf","author":{"email":"ff359ca7f9aedbb05cd6aa3d17e7b3b3ad3b25c9@google.com","name":"Ruchi Kandoi"},"message":"cpufreq: interactive: turn boost_pulse off on boost off\n\nChange-Id: I36fe217fa047d68ea90e78b12c7db4537ea8010b\nSigned-off-by: Ruchi Kandoi <kandoiruchi@google.com>\nGit-commit: 49cc72365fb7ee87762a7ccc6a32ef68627216c5\nGit-repo: https://android.googlesource.com/kernel/common.git\nSigned-off-by: Ian Maund <imaund@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/2fe3997e7988df8d4fe9e80db2fcb74e3eb884cf"},{"sha":"8029d2973a7e0acd06718a1028a2fd77627009a6","author":{"email":"ff359ca7f9aedbb05cd6aa3d17e7b3b3ad3b25c9@google.com","name":"Ruchi Kandoi"},"message":"cpufreq: interactive: remove compilation error from commit\n49cc72365fb7ee87762a7ccc6a32ef68627216c5\n\nChange-Id: I068b18281d03ac879ef64d8ff36ed43367293767\nSigned-off-by: Ruchi Kandoi <kandoiruchi@google.com>\nGit-commit: d4f9b043ae029cf3462775d488232c8de4808f22\nGit-repo: https://android.googlesource.com/kernel/common.git\nSigned-off-by: Ian Maund <imaund@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/8029d2973a7e0acd06718a1028a2fd77627009a6"},{"sha":"a1ebd0926bc9894bcd95b847429e58f9b34baf29","author":{"email":"08a5689cdd3bf9d633b44aeb360c64ba4fe5af27@google.com","name":"Badhri Jagan Sridharan"},"message":"cpufreq: interactive: restructure CPUFREQ_GOV_LIMITS\n\nThe cpufreq_interactive_timer gets cancelled and rescheduled\nwhenever the cpufreq_policy is changed. When the cpufreq policy is\nchanged at a rate faster than the sampling_rate of the interactive\ngovernor, then the governor misses to change the target frequency\nfor long duration. The patch removes the need of cancelling the\ntimers when policy->min is changed.\n\nChange-Id: Ibd98d151e1c73b8bd969484583ff98ee9f1135ef\nSigned-off-by: Badhri Jagan Sridharan <Badhri@google.com>\nGit-commit: 9b97d655a558607c5d46ef1f21365d695f8d1ee2\nGit-Repo: https://android.googlesource.com/kernel/common.git\n[junjiew@codeaurora.org: resolve merge conflicts]\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/a1ebd0926bc9894bcd95b847429e58f9b34baf29"},{"sha":"37c8eab64f4cfa2a728a5e271bdfcc514ebb1143","author":{"email":"bb05168246ed1a6b66d0e7b1ffb0c5e3707764ca@codeaurora.org","name":"Junjie Wu"},"message":"cpufreq: interactive: Duplicate upstream governor implementation\n\nCopy drivers/cpufreq/cpufreq_interactive.c from\ncommit 9b97d655a558607c5d46ef1f21365d695f8d1ee2\n(cpufreq: interactive: restructure CPUFREQ_GOV_LIMITS)\nto driver/cpufreq/cpufreq_interactive_pro.c.\n\nChange-Id: I168ab73772d64d39be3230300ea85fce7dcdd2d0\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/37c8eab64f4cfa2a728a5e271bdfcc514ebb1143"},{"sha":"48a1ccc218e1fdcc8e1955d8a68167f7ffb8ce1f","author":{"email":"fdb5d1cb6ed8f9d0830c0d2ba3a36aa8ada85451@codeaurora.org","name":"Anurag Singh"},"message":"cpufreq: persistent_stats: Synchronize access to time_in_state\n\nThe cpufreq_stats_create_table function does not fully protect cpu_stats'\nmembers with a spinlock. This change fixes that. It also performs a\nnull-check on freq_table in freq_table_get_index and returns -ENOENT\nappropriately.\n\nChange-Id: I301d1b23ef766a77161bab1472dc810d53b6c5fe\nSigned-off-by: Anurag Singh <anursing@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/48a1ccc218e1fdcc8e1955d8a68167f7ffb8ce1f"},{"sha":"efa6b8a1c10342de311804907f30955b8e24b442","author":{"email":"bb05168246ed1a6b66d0e7b1ffb0c5e3707764ca@codeaurora.org","name":"Junjie Wu"},"message":"cpufreq: interactive_pro: Fix double definition of get_cpu_idle_time()\n\nUpstream has moved get_cpu_idle_time() and related functions into core\nCPUfreq framework. Remove unnecessary functions in interactive governor.\n\nChange-Id: Ibba09e190581610b2c4bc17344164973414f1b12\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/efa6b8a1c10342de311804907f30955b8e24b442"},{"sha":"11d90e523e5ec4379b512bc0c636e25dc627c6eb","author":{"email":"bb05168246ed1a6b66d0e7b1ffb0c5e3707764ca@codeaurora.org","name":"Junjie Wu"},"message":"cpufreq: interactive_pro: Rename new governor to interactive_pro\n\nRename governor in cpufreq_interactive_pro.c to interactive_pro.\nAlso fix compilation error for tracepoint definitions.\n\nChange-Id: Ic4eb722fc50565489296a16c0193a4373d76ba5b\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/11d90e523e5ec4379b512bc0c636e25dc627c6eb"},{"sha":"bb68356f0ccc66e76053bdbfa390ef66beb181fe","author":{"email":"bb05168246ed1a6b66d0e7b1ffb0c5e3707764ca@codeaurora.org","name":"Junjie Wu"},"message":"cpufreq: interactive_pro: Call cpufreq_get/put_global_kobject correctly\n\ncpufreq_get/put_global_kobject() provides refcounting for\ncpufreq_global_kobject. Users need to call these APIs if they intend\nto use cpufreq_global_kobject.\n\nWrap cpufreq_global_kobject usage with get/put calls in interactive\ngovernor.\n\nChange-Id: I03c6830c297475a83c3eab723f1ec5449dcd151a\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/bb68356f0ccc66e76053bdbfa390ef66beb181fe"},{"sha":"41cb98049d7956b96acb5abe080cc22eaf0f4274","author":{"email":"ce25c3cee4cc6c4c8acfc1680b3ed89cf644dba3@codeaurora.org","name":"Saravana Kannan"},"message":"cpufreq: interactive: Fix freeing of cached tunabled during module_exit()\n\nTo avoid multiple frees of an allocated tunables struct during\nmodule_exit(), the pointer to the allocated tunables should be stored in\nonly one of the per-CPU cached_tunables pointer.\n\nSo, in the case of per policy governor configuration, store the cached\nvalues in the pointer of first CPU in a policy. In the case of one governor\nacross all policies, store it in the CPU0 pointer.\n\nChange-Id: Id4334246491519ac91ab725a8758b2748f743bb0\nSigned-off-by: Saravana Kannan <skannan@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/41cb98049d7956b96acb5abe080cc22eaf0f4274"},{"sha":"617f8a9ec341682743afc15de7d2f869b8328912","author":{"email":"bb05168246ed1a6b66d0e7b1ffb0c5e3707764ca@codeaurora.org","name":"Junjie Wu"},"message":"cpufreq: interactive_pro: Permanently cache tunable values\n\nUserspace might change tunable values for a governor. Currently, if\nall CPUs in a policy go offline, governor frees its tunable. This\nwipes out all userspace modifications. Kernel drivers can call\ncpu_up/down() directly and thus userspace won't have a chance to\nrestore the tunables.\n\nPermanently save tunable struct in a per_cpu field so that we\npreserve tunable values across hotplug, suspend/resume and governor\nswitch.\n\nChange-Id: I5bc11d40e6bf649bdcb49f209468583d37a4c424\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/617f8a9ec341682743afc15de7d2f869b8328912"},{"sha":"33222f0ed82d5be70d32a5835bd44f063615f4e8","author":{"email":"bb05168246ed1a6b66d0e7b1ffb0c5e3707764ca@codeaurora.org","name":"Junjie Wu"},"message":"cpufreq: interactive_pro: Align timer windows for all CPUs\n\nIt's more advantageous to evaluate all CPUs at same time so that\ninteractive governor gets a complete picture of the load on\neach CPU at a specific time. It could also reduce number of speed\nchanges made if there are many CPUs controlled by same policy.\n\nChange-Id: I4cfa5027b7a8c647f34893215573dc1fcd6428d5\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/33222f0ed82d5be70d32a5835bd44f063615f4e8"},{"sha":"29f164435c64616ae264c3c975ce9c271199fdd4","author":{"email":"bb05168246ed1a6b66d0e7b1ffb0c5e3707764ca@codeaurora.org","name":"Junjie Wu"},"message":"cpufreq: interactive_pro: Replace load evaluation with scheduler hints\n\nScheduler has more information about what potential load could be\non each CPU in the future. Use scheduler hints instead of busy/idle\ntime from past window.\n\nIn addition, replace mod_timer_pinned() with del_timer(), add_timer_on().\nmod_timer_pinned() always adds timer onto current CPU. Interactive\ngovernor expects each CPU's timers to be running on the same CPU, but\nload change callback might be triggered from other CPUs.\n\nReplacing mod_timer_pinned() with del_timer() and add_timer_on()\nguarantees timers are still run on the right CPU even if another CPU\nreschedules the timer.\n\nChange-Id: Ic7c917bffe7bfef60c9ef93072276aa873927ad7\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/29f164435c64616ae264c3c975ce9c271199fdd4"},{"sha":"e0a996650050e0c34caefd239144141cca659144","author":{"email":"bb05168246ed1a6b66d0e7b1ffb0c5e3707764ca@codeaurora.org","name":"Junjie Wu"},"message":"cpufreq: interactive: BUG_ON when tunables are NULL after init\n\nWhen tunables are not available for events other than\nCPUFREQ_GOV_POLICY_INIT in cpufreq_governor_interactive(), trigger a\npanic instead of throwing a warning.\n\nWhen the original warning happens, some race condition must have\noccurred, and governor will be in a bad state even if it might still\nrun for a while. Panic directly so that it's easier to catch the\nfirst race event.\n\nChange-Id: I2dc1185cabfe72a63739452731fe242924d2cf45\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/e0a996650050e0c34caefd239144141cca659144"},{"sha":"8042a169bf92e23a69c4bd8031e861af46e2f105","author":{"email":"bb05168246ed1a6b66d0e7b1ffb0c5e3707764ca@codeaurora.org","name":"Junjie Wu"},"message":"Revert \"cpufreq: interactive: Allow 1 ms error in above_hispeed_delay comparisons\"\n\nThis reverts commit ff6af80775231f1dfab8353d0b665718222218bf.\n\nCommit ff6af807 tries to avoid a corner case where frequency is stuck in\nhispeed_freq for one additional window. For example, if timer_rate is\n20ms, and go_hispeed_delay is 40ms, frequency might be stuck at\nhispeed_freq for 60ms due to imprecision in jiffies. Same problem can be\neasily solved by making go_hispeed_delay 1ms smaller instead of changing\nthe code.\n\nChange-Id: Idab7c29ed28374df219210e444454068864d144d\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/8042a169bf92e23a69c4bd8031e861af46e2f105"},{"sha":"1d6d25372d360ac4ed93134c1d3b8e7daa0c26c4","author":{"email":"bb05168246ed1a6b66d0e7b1ffb0c5e3707764ca@codeaurora.org","name":"Junjie Wu"},"message":"cpufreq: interactive_pro: Fix race condition in adding/deleting timers\n\nAdding or deleting timer should be protected by a lock to prevent\ndouble add errors. Otherwise, following crash might occur.\n\nkernel BUG at <...>/kernel/lib/list_debug.c:40!\nInternal error: Oops - BUG: 0 [#1] PREEMPT SMP\nModules linked in:\nCall trace:\n[<ffffffc0002a7a3c>] __list_add+0xcc/0xf4\n[<ffffffc0000a3844>] __internal_add_timer+0xa4/0xb0\n[<ffffffc0000a38bc>] internal_add_timer+0x14/0x4c\n[<ffffffc0000a4538>] add_timer_on+0x118/0x148\n[<ffffffc000674244>] load_change_callback+0x64/0x88\n[<ffffffc0000bb538>] notifier_call_chain+0x44/0x80\n[<ffffffc0000bb6c8>] __atomic_notifier_call_chain+0x38/0x50\n[<ffffffc0000bb6f0>] atomic_notifier_call_chain+0x10/0x1c\n[<ffffffc0000c4b80>] set_task_cpu+0x418/0x4d0\n[<ffffffc0000c70d8>] try_to_wake_up+0x228/0x3b8\n[<ffffffc0000c72d4>] wake_up_state+0xc/0x18\n[<ffffffc0000ecbe0>] wake_futex+0x6c/0xa0\n[<ffffffc0000ed584>] futex_wake+0xd4/0x124\n[<ffffffc0000eec74>] do_futex+0xe4/0x8b0\n[<ffffffc0000ef978>] compat_SyS_futex+0xc8/0x150\n\nCRs-fixed: 696284\nChange-Id: I504a129b62120867db7587b2fb3df27525852093\nSigned-off-by: Junjie Wu <junjiew@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/1d6d25372d360ac4ed93134c1d3b8e7daa0c26c4"},{"sha":"8fbba7bc7982ab0b3e83f067db20f3a3de8a2755","author":{"email":"9296a0ca31e8299ed6ec39daa4ff56fd47a51cb6@codeaurora.org","name":"Rohit Gupta"},"message":"cpufreq: cpu-boost: Make the code 64 bit compatible\n\nAs the pointers' size change to 64 bits in the 64 bit kernel, the\nint declarations for them from the legacy code give compilation\nwarnings which get flagged as errors.\nReplace int casting of pointers with long to get rid of these\nwarnings.\n\nChange-Id: I96b6cf342c2bf110220eac0addfb72fbdd969c6e\nSigned-off-by: Rohit Gupta <rohgup@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/dianlujitao/android_kernel_huawei_msm8916/commits/8fbba7bc7982ab0b3e83f067db20f3a3de8a2755"}]}