)]}'
{
  "commit": "bc9560155f4063bbc9be71bd69d6726d41b47653",
  "tree": "9d4be1d4a9526b0b0d9e74cfb335ad696195685f",
  "parents": [
    "06b1f8083d6ed379ec1207a96339f23e8f7abfcf"
  ],
  "author": {
    "name": "Oleg Nesterov",
    "email": "oleg@redhat.com",
    "time": "Thu Feb 12 20:59:13 2015 +0100"
  },
  "committer": {
    "name": "Ingo Molnar",
    "email": "mingo@kernel.org",
    "time": "Wed Feb 18 14:27:40 2015 +0100"
  },
  "message": "sched/completion: Serialize completion_done() with complete()\n\nCommit de30ec47302c \"Remove unnecessary -\u003ewait.lock serialization when\nreading completion state\" was not correct, without lock/unlock the code\nlike stop_machine_from_inactive_cpu()\n\n\twhile (!completion_done())\n\t\tcpu_relax();\n\ncan return before complete() finishes its spin_unlock() which writes to\nthis memory. And spin_unlock_wait().\n\nWhile at it, change try_wait_for_completion() to use READ_ONCE().\n\nReported-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReported-by: Davidlohr Bueso \u003cdave@stgolabs.net\u003e\nTested-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Peter Zijlstra (Intel) \u003cpeterz@infradead.org\u003e\n[ Added a comment with the barrier. ]\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Nicholas Mc Guire \u003cder.herr@hofr.at\u003e\nCc: raghavendra.kt@linux.vnet.ibm.com\nCc: waiman.long@hp.com\nFixes: de30ec47302c (\"sched/completion: Remove unnecessary -\u003ewait.lock serialization when reading completion state\")\nLink: http://lkml.kernel.org/r/20150212195913.GA30430@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7052d3fd4e7bd87a29bd144cbca1086621040251",
      "old_mode": 33188,
      "old_path": "kernel/sched/completion.c",
      "new_id": "8d0f35debf35657689908a4b37df7230ba7d6710",
      "new_mode": 33188,
      "new_path": "kernel/sched/completion.c"
    }
  ]
}
