{"push_id":2035221034,"size":3,"distinct_size":3,"ref":"refs/heads/Minimal","head":"2de7add991cf155f02f4e722a138e7f0f411d2b8","before":"a813a0ba3c0bc1411f1c06d6daff1e6373aac847","commits":[{"sha":"b617d6026c0ead2dd81ffcff2401cd7e3e59f6c6","author":{"name":"Lina Iyer","email":"66381794b511865811c22e99234433cf7e2bd98f@linaro.org"},"message":"irq: Allow multiple clients to register for irq affinity notification\n\nPM QoS and other idle frameworks can do a better job of addressing power\nand performance requirements for a cpu, knowing the IRQs that are\naffine to that cpu. If a performance request is placed against serving\nthe IRQ faster and if the IRQ is affine to a set of cpus, then setting\nthe performance requirements only on those cpus help save power on the\nrest of the cpus. PM QoS framework is one such framework interested in\nknowing the smp_affinity of an IRQ and the change notificiation in this\nregard. QoS requests for the CPU_DMA_LATENCY constraint currently apply\nto all cpus, but when attached to an IRQ, can be applied only to the set\nof cpus that IRQ's smp_affinity is set to. This allows other cpus to\nenter deeper sleep states to save power. More than one framework/driver\ncan be interested in such information.\n\nThe current implementation allows only a single notification callback\nwhenever the IRQ's SMP affinity is changed. Adding a second notification\npunts the existing notifier function out of registration.  Add a list of\nnotifiers, allowing multiple clients to register for irq affinity\nnotifications.\n\nThe kref object associated with the struct irq_affinity_notify was used\nto prevent the notifier object from being released if there is a pending\nnotification. It was incremented before the work item was scheduled and\nwas decremented when the notification was completed. If the kref count\nwas zero at the end of it, the release function gets a callback allowing\nthe module to release the irq_affinity_notify memory. This works well\nfor a single notification. When multiple clients are registered, no\nsingle kref object can be used. Hence, the work function when scheduled,\nwill increase the kref count using the kref_get_unless_zero(), so if the\nmodule had already unregistered the irq_affinity_notify object while the\nwork function was scheduled, it will not be notified.\n\nChange-Id: If2e38ce8d7c43459ba1604d5b4798d1bad966997\nSigned-off-by: Lina Iyer <lina.iyer@linaro.org>\nPatch-mainline: linux-pm @ Wed, 27 Aug 2014 13:18:28\nhttps://lkml.org/lkml/2014/8/27/609\n[mnalajal@codeaurora.org: resolve NON SMP target compilation issues]\nSigned-off-by: Murali Nalajala <mnalajal@codeaurora.org>\n\nSigned-off-by: SoUnd001 <sound0\n020@gmail.com>","distinct":true,"url":"https://api.github.com/repos/rb-rasekar/Atom7/commits/b617d6026c0ead2dd81ffcff2401cd7e3e59f6c6"},{"sha":"ea44f251d1e78814a8ac812ec4700013d35ce2c9","author":{"name":"Sai Gurrappadi","email":"f96d87fe337c3b5a8b57e648cac3b948746d955b@nvidia.com"},"message":"sched: Force sleep on consecutive sched_yields\n\nIf a task sched_yields to itself continuously, force the task to\nsleep in sched_yield. This will lower the CPU load of this task\nthereby lowering the cpu frequency and improving power.\n\nAdded a stat variable to track how many times we sleep due these\nconsecutive sched_yields. Also added sysctl knobs to control the number\nof consecutive sched_yields before which the sleep kicks in and the\nduration fo the sleep in us.\n\nBug 1424617\n\nChange-Id: Ie92412b8b900365816e17237fcbd0aac6e9c94ce\nSigned-off-by: Sai Gurrappadi <sgurrappadi@nvidia.com>\nReviewed-on: http://git-master/r/358455\nReviewed-by: Wen Yi <wyi@nvidia.com>\nReviewed-by: Peter Zu <pzu@nvidia.com>\nGVS: Gerrit_Virtual_Submit\nReviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>\n\nConflicts:\n\n\tkernel/sched/core.c\n\nSigned-off-by: franciscofranco <franciscofranco.1990@gmail.com>","distinct":true,"url":"https://api.github.com/repos/rb-rasekar/Atom7/commits/ea44f251d1e78814a8ac812ec4700013d35ce2c9"},{"sha":"2de7add991cf155f02f4e722a138e7f0f411d2b8","author":{"name":"RyTek","email":"42991bb8fb19d0c99aac44966730928c391ac567@outlook.com"},"message":"Introduce series of power efficiency patches from NVIDIA\n\nSigned-off-by: RyTek <rytek1128@outlook.com>\n[@rb-rasekar: Port to x86]\nSigned-off-by: Ram Rasekar <ram.rasekar946@gmail.com>","distinct":true,"url":"https://api.github.com/repos/rb-rasekar/Atom7/commits/2de7add991cf155f02f4e722a138e7f0f411d2b8"}]}
{"actor":{"display_login":"rb-rasekar"}}