{"push_id":1474636676,"size":64,"distinct_size":64,"ref":"refs/heads/c7.1.1","head":"a2a22816dbc02c977ff889ae21d8150c5a78203a","before":"05c7fdaeeacdbe77c30664b48e94906400f4f4c1","commits":[{"sha":"5df982648e52a5c0091307ee6767827d56c36aa4","author":{"name":"Syed Rameez Mustafa","email":"d0cb06bd5d626529e5ca7f6aba1e2023bbe2ea99@codeaurora.org"},"message":"cpuidle: check for need_resched() after the idle entry trace event\n\ntrace_cpu_idle_rcuidle() can end up waking ksoftirqd under certain\nconditions. Since there is no check for need_resched() following\nthis wake up, the cpu ends up going into an idle state despite there\nbeing a runnable task on that runqueue. Furthermore, since the\nresched flag is set, any sucessive waking up tasks on the idle cpu\nwill not result in an IPI being sent to that cpu. Consequently tasks\non that runqueue will starve until the cpu exits idle by itself. Fix\nthis problem by adding a need_resched() check after the idle entry\ntrace event.\n\nA side effect of this change is that the idle trace entry and exit\nevent may be recorded for an extremely short duration even though\nthe cpu does not actually enter idle.\n\nChange-Id: I370c39a1e39ecd829e44ac783b4888a00ab05eae\nSigned-off-by: Syed Rameez Mustafa <rameezmustafa@codeaurora.org>\nSigned-off-by: franciscofranco <franciscofranco.1990@gmail.com>\nSigned-off-by: Chet Kener <Cl3Kener@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/5df982648e52a5c0091307ee6767827d56c36aa4"},{"sha":"d13e386585b7b05d9fa8a8dc553f58ea4f342aee","author":{"name":"Sergey Senozhatsky","email":"9251ceca1068cc8334161fa91b1f6065a5ee8fa4@gmail.com"},"message":"cpuidle: remove unused hrtimer_peek_ahead_timers() call\n\n  Author: Arjan van de Ven <arjan@linux.intel.com>\n  Date:   Sun Nov 9 12:45:10 2008 -0800\n\n     regression: disable timer peek-ahead for 2.6.28\n\n     It's showing up as regressions; disabling it very likely just papers\n     over an underlying issue, but time is running out for 2.6.28, lets get\n     back to this for 2.6.29\n\n Many years has passed since 2008, so it seems ok to remove whole `#if 0' block.\n\nSigned-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>\nCc: Kevin Hilman <khilman@ti.com>\nCc: Trinabh Gupta <g.trinabh@gmail.com>\nCc: Deepthi Dharwar <deepthi@linux.vnet.ibm.com>\nCc: Arjan van de Ven <arjan@infradead.org>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Len Brown <len.brown@intel.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/d13e386585b7b05d9fa8a8dc553f58ea4f342aee"},{"sha":"48f779ca6b818bdaf9e88f76f8c6889238e88574","author":{"name":"Preeti U Murthy","email":"b9720af448ad8bdb231acb3f08c7fda120f2f8f5@linux.vnet.ibm.com"},"message":"PM / cpuidle: System resume hang fix with cpuidle\n\nOn certain bios, resume hangs if cpus are allowed to enter idle states\nduring suspend [1].\n\nThis was fixed in apci idle driver [2].But intel_idle driver does not\nhave this fix. Thus instead of replicating the fix in both the idle\ndrivers, or in more platform specific idle drivers if needed, the\nmore general cpuidle infrastructure could handle this.\n\nA suspend callback in cpuidle_driver could handle this fix. But\na cpuidle_driver provides only basic functionalities like platform idle\nstate detection capability and mechanisms to support entry and exit\ninto CPU idle states. All other cpuidle functions are found in the\ncpuidle generic infrastructure for good reason that all cpuidle\ndrivers, irrepective of their platforms will support these functions.\n\nOne option therefore would be to register a suspend callback in cpuidle\nwhich handles this fix. This could be called through a PM_SUSPEND_PREPARE\nnotifier. But this is too generic a notfier for a driver to handle.\n\nAlso, ideally the job of cpuidle is not to handle side effects of suspend.\nIt should expose the interfaces which \"handle cpuidle 'during' suspend\"\nor any other operation, which the subsystems call during that respective\noperation.\n\nThe fix demands that during suspend, no cpus should be allowed to enter\ndeep C-states. The interface cpuidle_uninstall_idle_handler() in cpuidle\nensures that. Not just that it also kicks all the cpus which are already\nin idle out of their idle states which was being done during cpu hotplug\nthrough a CPU_DYING_FROZEN callbacks.\n\nNow the question arises about when during suspend should\ncpuidle_uninstall_idle_handler() be called. Since we are dealing with\ndrivers it seems best to call this function during dpm_suspend().\nDelaying the call till dpm_suspend_noirq() does no harm, as long as it is\nbefore cpu_hotplug_begin() to avoid race conditions with cpu hotpulg\noperations. In dpm_suspend_noirq(), it would be wise to place this call\nbefore suspend_device_irqs() to avoid ugly interactions with the same.\n\nAnanlogously, during resume.\n\nReferences:\n[1] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/674075.\n[2] http://marc.info/?l=linux-pm&m=133958534231884&w=2\n\nReported-and-tested-by: Dave Hansen <dave@linux.vnet.ibm.com>\nSigned-off-by: Preeti U Murthy <preeti@linux.vnet.ibm.com>\nReviewed-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>\nSigned-off-by: Rafael J. Wysocki <rjw@sisk.pl>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/48f779ca6b818bdaf9e88f76f8c6889238e88574"},{"sha":"a20f7c0fc38cd069e8e616afcfdf2e4bbcf193a8","author":{"name":"ShuoX Liu","email":"d47ded271f2f508a163b9b021dbd7166ce7ac838@intel.com"},"message":"cpuidle: move field disable from per-driver to per-cpu\n\nAndrew J.Schorr raises a question.  When he changes the disable setting on\na single CPU, it affects all the other CPUs.  Basically, currently, the\ndisable field is per-driver instead of per-cpu.  All the C states of the\nsame driver are shared by all CPU in the same machine.\n\nThe patch changes the `disable' field to per-cpu, so we could set this\nseparately for each cpu.\n\nSigned-off-by: ShuoX Liu <shuox.liu@intel.com>\nReported-by: Andrew J.Schorr <aschorr@telemetry-investments.com>\nReviewed-by: Yanmin Zhang <yanmin_zhang@intel.com>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Rafael J. Wysocki <rjw@sisk.pl>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/a20f7c0fc38cd069e8e616afcfdf2e4bbcf193a8"},{"sha":"404b9c60c7e56014541df365ca90d586ebd81d72","author":{"name":"Rafael J. Wysocki","email":"bf2e446c4dbcf7968f13fa17ff5fc69415459c70@sisk.pl"},"message":"PM / cpuidle: Add driver reference counter\n\nAdd a reference counter for the cpuidle driver, so that it can't\nbe unregistered when it is in use.\n\nSigned-off-by: Rafael J. Wysocki <rjw@sisk.pl>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/404b9c60c7e56014541df365ca90d586ebd81d72"},{"sha":"68a049d3a77d201e7a47f22f080360b6a03f2975","author":{"name":"Rafael J. Wysocki","email":"bf2e446c4dbcf7968f13fa17ff5fc69415459c70@sisk.pl"},"message":"PM / Domains: Add preliminary support for cpuidle, v2\n\nOn some systems there are CPU cores located in the same power\ndomains as I/O devices.  Then, power can only be removed from the\ndomain if all I/O devices in it are not in use and the CPU core\nis idle.  Add preliminary support for that to the generic PM domains\nframework.\n\nFirst, the platform is expected to provide a cpuidle driver with one\nextra state designated for use with the generic PM domains code.\nThis state should be initially disabled and its exit_latency value\nshould be set to whatever time is needed to bring up the CPU core\nitself after restoring power to it, not including the domain's\npower on latency.  Its .enter() callback should point to a procedure\nthat will remove power from the domain containing the CPU core at\nthe end of the CPU power transition.\n\nThe remaining characteristics of the extra cpuidle state, referred to\nas the \"domain\" cpuidle state below, (e.g. power usage, target\nresidency) should be populated in accordance with the properties of\nthe hardware.\n\nNext, the platform should execute genpd_attach_cpuidle() on the PM\ndomain containing the CPU core.  That will cause the generic PM\ndomains framework to treat that domain in a special way such that:\n\n * When all devices in the domain have been suspended and it is about\n   to be turned off, the states of the devices will be saved, but\n   power will not be removed from the domain.  Instead, the \"domain\"\n   cpuidle state will be enabled so that power can be removed from\n   the domain when the CPU core is idle and the state has been chosen\n   as the target by the cpuidle governor.\n\n * When the first I/O device in the domain is resumed and\n   __pm_genpd_poweron(() is called for the first time after\n   power has been removed from the domain, the \"domain\" cpuidle\n   state will be disabled to avoid subsequent surprise power removals\n   via cpuidle.\n\nThe effective exit_latency value of the \"domain\" cpuidle state\ndepends on the time needed to bring up the CPU core itself after\nrestoring power to it as well as on the power on latency of the\ndomain containing the CPU core.  Thus the \"domain\" cpuidle state's\nexit_latency has to be recomputed every time the domain's power on\nlatency is updated, which may happen every time power is restored\nto the domain, if the measured power on latency is greater than\nthe latency stored in the corresponding generic_pm_domain structure.\n\nSigned-off-by: Rafael J. Wysocki <rjw@sisk.pl>\nReviewed-by: Kevin Hilman <khilman@ti.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>\n\nConflicts:\n\tdrivers/base/power/domain.c\n\tinclude/linux/pm_domain.h\n\nConflicts:\n\tdrivers/base/power/domain.c\n\tinclude/linux/pm_domain.h","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/68a049d3a77d201e7a47f22f080360b6a03f2975"},{"sha":"51a74e92d1c82636f964ecdf751db46485c523ab","author":{"name":"Carsten Emde","email":"283ffee49a25de584b382f57e78b9305b376507a@osadl.org"},"message":"Honor state disabling in the cpuidle ladder governor\n\nThere are two cpuidle governors ladder and menu. While the ladder\ngovernor is always available, if CONFIG_CPU_IDLE is selected, the\nmenu governor additionally requires CONFIG_NO_HZ.\n\nA particular C state can be disabled by writing to the sysfs file\n/sys/devices/system/cpu/cpuN/cpuidle/stateN/disable, but this mechanism\nis only implemented in the menu governor. Thus, in a system where\nCONFIG_NO_HZ is not selected, the ladder governor becomes default and\nalways will walk through all sleep states - irrespective of whether the\nC state was disabled via sysfs or not. The only way to select a specific\nC state was to write the related latency to /dev/cpu_dma_latency and\nkeep the file open as long as this setting was required - not very\npractical and not suitable for setting a single core in an SMP system.\n\nWith this patch, the ladder governor only will promote to the next\nC state, if it has not been disabled, and it will demote, if the\ncurrent C state was disabled.\n\nNote that the patch does not make the setting of the sysfs variable\n\"disable\" coherent, i.e. if one is disabling a light state, then all\ndeeper states are disabled as well, but the \"disable\" variable does not\nreflect it. Likewise, if one enables a deep state but a lighter state\nstill is disabled, then this has no effect. A related section has been\nadded to the documentation.\n\nSigned-off-by: Carsten Emde <C.Emde@osadl.org>\nSigned-off-by: Rafael J. Wysocki <rjw@sisk.pl>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/51a74e92d1c82636f964ecdf751db46485c523ab"},{"sha":"f7b00f94031c0278e6031b8ce230cf48bf20a7b0","author":{"name":"Rafael J. Wysocki","email":"bf2e446c4dbcf7968f13fa17ff5fc69415459c70@sisk.pl"},"message":"PM / cpuidle: Make ladder governor use the \"disabled\" state flag\n\nFor the mechanism introduced by commit (PM / Domains: Add\npreliminary support for cpuidle, v2) to work with the ladder\ngovernor, that governor should respect the \"disabled\" state flag\nadded by that commit.  Change the ladder governor accordingly.\n\nSigned-off-by: Rafael J. Wysocki <rjw@sisk.pl>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/f7b00f94031c0278e6031b8ce230cf48bf20a7b0"},{"sha":"f9e62b200734d21e9db97d5bd062f4858e6791d1","author":{"name":"Daniel Lezcano","email":"00b8bdf2a6ae748282f4b9b3b0a604e59d801c6c@linaro.org"},"message":"cpuidle: rename function name \"__cpuidle_register_driver\", v2\n\nThe function __cpuidle_register_driver name is confusing because it\nsuggests, conforming to the coding style of the kernel, it registers\nthe driver without taking a lock. Actually, it just fill the different\npower field states with a decresing value if the power has not been\nspecified.\n\nClarify the purpose of the function by changing its name and\nmove the condition out of this function.\n\nThis patch fix nothing and does not change the behavior of the\nfunction. It is just for the sake of clarity.\n\nIHMO, reading in the code:\n\n+       if (!drv->power_specified)\n+               set_power_states(drv);\n\nis much more explicit than:\n\n-       __cpuidle_register_driver(drv);\n\nSigned-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>\nSigned-off-by: Rafael J. Wysocki <rjw@sisk.pl>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/f9e62b200734d21e9db97d5bd062f4858e6791d1"},{"sha":"670feb25391f7949c43c7dd0d0535c2c8d6093a8","author":{"name":"Srivatsa S. Bhat","email":"86fcb99d833c6028b7c159db19d83d69bb396a1e@linux.vnet.ibm.com"},"message":"ACPI idle, CPU hotplug: Fix NULL pointer dereference during hotplug\n\nOn a KVM guest, when a CPU is taken offline and brought back online, we hit\nthe following NULL pointer dereference:\n\n[   45.400843] Unregister pv shared memory for cpu 1\n[   45.412331] smpboot: CPU 1 is now offline\n[   45.529894] SMP alternatives: lockdep: fixing up alternatives\n[   45.533472] smpboot: Booting Node 0 Processor 1 APIC 0x1\n[   45.411526] kvm-clock: cpu 1, msr 0:7d14601, secondary cpu clock\n[   45.571370] KVM setup async PF for cpu 1\n[   45.572331] kvm-stealtime: cpu 1, msr 7d0e040\n[   45.575031] BUG: unable to handle kernel NULL pointer dereference at           (null)\n[   45.576017] IP: [<ffffffff81519f98>] cpuidle_disable_device+0x18/0x80\n[   45.576017] PGD 5dfb067 PUD 5da8067 PMD 0\n[   45.576017] Oops: 0000 [#1] SMP\n[   45.576017] Modules linked in:\n[   45.576017] CPU 0\n[   45.576017] Pid: 607, comm: stress_cpu_hotp Not tainted 3.6.0-padata-tp-debug #3 Bochs Bochs\n[   45.576017] RIP: 0010:[<ffffffff81519f98>]  [<ffffffff81519f98>] cpuidle_disable_device+0x18/0x80\n[   45.576017] RSP: 0018:ffff880005d93ce8  EFLAGS: 00010286\n[   45.576017] RAX: ffff880005d93fd8 RBX: 0000000000000000 RCX: 0000000000000006\n[   45.576017] RDX: 0000000000000006 RSI: 2222222222222222 RDI: 0000000000000000\n[   45.576017] RBP: ffff880005d93cf8 R08: 2222222222222222 R09: 2222222222222222\n[   45.576017] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000\n[   45.576017] R13: 0000000000000000 R14: ffffffff81c8cca0 R15: 0000000000000001\n[   45.576017] FS:  00007f91936ae700(0000) GS:ffff880007c00000(0000) knlGS:0000000000000000\n[   45.576017] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\n[   45.576017] CR2: 0000000000000000 CR3: 0000000005db3000 CR4: 00000000000006f0\n[   45.576017] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n[   45.576017] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n[   45.576017] Process stress_cpu_hotp (pid: 607, threadinfo ffff880005d92000, task ffff8800066bbf40)\n[   45.576017] Stack:\n[   45.576017]  ffff880007a96400 0000000000000000 ffff880005d93d28 ffffffff813ac689\n[   45.576017]  ffff880007a96400 ffff880007a96400 0000000000000002 ffffffff81cd8d01\n[   45.576017]  ffff880005d93d58 ffffffff813aa498 0000000000000001 00000000ffffffdd\n[   45.576017] Call Trace:\n[   45.576017]  [<ffffffff813ac689>] acpi_processor_hotplug+0x55/0x97\n[   45.576017]  [<ffffffff813aa498>] acpi_cpu_soft_notify+0x93/0xce\n[   45.576017]  [<ffffffff816ae47d>] notifier_call_chain+0x5d/0x110\n[   45.576017]  [<ffffffff8109730e>] __raw_notifier_call_chain+0xe/0x10\n[   45.576017]  [<ffffffff81069050>] __cpu_notify+0x20/0x40\n[   45.576017]  [<ffffffff81069085>] cpu_notify+0x15/0x20\n[   45.576017]  [<ffffffff816978f1>] _cpu_up+0xee/0x137\n[   45.576017]  [<ffffffff81697983>] cpu_up+0x49/0x59\n[   45.576017]  [<ffffffff8168758d>] store_online+0x9d/0xe0\n[   45.576017]  [<ffffffff8140a9f8>] dev_attr_store+0x18/0x30\n[   45.576017]  [<ffffffff812322c0>] sysfs_write_file+0xe0/0x150\n[   45.576017]  [<ffffffff811b389c>] vfs_write+0xac/0x180\n[   45.576017]  [<ffffffff811b3be2>] sys_write+0x52/0xa0\n[   45.576017]  [<ffffffff816b31e9>] system_call_fastpath+0x16/0x1b\n[   45.576017] Code: 48 c7 c7 40 e5 ca 81 e8 07 d0 18 00 5d c3 0f 1f 44 00 00 0f 1f 44 00 00 55 48 89 e5 48 83 ec 10 48 89 5d f0 4c 89 65 f8 48 89 fb <f6> 07 02 75 13 48 8b 5d f0 4c 8b 65 f8 c9 c3 66 0f 1f 84 00 00\n[   45.576017] RIP  [<ffffffff81519f98>] cpuidle_disable_device+0x18/0x80\n[   45.576017]  RSP <ffff880005d93ce8>\n[   45.576017] CR2: 0000000000000000\n[   45.656079] ---[ end trace 433d6c9ac0b02cef ]---\n\nAnalysis:\nCommit 3d339dc (cpuidle / ACPI : move cpuidle_device field out of the\nacpi_processor_power structure()) made the allocation of the dev structure\n(struct cpuidle) of a CPU dynamic, whereas previously it was statically\nallocated. And this dynamic allocation occurs in acpi_processor_power_init()\nif pr->flags.power evaluates to non-zero.\n\nOn KVM guests, pr->flags.power evaluates to zero, hence dev is never\nallocated. This causes the NULL pointer (dev) dereference in\ncpuidle_disable_device() during a subsequent CPU online operation. Fix this\nby ensuring that dev is non-NULL before dereferencing.\n\nSigned-off-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>\nSigned-off-by: Len Brown <len.brown@intel.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/670feb25391f7949c43c7dd0d0535c2c8d6093a8"},{"sha":"b07f50ba7fd59336a80239d4e5e47c9dcf9e0f41","author":{"name":"Rob Herring","email":"0c379c40aecee844cc6c6cc53e7d19a27acd5256@calxeda.com"},"message":"cpuidle: add Calxeda SOC idle support\n\nAdd support for core powergating on Calxeda platforms. Initially, this\nsupports ECX-1000 (highbank), but support will be added for ECX-2000\nlater.\n\nSigned-off-by: Rob Herring <rob.herring@calxeda.com>\nCc: Len Brown <len.brown@intel.com>\nCc: \"Rafael J. Wysocki\" <rjw@sisk.pl>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/b07f50ba7fd59336a80239d4e5e47c9dcf9e0f41"},{"sha":"607ca27c521b2a71d17d157965bd7e98b81a323d","author":{"name":"Daniel Lezcano","email":"00b8bdf2a6ae748282f4b9b3b0a604e59d801c6c@linaro.org"},"message":"cpuidle / sysfs: change function parameter\n\nThe function needs the cpuidle_device which is initially passed to the\ncaller.\n\nThe current code gets the struct device from the struct cpuidle_device,\npass it the cpuidle_add_sysfs function. This function calls\nper_cpu(cpuidle_devices, cpu) to get the cpuidle_device.\n\nThis patch pass the cpuidle_device instead and simplify the code.\n\nSigned-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>\nSigned-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/607ca27c521b2a71d17d157965bd7e98b81a323d"},{"sha":"04eb6d7ae61c8d1843c4e529a41e0e5a3e23f53d","author":{"name":"Daniel Lezcano","email":"00b8bdf2a6ae748282f4b9b3b0a604e59d801c6c@linaro.org"},"message":"cpuidle / sysfs: move kobj initialization in the syfs file\n\nMove the kobj initialization and completion in the sysfs.c\nand encapsulate the code more.\n\nSigned-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>\nSigned-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/04eb6d7ae61c8d1843c4e529a41e0e5a3e23f53d"},{"sha":"1e8eb93ec2730a07353676693f64d237edde0509","author":{"name":"Youquan Song","email":"df5869ac83a2df41a6506df29c959bf1672f6e9d@intel.com"},"message":"cpuidle: Set residency to 0 if target Cstate not enter\n\nWhen cpuidle governor choose a C-state to enter for idle CPU, but it notice that\nthere is tasks request to be executed. So the idle CPU will not really enter\nthe target C-state and go to run task.\n\nIn this situation, it will use the residency of previous really entered target\nC-states. Obviously, it is not reasonable.\n\nSo, this patch fix it by set the target C-state residency to 0.\n\nSigned-off-by: Rik van Riel <riel@redhat.com>\nSigned-off-by: Youquan Song <youquan.song@intel.com>\nSigned-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/1e8eb93ec2730a07353676693f64d237edde0509"},{"sha":"7aa69928298424cd054b67daeb32f8f9452de921","author":{"name":"Daniel Lezcano","email":"00b8bdf2a6ae748282f4b9b3b0a604e59d801c6c@linaro.org"},"message":"cpuidle / sysfs: move structure declaration into the sysfs.c file\n\nThe structure cpuidle_state_kobj is not used anywhere except\nin the sysfs.c file. The definition of this structure is not\nneeded in the cpuidle header file. This patch moves it to the\nsysfs.c file in order to encapsulate the code a bit more.\n\nSigned-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>\nSigned-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/7aa69928298424cd054b67daeb32f8f9452de921"},{"sha":"369b2d9b34b526ea884a2ae90d5b8ae18975b54c","author":{"name":"Daniel Lezcano","email":"00b8bdf2a6ae748282f4b9b3b0a604e59d801c6c@linaro.org"},"message":"cpuidle: fixup device.h header in cpuidle.h\n\nThe \"struct device\" is only used in sysfs.c.\n\nThe other .c files including the private header \"cpuidle.h\"\ndo not need to pull the entire headers tree from there as they\ndon't manipulate the \"struct device\".\n\nThis patch fixes this by moving the header inclusion to sysfs.c\nand adding a forward declaration for the struct device.\n\nThe number of lines generated by the preprocesor:\nWithout this patch : 17269 loc\nWith this patch : 16446 loc\n\nSigned-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>\nSigned-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/369b2d9b34b526ea884a2ae90d5b8ae18975b54c"},{"sha":"c9c2ca7826b2635042321d06eca2ef01385c3aef","author":{"name":"Daniel Lezcano","email":"00b8bdf2a6ae748282f4b9b3b0a604e59d801c6c@linaro.org"},"message":"cpuidle: move driver's refcount to cpuidle\n\nWe want to support different cpuidle drivers co-existing together.\nIn this case we should move the refcount to the cpuidle_driver\nstructure to handle several drivers at a time.\n\nSigned-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>\nAcked-by: Peter De Schrijver <pdeschrijver@nvidia.com>\nSigned-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/c9c2ca7826b2635042321d06eca2ef01385c3aef"},{"sha":"c70911463a51bf421bb4c5cc07ed2c19a4d4ffb0","author":{"name":"Daniel Lezcano","email":"00b8bdf2a6ae748282f4b9b3b0a604e59d801c6c@linaro.org"},"message":"cpuidle: move driver checking within the lock section\n\nThe code is racy and the check with cpuidle_curr_driver should be\ndone under the lock.\n\nI don't find a path in the different drivers where that could happen\nbecause the arch specific drivers are written in such way it is not\npossible to register a driver while it is unregistered, except maybe\nin a very improbable case when \"intel_idle\" and \"processor_idle\" are\ncompeting. One could unregister a driver, while the other one is\nregistering.\n\nSigned-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>\nAcked-by: Peter De Schrijver <pdeschrijver@nvidia.com>\nSigned-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/c70911463a51bf421bb4c5cc07ed2c19a4d4ffb0"},{"sha":"72249a3c57f5706c58a585b58688b18697b3ab03","author":{"name":"Daniel Lezcano","email":"00b8bdf2a6ae748282f4b9b3b0a604e59d801c6c@linaro.org"},"message":"cpuidle: prepare the cpuidle core to handle multiple drivers\n\nThis patch is a preparation for the multiple cpuidle drivers support.\n\nAs the next patch will introduce the multiple drivers with the Kconfig\noption and we want to keep the code clean and understandable, this patch\ndefines a set of functions for encapsulating some common parts and splits\nwhat should be done under a lock from the rest.\n\n[rjw: Modified the subject and changelog slightly.]\nSigned-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>\nAcked-by: Peter De Schrijver <pdeschrijver@nvidia.com>\nSigned-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/72249a3c57f5706c58a585b58688b18697b3ab03"},{"sha":"8c179fb4f9065311732eb521ba423c776de06e44","author":{"name":"Daniel Lezcano","email":"00b8bdf2a6ae748282f4b9b3b0a604e59d801c6c@linaro.org"},"message":"cpuidle: support multiple drivers\n\nWith the tegra3 and the big.LITTLE [1] new architectures, several cpus\nwith different characteristics (latencies and states) can co-exists on the\nsystem.\n\nThe cpuidle framework has the limitation of handling only identical cpus.\n\nThis patch removes this limitation by introducing the multiple driver support\nfor cpuidle.\n\nThis option is configurable at compile time and should be enabled for the\narchitectures mentioned above. So there is no impact for the other platforms\nif the option is disabled. The option defaults to 'n'. Note the multiple drivers\nsupport is also compatible with the existing drivers, even if just one driver is\nneeded, all the cpu will be tied to this driver using an extra small chunk of\nprocessor memory.\n\nThe multiple driver support use a per-cpu driver pointer instead of a global\nvariable and the accessor to this variable are done from a cpu context.\n\nIn order to keep the compatibility with the existing drivers, the function\n'cpuidle_register_driver' and 'cpuidle_unregister_driver' will register\nthe specified driver for all the cpus.\n\nThe semantic for the output of /sys/devices/system/cpu/cpuidle/current_driver\nremains the same except the driver name will be related to the current cpu.\n\nThe /sys/devices/system/cpu/cpu[0-9]/cpuidle/driver/name files are added\nallowing to read the per cpu driver name.\n\n[1] http://lwn.net/Articles/481055/\n\nSigned-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>\nAcked-by: Peter De Schrijver <pdeschrijver@nvidia.com>\nSigned-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/CertifiedBlyndGuy/android_kernel_oneplus_onyx/commits/8c179fb4f9065311732eb521ba423c776de06e44"}]}
{"actor":{"display_login":"CertifiedBlyndGuy"}}