)]}'
{
  "commit": "bb31b3122c0dd07d2d958da17a50ad771ce79e2b",
  "tree": "c76193ec64772ee387be80245e86d093ab16c908",
  "parents": [
    "cf7d7e5a1980d1116ee152d25dac382b112b9c17"
  ],
  "author": {
    "name": "Borislav Petkov",
    "email": "borislav.petkov@amd.com",
    "time": "Thu Dec 02 17:48:35 2010 +0100"
  },
  "committer": {
    "name": "Borislav Petkov",
    "email": "borislav.petkov@amd.com",
    "time": "Wed Dec 08 19:52:27 2010 +0100"
  },
  "message": "EDAC: Fix workqueue-related crashes\n\n00740c58541b6087d78418cebca1fcb86dc6077d changed edac_core to\nun-/register a workqueue item only if a lowlevel driver supplies a\npolling routine. Normally, when we remove a polling low-level driver, we\ngo and cancel all the queued work. However, the workqueue unreg happens\nbased on the -\u003eop_state setting, and edac_mc_del_mc() sets this to\nOP_OFFLINE _before_ we cancel the work item, leading to NULL ptr oops on\nthe workqueue list.\n\nFix it by putting the unreg stuff in proper order.\n\nCc: \u003cstable@kernel.org\u003e #36.x\nReported-and-tested-by: Tobias Karnat \u003ctobias.karnat@googlemail.com\u003e\nLKML-Reference: \u003c1291201307.3029.21.camel@Tobias-Karnat\u003e\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ba6586a69ccce3b000fb22ee21512ab4673b44ac",
      "old_mode": 33188,
      "old_path": "drivers/edac/edac_mc.c",
      "new_id": "795ea69c4d8f5fb6149c62fba8e085bd83363309",
      "new_mode": 33188,
      "new_path": "drivers/edac/edac_mc.c"
    }
  ]
}
