{"push_id":1195332002,"size":14,"distinct_size":14,"ref":"refs/heads/cm-13.0","head":"978eff7b9bf3da398f1dd87d45d95f6259f9be90","before":"2bce76a92568f870baf39c2054418f13d999459b","commits":[{"sha":"0e7fa1461540bd5f53333c3fc74cabb28fa9ab52","author":{"name":"Jubeom Kim","email":"dcf3490b67fefdeffec976280027f6f515b52a4d@nvidia.com"},"message":"cpuquiet: move back cpuquiet_lock\n\nMoved cpuquiet_lock to the back of cpuquiet_switch_governor().\ncpuquiet_switch_governor() has to be protected by cpuquiet_lock.\nIn the runnable cpuquiet_governor case, it can occur a kernel panic or BUG_ON\nbecause schedule_work() and INIT_WORK() can be performed at the same time.\n\nBug 1410816\n\nChange-Id: I6d3d69bd8896e5425a762cbc4a58343a319edf29\nSigned-off-by: Jubeom Kim <jubeomk@nvidia.com>\nReviewed-on: http://git-master/r/336858\nReviewed-on: http://git-master/r/802057\nGVS: Gerrit_Virtual_Submit\nReviewed-by: Ximing Chen <ximingc@nvidia.com>\nTested-by: Ximing Chen <ximingc@nvidia.com>","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/0e7fa1461540bd5f53333c3fc74cabb28fa9ab52"},{"sha":"745ef8bb1e7aa6312af354a1da85ed6bcebb312a","author":{"name":"Martin Chi","email":"321bad1d376a347e91f0df6c7c6329408a4ea88f@nvidia.com"},"message":"printk: change the timestamp behind kerne log to rtc time\n\nthe original timestamp is CPU time, which causes\nthe time is missing in kernel log after LPx.\nChange to rtc time to fix this and also good\nfor cross-checking with logcat\n\nChange-Id: I87df3df6c699dacea40d550043afda0dc00d5c82\nSigned-off-by: Martin Chi <mchi@nvidia.com>\nReviewed-on: http://git-master/r/356301\nReviewed-on: http://git-master/r/732494\nReviewed-by: Ximing Chen <ximingc@nvidia.com>\nTested-by: Ximing Chen <ximingc@nvidia.com>\nGVS: Gerrit_Virtual_Submit","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/745ef8bb1e7aa6312af354a1da85ed6bcebb312a"},{"sha":"272c371f21c5761da49533c5b190e07594bc7f4c","author":{"name":"David Yu","email":"50b15fcf0eb0029c9cf08bf787b56b6518b8cac4@nvidia.com"},"message":"printk: apply timezone in the kernel log time\n\n- fix  recursion bug\n- show timezone applied log since logcat shows it\n\nChange-Id: If25195ddd729d9897494aaa846525f25df1c872d\nSigned-off-by: David Yu <davyu@nvidia.com>\nReviewed-on: http://git-master/r/357582\nReviewed-on: http://git-master/r/732495\nReviewed-by: Ximing Chen <ximingc@nvidia.com>\nTested-by: Ximing Chen <ximingc@nvidia.com>","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/272c371f21c5761da49533c5b190e07594bc7f4c"},{"sha":"d420045fc762a378787f8fb20305b14b634e9973","author":{"name":"Eric Zhang","email":"2fe8798b3f47e0475f2ec8bfb254fa0440c5585b@nvidia.com"},"message":"thor:audio Enhance default sound value\n\nRedesign the codec driver to make sure volume is loud enough\n\nBug 200127797\n\nChange-Id: Ie88c1814e4aa0c9c17ea8a407b3941a5b0c4969d\nSigned-off-by: Eric Zhang <ericz@nvidia.com>\nReviewed-on: http://git-master/r/802870\nReviewed-by: Automatic_Commit_Validation_User\nGVS: Gerrit_Virtual_Submit\nReviewed-by: Ximing Chen <ximingc@nvidia.com>\nTested-by: Ximing Chen <ximingc@nvidia.com>","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/d420045fc762a378787f8fb20305b14b634e9973"},{"sha":"fd193cd44cbfa34a81e2a3bf80d460a62662f6c3","author":{"name":"ximing","email":"04a45080d57283d47192e3987f3f9b3779e7e3e7@nvidia.com"},"message":"Revert \"workqueue: CPU hotplug keep idle workers\"\n\nThis reverts commit 468011c1e1d998ad87ed82acad0b7538aee296a7.\n\nChange-Id: I278c5dc66a0790f1ba5e4d90326f73a0a650428f\nSigned-off-by: Ximing Chen <ximingc@nvidia.com>\nReviewed-on: http://git-master/r/821803\nGVS: Gerrit_Virtual_Submit","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/fd193cd44cbfa34a81e2a3bf80d460a62662f6c3"},{"sha":"da42e046101cb9b4393e9bb917a9140aeea38ef0","author":{"name":"Tejun Heo","email":"e1d87360d7f4d7b7ebaddc11b54e50a559aaba57@kernel.org"},"message":"workqueue: reimplement work_on_cpu() using system_wq\n\ncommit ed48ece27cd3d5ee0354c32bbaec0f3e1d4715c3 upstream.\n\nThe existing work_on_cpu() implementation is hugely inefficient.  It\ncreates a new kthread, execute that single function and then let the\nkthread die on each invocation.\n\nNow that system_wq can handle concurrent executions, there's no\nadvantage of doing this.  Reimplement work_on_cpu() using system_wq\nwhich makes it simpler and way more efficient.\n\nstable: While this isn't a fix in itself, it's needed to fix a\n        workqueue related bug in cpufreq/powernow-k8.  AFAICS, this\n        shouldn't break other existing users.\n\nSigned-off-by: Tejun Heo <tj@kernel.org>\nAcked-by: Jiri Kosina <jkosina@suse.cz>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Bjorn Helgaas <bhelgaas@google.com>\nCc: Len Brown <lenb@kernel.org>\nCc: Rafael J. Wysocki <rjw@sisk.pl>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nChange-Id: I0cd629fefbc21b35be0c84d9c64abd072073b1d0\nReviewed-on: http://git-master/r/821804\nReviewed-by: Ximing Chen <ximingc@nvidia.com>\nTested-by: Ximing Chen <ximingc@nvidia.com>","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/da42e046101cb9b4393e9bb917a9140aeea38ef0"},{"sha":"b507787789f6c8ab4708604bf9367786c6b21b3e","author":{"name":"Lai Jiangshan","email":"cf0e2d50a324441096e6c5342ad65c64cc64efaa@cn.fujitsu.com"},"message":"workqueue: UNBOUND -> REBIND morphing in rebind_workers() should be atomic\n\ncommit 96e65306b81351b656835c15931d1d237b252f27 upstream.\n\nThe compiler may compile the following code into TWO write/modify\ninstructions.\n\n\tworker->flags &= ~WORKER_UNBOUND;\n\tworker->flags |= WORKER_REBIND;\n\nso the other CPU may temporarily see worker->flags which doesn't have\neither WORKER_UNBOUND or WORKER_REBIND set and perform local wakeup\nprematurely.\n\nFix it by using single explicit assignment via ACCESS_ONCE().\n\nBecause idle workers have another WORKER_NOT_RUNNING flag, this bug\ndoesn't exist for them; however, update it to use the same pattern for\nconsistency.\n\ntj: Applied the change to idle workers too and updated comments and\n    patch description a bit.\n\nSigned-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nChange-Id: Id93c81455f3cba15d18850d42190ab7e9c353819\nReviewed-on: http://git-master/r/821805\nReviewed-by: Ximing Chen <ximingc@nvidia.com>\nTested-by: Ximing Chen <ximingc@nvidia.com>","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/b507787789f6c8ab4708604bf9367786c6b21b3e"},{"sha":"a73a085b1c5ede829cedd46e7294d11f3831e77e","author":{"name":"Tejun Heo","email":"e1d87360d7f4d7b7ebaddc11b54e50a559aaba57@kernel.org"},"message":"workqueue: add missing smp_wmb() in process_one_work()\n\ncommit 959d1af8cffc8fd38ed53e8be1cf4ab8782f9c00 upstream.\n\nWORK_STRUCT_PENDING is used to claim ownership of a work item and\nprocess_one_work() releases it before starting execution.  When\nsomeone else grabs PENDING, all pre-release updates to the work item\nshould be visible and all updates made by the new owner should happen\nafterwards.\n\nGrabbing PENDING uses test_and_set_bit() and thus has a full barrier;\nhowever, clearing doesn't have a matching wmb.  Given the preceding\nspin_unlock and use of clear_bit, I don't believe this can be a\nproblem on an actual machine and there hasn't been any related report\nbut it still is theretically possible for clear_pending to permeate\nupwards and happen before work->entry update.\n\nAdd an explicit smp_wmb() before work_clear_pending().\n\nSigned-off-by: Tejun Heo <tj@kernel.org>\nCc: Oleg Nesterov <oleg@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nChange-Id: Iaf310a06fe1b6ae69203c4d9ebf052b14ee957f9\nReviewed-on: http://git-master/r/821806\nReviewed-by: Ximing Chen <ximingc@nvidia.com>\nTested-by: Ximing Chen <ximingc@nvidia.com>","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/a73a085b1c5ede829cedd46e7294d11f3831e77e"},{"sha":"66749094592dcfdd224baccd5d163c4b2c52b74d","author":{"name":"Mike Galbraith","email":"649d8eb6bd2e8762b62221d348f9c63d9e0f0f9a@suse.de"},"message":"workqueue: exit rescuer_thread() as TASK_RUNNING\n\ncommit 412d32e6c98527078779e5b515823b2810e40324 upstream.\n\nA rescue thread exiting TASK_INTERRUPTIBLE can lead to a task scheduling\noff, never to be seen again.  In the case where this occurred, an exiting\nthread hit reiserfs homebrew conditional resched while holding a mutex,\nbringing the box to its knees.\n\nPID: 18105  TASK: ffff8807fd412180  CPU: 5   COMMAND: \"kdmflush\"\n #0 [ffff8808157e7670] schedule at ffffffff8143f489\n #1 [ffff8808157e77b8] reiserfs_get_block at ffffffffa038ab2d [reiserfs]\n #2 [ffff8808157e79a8] __block_write_begin at ffffffff8117fb14\n #3 [ffff8808157e7a98] reiserfs_write_begin at ffffffffa0388695 [reiserfs]\n #4 [ffff8808157e7ad8] generic_perform_write at ffffffff810ee9e2\n #5 [ffff8808157e7b58] generic_file_buffered_write at ffffffff810eeb41\n #6 [ffff8808157e7ba8] __generic_file_aio_write at ffffffff810f1a3a\n #7 [ffff8808157e7c58] generic_file_aio_write at ffffffff810f1c88\n #8 [ffff8808157e7cc8] do_sync_write at ffffffff8114f850\n #9 [ffff8808157e7dd8] do_acct_process at ffffffff810a268f\n    [exception RIP: kernel_thread_helper]\n    RIP: ffffffff8144a5c0  RSP: ffff8808157e7f58  RFLAGS: 00000202\n    RAX: 0000000000000000  RBX: 0000000000000000  RCX: 0000000000000000\n    RDX: 0000000000000000  RSI: ffffffff8107af60  RDI: ffff8803ee491d18\n    RBP: 0000000000000000   R8: 0000000000000000   R9: 0000000000000000\n    R10: 0000000000000000  R11: 0000000000000000  R12: 0000000000000000\n    R13: 0000000000000000  R14: 0000000000000000  R15: 0000000000000000\n    ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0018\n\nSigned-off-by: Mike Galbraith <mgalbraith@suse.de>\nSigned-off-by: Tejun Heo <tj@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nChange-Id: I23ff2a787f5624bdb4e71f3bb86e4ed6c9fe9182\nReviewed-on: http://git-master/r/821807\nReviewed-by: Ximing Chen <ximingc@nvidia.com>\nTested-by: Ximing Chen <ximingc@nvidia.com>","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/66749094592dcfdd224baccd5d163c4b2c52b74d"},{"sha":"fd5b5e9053d5f5a96257dc2ba324f5f1a406ae20","author":{"name":"Tejun Heo","email":"e1d87360d7f4d7b7ebaddc11b54e50a559aaba57@kernel.org"},"message":"workqueue: convert BUG_ON()s in __queue_delayed_work() to WARN_ON_ONCE()s\n\ncommit fc4b514f2727f74a4587c31db87e0e93465518c3 upstream.\n\n8852aac25e (\"workqueue: mod_delayed_work_on() shouldn't queue timer on\n0 delay\") unexpectedly uncovered a very nasty abuse of delayed_work in\nmegaraid - it allocated work_struct, casted it to delayed_work and\nthen pass that into queue_delayed_work().\n\nPreviously, this was okay because 0 @delay short-circuited to\nqueue_work() before doing anything with delayed_work.  8852aac25e\nmoved 0 @delay test into __queue_delayed_work() after sanity check on\ndelayed_work making megaraid trigger BUG_ON().\n\nAlthough megaraid is already fixed by c1d390d8e6 (\"megaraid: fix\nBUG_ON() from incorrect use of delayed work\"), this patch converts\nBUG_ON()s in __queue_delayed_work() to WARN_ON_ONCE()s so that such\nabusers, if there are more, trigger warning but don't crash the\nmachine.\n\nSigned-off-by: Tejun Heo <tj@kernel.org>\nCc: Xiaotian Feng <xtfeng@gmail.com>\nSigned-off-by: Shuah Khan <shuah.khan@hp.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nChange-Id: I54960d54922e433bed26b9716661b1641fd58955\nReviewed-on: http://git-master/r/821808\nReviewed-by: Ximing Chen <ximingc@nvidia.com>\nTested-by: Ximing Chen <ximingc@nvidia.com>","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/fd5b5e9053d5f5a96257dc2ba324f5f1a406ae20"},{"sha":"2922eef990f95d8287cdd3c2f938dfd7e63e89d5","author":{"name":"Lai Jiangshan","email":"cf0e2d50a324441096e6c5342ad65c64cc64efaa@cn.fujitsu.com"},"message":"workqueue: fix possible stall on try_to_grab_pending() of a delayed work item\n\ncommit 3aa62497594430ea522050b75c033f71f2c60ee6 upstream.\n\nCurrently, when try_to_grab_pending() grabs a delayed work item, it\nleaves its linked work items alone on the delayed_works.  The linked\nwork items are always NO_COLOR and will cause future\ncwq_activate_first_delayed() increase cwq->nr_active incorrectly, and\nmay cause the whole cwq to stall.  For example,\n\nstate: cwq->max_active = 1, cwq->nr_active = 1\n       one work in cwq->pool, many in cwq->delayed_works.\n\nstep1: try_to_grab_pending() removes a work item from delayed_works\n       but leaves its NO_COLOR linked work items on it.\n\nstep2: Later on, cwq_activate_first_delayed() activates the linked\n       work item increasing ->nr_active.\n\nstep3: cwq->nr_active = 1, but all activated work items of the cwq are\n       NO_COLOR.  When they finish, cwq->nr_active will not be\n       decreased due to NO_COLOR, and no further work items will be\n       activated from cwq->delayed_works. the cwq stalls.\n\nFix it by ensuring the target work item is activated before stealing\nPENDING in try_to_grab_pending().  This ensures that all the linked\nwork items are activated without incorrectly bumping cwq->nr_active.\n\ntj: Updated comment and description.\n\nSigned-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>\n[lizf: backported to 3.4: adjust context]\nSigned-off-by: Li Zefan <lizefan@huawei.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nChange-Id: I49121d52f507e9e2f24872acd1219b10c4c51c04\nReviewed-on: http://git-master/r/821809\nReviewed-by: Ximing Chen <ximingc@nvidia.com>\nTested-by: Ximing Chen <ximingc@nvidia.com>","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/2922eef990f95d8287cdd3c2f938dfd7e63e89d5"},{"sha":"f6c5d7b52f7d46529aedb8bb7c8c9243e08e032a","author":{"name":"Tejun Heo","email":"e1d87360d7f4d7b7ebaddc11b54e50a559aaba57@kernel.org"},"message":"workqueue: consider work function when searching for busy work items\n\ncommit a2c1c57be8d9fd5b716113c8991d3d702eeacf77 upstream.\n\nTo avoid executing the same work item concurrenlty, workqueue hashes\ncurrently busy workers according to their current work items and looks\nup the the table when it wants to execute a new work item.  If there\nalready is a worker which is executing the new work item, the new item\nis queued to the found worker so that it gets executed only after the\ncurrent execution finishes.\n\nUnfortunately, a work item may be freed while being executed and thus\nrecycled for different purposes.  If it gets recycled for a different\nwork item and queued while the previous execution is still in\nprogress, workqueue may make the new work item wait for the old one\nalthough the two aren't really related in any way.\n\nIn extreme cases, this false dependency may lead to deadlock although\nit's extremely unlikely given that there aren't too many self-freeing\nwork item users and they usually don't wait for other work items.\n\nTo alleviate the problem, record the current work function in each\nbusy worker and match it together with the work item address in\nfind_worker_executing_work().  While this isn't complete, it ensures\nthat unrelated work items don't interact with each other and in the\nvery unlikely case where a twisted wq user triggers it, it's always\nonto itself making the culprit easy to spot.\n\nSigned-off-by: Tejun Heo <tj@kernel.org>\nReported-by: Andrey Isakov <andy51@gmx.ru>\nBugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=51701\n[lizf: Backported to 3.4:\n - Adjust context\n - Incorporate earlier logging cleanup in process_one_work() from\n   044c782ce3a9 ('workqueue: fix checkpatch issues')]\nSigned-off-by: Li Zefan <lizefan@huawei.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nChange-Id: Icf4808d3053fc982e2c13a27df470b4cd0c298ce\nReviewed-on: http://git-master/r/821810\nReviewed-by: Ximing Chen <ximingc@nvidia.com>\nTested-by: Ximing Chen <ximingc@nvidia.com>","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/f6c5d7b52f7d46529aedb8bb7c8c9243e08e032a"},{"sha":"6414162afdc61cc8b2db4e89bdf348b61af614a2","author":{"name":"Aaron Kling","email":"90e5c55d8155b22ff754aec7596a752291d6bd86@gmail.com"},"message":"Revert \"Revert \"asoc: tegra: forbid kernel to operate TFA9887\"\"\n\nThis reverts commit 54d5aceda1c67f8ae103f2de199094c86306394f.","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/6414162afdc61cc8b2db4e89bdf348b61af614a2"},{"sha":"978eff7b9bf3da398f1dd87d45d95f6259f9be90","author":{"name":"Aaron Kling","email":"90e5c55d8155b22ff754aec7596a752291d6bd86@gmail.com"},"message":"Merge remote-tracking branch 'nvidia/rel-roth' into cm-13.0","distinct":true,"url":"https://api.github.com/repos/CyanogenMod/android_kernel_nvidia_roth/commits/978eff7b9bf3da398f1dd87d45d95f6259f9be90"}]}
{"actor":{"display_login":"cm-gerrit"}}