)]}'
{
  "commit": "e2a60da74fc8215c68509a89e9a69c66363153db",
  "tree": "c23dd6540dc211e2b2583c3e950a7f6977e3f1df",
  "parents": [
    "d41570b7469724005eb78448a69289900f911963"
  ],
  "author": {
    "name": "Martin K. Petersen",
    "email": "martin.petersen@oracle.com",
    "time": "Tue Sep 18 12:19:25 2012 -0400"
  },
  "committer": {
    "name": "Jens Axboe",
    "email": "axboe@kernel.dk",
    "time": "Thu Sep 20 14:31:38 2012 +0200"
  },
  "message": "block: Clean up special command handling logic\n\nRemove special-casing of non-rw fs style requests (discard). The nomerge\nflags are consolidated in blk_types.h, and rq_mergeable() and\nbio_mergeable() have been modified to use them.\n\nbio_is_rw() is used in place of bio_has_data() a few places. This is\ndone to to distinguish true reads and writes from other fs type requests\nthat carry a payload (e.g. write same).\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nAcked-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2d739ca109238dd6e50e8a3e59d97ff48efc687d",
      "old_mode": 33188,
      "old_path": "block/blk-core.c",
      "new_id": "5cc29299f6ac63c429beba4485e1105a66bf5783",
      "new_mode": 33188,
      "new_path": "block/blk-core.c"
    },
    {
      "type": "modify",
      "old_id": "e76279e411622519eebb54d4802eb11b796788db",
      "old_mode": 33188,
      "old_path": "block/blk-merge.c",
      "new_id": "86710ca408b862d38f1876c59332ff3753033ec4",
      "new_mode": 33188,
      "new_path": "block/blk-merge.c"
    },
    {
      "type": "modify",
      "old_id": "2a0ea32d249fdaa9694e0249e435777565535d70",
      "old_mode": 33188,
      "old_path": "block/blk.h",
      "new_id": "ca51543b248ca16f0eb28e937ec321e52f3130c8",
      "new_mode": 33188,
      "new_path": "block/blk.h"
    },
    {
      "type": "modify",
      "old_id": "6a55d418896f5ceee0042da69c0177c495219cbc",
      "old_mode": 33188,
      "old_path": "block/elevator.c",
      "new_id": "9b1d42b62f207d5a37f657e21fc65769bc9e85c2",
      "new_mode": 33188,
      "new_path": "block/elevator.c"
    },
    {
      "type": "modify",
      "old_id": "52b9cbc3e4dac80e2229a0d65be621b7b0f15ebc",
      "old_mode": 33188,
      "old_path": "include/linux/bio.h",
      "new_id": "e54305cacc9821e4ffbb40aebbd89ddb97401710",
      "new_mode": 33188,
      "new_path": "include/linux/bio.h"
    },
    {
      "type": "modify",
      "old_id": "3eefbb2911922b6f0e28d8bdd72b362ed376913d",
      "old_mode": 33188,
      "old_path": "include/linux/blk_types.h",
      "new_id": "1b229664f573a2bf19997a1c6b78e6e604bdb4d4",
      "new_mode": 33188,
      "new_path": "include/linux/blk_types.h"
    },
    {
      "type": "modify",
      "old_id": "4a2ab7c85393df48fd8d93e085f3b7ead5de7be2",
      "old_mode": 33188,
      "old_path": "include/linux/blkdev.h",
      "new_id": "3a6fea7460f1f0309508432696609e3376b2195d",
      "new_mode": 33188,
      "new_path": "include/linux/blkdev.h"
    }
  ]
}
