)]}'
{
  "commit": "3a326a2ce88e71d00ac0d133e314a3342a7709f8",
  "tree": "3a3cf55be19311c04d195e37baec9f49c4015b18",
  "parents": [
    "0b749ce3802428007a37870eb51ba3c0bdf90857"
  ],
  "author": {
    "name": "Ingo Molnar",
    "email": "mingo@elte.hu",
    "time": "Mon Apr 10 15:18:35 2006 +0200"
  },
  "committer": {
    "name": "Jens Axboe",
    "email": "axboe@suse.de",
    "time": "Mon Apr 10 15:18:35 2006 +0200"
  },
  "message": "[PATCH] introduce a \"kernel-internal pipe object\" abstraction\n\nseparate out the \u0027internal pipe object\u0027 abstraction, and make it\nusable to splice. This cleans up and fixes several aspects of the\ninternal splice APIs and the pipe code:\n\n - pipes: the allocation and freeing of pipe_inode_info is now more symmetric\n   and more streamlined with existing kernel practices.\n\n - splice: small micro-optimization: less pointer dereferencing in splice\n   methods\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\nUpdate XFS for the -\u003esplice_read/-\u003esplice_write changes.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "889f722ee36d638c5379634ebe2eb54c1055e58e",
      "old_mode": 33188,
      "old_path": "fs/fifo.c",
      "new_id": "b16e2f597d6145bcf512fe7ba0a34638e97c4040",
      "new_mode": 33188,
      "new_path": "fs/fifo.c"
    },
    {
      "type": "modify",
      "old_id": "795df987cd38bbbe773fcc029084c019c75e5d02",
      "old_mode": 33188,
      "old_path": "fs/pipe.c",
      "new_id": "705b4869262765c17124b2c361359686dce6e202",
      "new_mode": 33188,
      "new_path": "fs/pipe.c"
    },
    {
      "type": "modify",
      "old_id": "9bfd6af0cf452a4a558ea4b88c9044777d924502",
      "old_mode": 33188,
      "old_path": "fs/splice.c",
      "new_id": "ed91a62402e028e81e4ebedb895fae6556b17a38",
      "new_mode": 33188,
      "new_path": "fs/splice.c"
    },
    {
      "type": "modify",
      "old_id": "ae4c4754ed3185446023f8f25c0efd068104b19d",
      "old_mode": 33188,
      "old_path": "fs/xfs/linux-2.6/xfs_file.c",
      "new_id": "269721af02f3bf4390ac325b54f64f05435ee960",
      "new_mode": 33188,
      "new_path": "fs/xfs/linux-2.6/xfs_file.c"
    },
    {
      "type": "modify",
      "old_id": "90cd314acbaa7bc742af0509f263dd18053b5d74",
      "old_mode": 33188,
      "old_path": "fs/xfs/linux-2.6/xfs_lrw.c",
      "new_id": "74a52937f20848159949ccb64ad63f030fc2be7e",
      "new_mode": 33188,
      "new_path": "fs/xfs/linux-2.6/xfs_lrw.c"
    },
    {
      "type": "modify",
      "old_id": "eaa5659713fb8d9535eb2c08bed9a7e621839d35",
      "old_mode": 33188,
      "old_path": "fs/xfs/linux-2.6/xfs_lrw.h",
      "new_id": "55c689a86ad2e9b40f1dece835952d73e412cd2c",
      "new_mode": 33188,
      "new_path": "fs/xfs/linux-2.6/xfs_lrw.h"
    },
    {
      "type": "modify",
      "old_id": "6f1c79a28f8bee1e1faac2a2ced7b5acce9bacca",
      "old_mode": 33188,
      "old_path": "fs/xfs/linux-2.6/xfs_vnode.h",
      "new_id": "88b09f18628995ccb3c8d61dc6923260f3438b24",
      "new_mode": 33188,
      "new_path": "fs/xfs/linux-2.6/xfs_vnode.h"
    },
    {
      "type": "modify",
      "old_id": "1e9ebaba07b7a2d1c8436ef95cdb5b5799dc1fce",
      "old_mode": 33188,
      "old_path": "include/linux/fs.h",
      "new_id": "7e6454454fbd5395080e846c30ce3e7ebb3e6d79",
      "new_mode": 33188,
      "new_path": "include/linux/fs.h"
    },
    {
      "type": "modify",
      "old_id": "ec384958d509690090aa1936b4624cb3da05b2d8",
      "old_mode": 33188,
      "old_path": "include/linux/pipe_fs_i.h",
      "new_id": "9cf99cb34c1537aeb881155aef14e895240610af",
      "new_mode": 33188,
      "new_path": "include/linux/pipe_fs_i.h"
    }
  ]
}
