)]}'
{
  "commit": "b302545744c031eae04a43fb1c56cc17e00a193a",
  "tree": "6d72f21f033d5e2e1589dada45b767a0327e45d0",
  "parents": [
    "dfaf3c036cd46a73f4ef3e4b75c1f647e503d4e1"
  ],
  "author": {
    "name": "Benjamin Herrenschmidt",
    "email": "benh@kernel.crashing.org",
    "time": "Mon Dec 12 12:42:12 2011 +0100"
  },
  "committer": {
    "name": "Jens Axboe",
    "email": "axboe@kernel.dk",
    "time": "Mon Dec 12 12:42:12 2011 +0100"
  },
  "message": "block/swim3: Locking fixes\n\nThe old PowerMac swim3 driver has some \"interesting\" locking issues,\nusing a private lock and failing to lock the queue before completing\nrequests, which triggered WARN_ONs among others.\n\nThis rips out the private lock, makes everything operate under the\nblock queue lock, and generally makes things simpler.\n\nWe used to also share a queue between the two possible instances which\nwas problematic since we might pick the wrong controller in some cases,\nso make the queue and the current request per-instance and use\nqueuedata to point to our private data which is a lot cleaner.\n\nWe still share the queue lock but then, it\u0027s nearly impossible to actually\nuse 2 swim3\u0027s simultaneously: one would need to have a Wallstreet\nPowerBook, the only machine afaik with two of these on the motherboard,\nand populate both hotswap bays with a floppy drive (the machine ships\nonly with one), so nobody cares...\n\nWhile at it, add a little fix to clear up stale interrupts when loading\nthe driver or plugging a floppy drive in a bay.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ae3e167e17adc3f18bc4b14fe3b1635d299bfb3e",
      "old_mode": 33188,
      "old_path": "drivers/block/swim3.c",
      "new_id": "89ddab127e33df525924b73f23501fc9fcab1006",
      "new_mode": 33188,
      "new_path": "drivers/block/swim3.c"
    }
  ]
}
