)]}'
{
  "commit": "82bf5d3ca80ecb4bc7b6c5ccfe64620eda7621c9",
  "tree": "f830ccc41791dd8c580bf21a6c4beb554d66e253",
  "parents": [
    "4b641d849b80a02382a821220074f21c510520d3"
  ],
  "author": {
    "name": "Devin Kim",
    "email": "dojip.kim@lge.com",
    "time": "Mon Oct 29 15:17:31 2012 -0700"
  },
  "committer": {
    "name": "Android Partner Code Review",
    "email": "android-gerrit-partner@google.com",
    "time": "Wed Nov 07 18:38:03 2012 -0800"
  },
  "message": "workqueue: skip nr_running sanity check in worker_enter_idle() if trustee is active\n\nworker_enter_idle() has WARN_ON_ONCE() which triggers if nr_running\nisn\u0027t zero when every worker is idle.  This can trigger spuriously\nwhile a cpu is going down due to the way trustee sets %WORKER_ROGUE\nand zaps nr_running.\n\nIt first sets %WORKER_ROGUE on all workers without updating\nnr_running, releases gcwq-\u003elock, schedules, regrabs gcwq-\u003elock and\nthen zaps nr_running.  If the last running worker enters idle\ninbetween, it would see stale nr_running which hasn\u0027t been zapped yet\nand trigger the WARN_ON_ONCE().\n\nFix it by performing the sanity check iff the trustee is idle.\n\nChange-Id: I78c6300647a9e14a5f5f27fee0679d9072481188\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: stable@vger.kernel.org\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5abf42f63c0825f31164a9debc4e30c06ce1f9ee",
      "old_mode": 33188,
      "old_path": "kernel/workqueue.c",
      "new_id": "7da267c8d0d5a43fcb1cda0827c3aaaa36248be5",
      "new_mode": 33188,
      "new_path": "kernel/workqueue.c"
    }
  ]
}
