)]}'
{
  "commit": "6e87ed0fc93ffbe2aec296e6912b1dcb19034d6c",
  "tree": "4f4ac522d34f35de3e3671996ddc35977aaa49ad",
  "parents": [
    "4442f2e03ed9646664c94e197e637b03324a6664"
  ],
  "author": {
    "name": "Bob Peterson",
    "email": "rpeterso@redhat.com",
    "time": "Fri Nov 18 10:58:32 2011 -0500"
  },
  "committer": {
    "name": "Steven Whitehouse",
    "email": "swhiteho@redhat.com",
    "time": "Mon Nov 21 10:04:09 2011 +0000"
  },
  "message": "GFS2: move toward a generic multi-block allocator\n\nThis patch is a revision of the one I previously posted.\nI tried to integrate all the suggestions Steve gave.\nThe purpose of the patch is to change function gfs2_alloc_block\n(allocate either a dinode block or an extent of data blocks)\nto a more generic gfs2_alloc_blocks function that can\nallocate both a dinode _and_ an extent of data blocks in the\nsame call. This will ultimately help us create a multi-block\nreservation scheme to reduce file fragmentation.\n\nThis patch moves more toward a generic multi-block allocator that\ntakes a pointer to the number of data blocks to allocate, plus whether\nor not to allocate a dinode. In theory, it could be called to allocate\n(1) a single dinode block, (2) a group of one or more data blocks, or\n(3) a dinode plus several data blocks.\n\nSigned-off-by: Bob Peterson \u003crpeterso@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b69235ba2251c28cf608abce1ee46e4492ceff40",
      "old_mode": 33188,
      "old_path": "fs/gfs2/bmap.c",
      "new_id": "cb74312eb27050b26c971035c56434b31702d529",
      "new_mode": 33188,
      "new_path": "fs/gfs2/bmap.c"
    },
    {
      "type": "modify",
      "old_id": "ae75319b65e8b36d10916b7f278b014a9c0795ee",
      "old_mode": 33188,
      "old_path": "fs/gfs2/dir.c",
      "new_id": "f8485da3b8533e196f56d0b4330c285b426074bd",
      "new_mode": 33188,
      "new_path": "fs/gfs2/dir.c"
    },
    {
      "type": "modify",
      "old_id": "de2668f5c974bae5bcd21efadef6e251f0b50829",
      "old_mode": 33188,
      "old_path": "fs/gfs2/inode.c",
      "new_id": "3ab192bac7d37efd94e72e852f3e818b42bcf6e2",
      "new_mode": 33188,
      "new_path": "fs/gfs2/inode.c"
    },
    {
      "type": "modify",
      "old_id": "855597abc5e76e9d979b850226d310084a7c1f5a",
      "old_mode": 33188,
      "old_path": "fs/gfs2/rgrp.c",
      "new_id": "b8935afab20b05ce61849fb3405ce15a9345d8b3",
      "new_mode": 33188,
      "new_path": "fs/gfs2/rgrp.c"
    },
    {
      "type": "modify",
      "old_id": "4cb560813973f554b923abb4e553605093851bd0",
      "old_mode": 33188,
      "old_path": "fs/gfs2/rgrp.h",
      "new_id": "b3b61b8f6d8f527a80a0349655023681127ad295",
      "new_mode": 33188,
      "new_path": "fs/gfs2/rgrp.h"
    },
    {
      "type": "modify",
      "old_id": "e4794a5b0a161ae9dc211d2f341f58b286b024c0",
      "old_mode": 33188,
      "old_path": "fs/gfs2/xattr.c",
      "new_id": "ef74e1591b896c47117ee15af67327d31e3be357",
      "new_mode": 33188,
      "new_path": "fs/gfs2/xattr.c"
    }
  ]
}
