)]}'
{
  "commit": "2ac55d41b5d6bf49e76bc85db5431240617e2f8f",
  "tree": "ee8e2a716ef0b50388ef5e4a86387ec0499bca89",
  "parents": [
    "5a1a3df1f6c86926cfe8657e6f9b4b4c2f467d60"
  ],
  "author": {
    "name": "Josef Bacik",
    "email": "josef@redhat.com",
    "time": "Wed Feb 03 19:33:23 2010 +0000"
  },
  "committer": {
    "name": "Chris Mason",
    "email": "chris.mason@oracle.com",
    "time": "Mon Mar 15 11:00:13 2010 -0400"
  },
  "message": "Btrfs: cache the extent state everywhere we possibly can V2\n\nThis patch just goes through and fixes everybody that does\n\nlock_extent()\nblah\nunlock_extent()\n\nto use\n\nlock_extent_bits()\nblah\nunlock_extent_cached()\n\nand pass around a extent_state so we only have to do the searches once per\nfunction.  This gives me about a 3 mb/s boots on my random write test.  I have\nnot converted some things, like the relocation and ioctl\u0027s, since they aren\u0027t\nheavily used and the relocation stuff is in the middle of being re-written.  I\nalso changed the clear_extent_bit() to only unset the cached state if we are\nclearing EXTENT_LOCKED and related stuff, so we can do things like this\n\nlock_extent_bits()\nclear delalloc bits\nunlock_extent_cached()\n\nwithout losing our cached state.  I tested this thoroughly and turned on\nLEAK_DEBUG to make sure we weren\u0027t leaking extent states, everything worked out\nfine.\n\nSigned-off-by: Josef Bacik \u003cjosef@redhat.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3a36b1fb553af314a6d9a885d4bf1473b7dd58ac",
      "old_mode": 33188,
      "old_path": "fs/btrfs/ctree.h",
      "new_id": "3f704a8161371c79dca93ce1add30b93192512c5",
      "new_mode": 33188,
      "new_path": "fs/btrfs/ctree.h"
    },
    {
      "type": "modify",
      "old_id": "0427183e3e05c0198617427fbc311c9b7f397947",
      "old_mode": 33188,
      "old_path": "fs/btrfs/disk-io.c",
      "new_id": "11d0ad30e203c7ebecd9845d2989fe1c04311f60",
      "new_mode": 33188,
      "new_path": "fs/btrfs/disk-io.c"
    },
    {
      "type": "modify",
      "old_id": "559f72489b3bf02b4477369da854bf371cbbd0e4",
      "old_mode": 33188,
      "old_path": "fs/btrfs/extent-tree.c",
      "new_id": "1727b26fb1944706f87210ddec2ca07a944b83e0",
      "new_mode": 33188,
      "new_path": "fs/btrfs/extent-tree.c"
    },
    {
      "type": "modify",
      "old_id": "3c17c9eb0d98e344c65bd3350c138390d4a2984e",
      "old_mode": 33188,
      "old_path": "fs/btrfs/extent_io.c",
      "new_id": "c99121ac5d6b7f1f9f3b05b2c4b1e47e1ac06cbf",
      "new_mode": 33188,
      "new_path": "fs/btrfs/extent_io.c"
    },
    {
      "type": "modify",
      "old_id": "36de250a7b2bce5ef6f36d35ded4f1f88a2dfc58",
      "old_mode": 33188,
      "old_path": "fs/btrfs/extent_io.h",
      "new_id": "bbab4813646f92a2df9c462daabde89b452826ab",
      "new_mode": 33188,
      "new_path": "fs/btrfs/extent_io.h"
    },
    {
      "type": "modify",
      "old_id": "a7fd9f3a750abe05ebd586e6db1dfda729a64aff",
      "old_mode": 33188,
      "old_path": "fs/btrfs/file.c",
      "new_id": "d146dde7efb6f73a0b41e554e41367c3fea69d2c",
      "new_mode": 33188,
      "new_path": "fs/btrfs/file.c"
    },
    {
      "type": "modify",
      "old_id": "1824dda1d351844fc66bfc94895dad3919d4c57f",
      "old_mode": 33188,
      "old_path": "fs/btrfs/inode.c",
      "new_id": "2a337a09c650d0a8be9dab0971ad973006fce721",
      "new_mode": 33188,
      "new_path": "fs/btrfs/inode.c"
    },
    {
      "type": "modify",
      "old_id": "d866b460c26e37a1d806db7f86cf05fd0b838cd2",
      "old_mode": 33188,
      "old_path": "fs/btrfs/ioctl.c",
      "new_id": "9aaba6e472d3f61f98085ae549304f375775efc1",
      "new_mode": 33188,
      "new_path": "fs/btrfs/ioctl.c"
    },
    {
      "type": "modify",
      "old_id": "d52759daa53fc72f278d7a61d82c527101b5f9c5",
      "old_mode": 33188,
      "old_path": "fs/btrfs/relocation.c",
      "new_id": "0b23942cbc0dfc5296afe724759013c14188ac54",
      "new_mode": 33188,
      "new_path": "fs/btrfs/relocation.c"
    }
  ]
}
