)]}'
{
  "log": [
    {
      "commit": "945d8962ceee6bb273365d0bdf42f763225b290f",
      "tree": "43f5617022c7c947c3c63664e49eb9575ab82f2f",
      "parents": [
        "0d0ca30f180906224be6279788f2b202cfd959d8",
        "4ea028859bbdad34b84c9951fbb832ae10c6a96c"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sun May 22 12:33:42 2011 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sun May 22 12:33:42 2011 -0400"
      },
      "message": "Merge branch \u0027cleanups\u0027 of git://repo.or.cz/linux-2.6/btrfs-unstable into inode_numbers\n\nConflicts:\n\tfs/btrfs/extent-tree.c\n\tfs/btrfs/free-space-cache.c\n\tfs/btrfs/inode.c\n\tfs/btrfs/tree-log.c\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "eed631e0d741d1a1067cfc6d709fdf2363126f9c",
      "tree": "31ba02472a8d5ef2d7780274a7663258c09a9acf",
      "parents": [
        "bd1a643e10eb8782b36b47c3602300319dd2fb00",
        "ebcb904dfe31644857422e3bb62e50f76fe86255"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 15 10:22:10 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 15 10:22:10 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:\n  Btrfs: fix FS_IOC_SETFLAGS ioctl\n  Btrfs: fix FS_IOC_GETFLAGS ioctl\n  fs: remove FS_COW_FL\n  Btrfs: fix easily get into ENOSPC in mixed case\n  Prevent oopsing in posix_acl_valid()\n"
    },
    {
      "commit": "f5de93914983bf04b92a786d1d205286fc53b49b",
      "tree": "88801bc318e62bdd34698ca7cf5029b16570d1b7",
      "parents": [
        "7cf96da3ec7ca225acf4f284b0e904a1f5f98821"
      ],
      "author": {
        "name": "Daniel J Blueman",
        "email": "daniel.blueman@gmail.com",
        "time": "Tue May 03 16:44:13 2011 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sat May 14 16:10:18 2011 -0400"
      },
      "message": "Prevent oopsing in posix_acl_valid()\n\nIf posix_acl_from_xattr() returns an error code, a negative address is\ndereferenced causing an oops; fix by checking for error code first.\n\nSigned-off-by: Daniel J Blueman \u003cdaniel.blueman@gmail.com\u003e\nReviewed-by: Josef Bacik \u003cjosef@redhat.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "c704005d886cf0bc9bc3974eb009b22fe0da32c7",
      "tree": "b9effb8d686af95ca92782697b75a70bf34a3964",
      "parents": [
        "4891aca2dac612a2f21a3278d9906ade13b55788"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.cz",
        "time": "Tue Apr 19 18:00:01 2011 +0200"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.cz",
        "time": "Mon May 02 13:57:20 2011 +0200"
      },
      "message": "btrfs: unify checking of IS_ERR and null\n\nuse IS_ERR_OR_NULL when possible, done by this coccinelle script:\n\n@ match @\nidentifier id;\n@@\n(\n- BUG_ON(IS_ERR(id) || !id);\n+ BUG_ON(IS_ERR_OR_NULL(id));\n|\n- IS_ERR(id) || !id\n+ IS_ERR_OR_NULL(id)\n|\n- !id || IS_ERR(id)\n+ IS_ERR_OR_NULL(id)\n)\n\nSigned-off-by: David Sterba \u003cdsterba@suse.cz\u003e\n"
    },
    {
      "commit": "adff377bb1010ec65aada1f94ef2be7c7805c711",
      "tree": "83742ebd4de5c043b2f58969ef4d6634a301bfe7",
      "parents": [
        "d8bdc59f215e62098bc5b4256fd9928bf27053a1",
        "f65647c29b14f5a32ff6f3237b0ef3b375ed5a79"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 18 12:24:05 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 18 12:24:05 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: (24 commits)\n  Btrfs: fix free space cache leak\n  Btrfs: avoid taking the chunk_mutex in do_chunk_alloc\n  Btrfs end_bio_extent_readpage should look for locked bits\n  Btrfs: don\u0027t force chunk allocation in find_free_extent\n  Btrfs: Check validity before setting an acl\n  Btrfs: Fix incorrect inode nlink in btrfs_link()\n  Btrfs: Check if btrfs_next_leaf() returns error in btrfs_real_readdir()\n  Btrfs: Check if btrfs_next_leaf() returns error in btrfs_listxattr()\n  Btrfs: make uncache_state unconditional\n  btrfs: using cached extent_state in set/unlock combinations\n  Btrfs: avoid taking the trans_mutex in btrfs_end_transaction\n  Btrfs: fix subvolume mount by name problem when default mount subvolume is set\n  fix user annotation in ioctl.c\n  Btrfs: check for duplicate iov_base\u0027s when doing dio reads\n  btrfs: properly handle overlapping areas in memmove_extent_buffer\n  Btrfs: fix memory leaks in btrfs_new_inode()\n  Btrfs: check for duplicate iov_base\u0027s when doing dio reads\n  Btrfs: reuse the extent_map we found when calling btrfs_get_extent\n  Btrfs: do not use async submit for small DIO io\u0027s\n  Btrfs: don\u0027t split dio bios if we don\u0027t have to\n  ...\n"
    },
    {
      "commit": "329c5056be8774255db04b01242a9ff4f02eb8ea",
      "tree": "a0aa0ebeb00644833b54df6274058c5a2aa8b7c4",
      "parents": [
        "3153495d8ed6a9bb9f00aea42c18dc488a885dd6"
      ],
      "author": {
        "name": "Miao Xie",
        "email": "miaox@cn.fujitsu.com",
        "time": "Wed Apr 13 14:07:59 2011 +0800"
      },
      "committer": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Apr 13 14:25:35 2011 +0800"
      },
      "message": "Btrfs: Check validity before setting an acl\n\nCall posix_acl_valid() to check if an acl is valid or not.\n\nSigned-off-by: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\n"
    },
    {
      "commit": "2e1496707560ecf98e9b0604622c0990f94861d3",
      "tree": "d1473b70fad31a903fedc87221680678a6c6c5f6",
      "parents": [
        "e795b71799ff0b27365020c9ddaa25d0d83f99c8"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serge@hallyn.com",
        "time": "Wed Mar 23 16:43:26 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 23 19:47:13 2011 -0700"
      },
      "message": "userns: rename is_owner_or_cap to inode_owner_or_capable\n\nAnd give it a kernel-doc comment.\n\n[akpm@linux-foundation.org: btrfs changed in linux-next]\nSigned-off-by: Serge E. Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Daniel Lezcano \u003cdaniel.lezcano@free.fr\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cb5520f02c010e3cb974b9ac06f30aafa2eebc38",
      "tree": "8342407cebb6420f04f46694b8d812552a14cb49",
      "parents": [
        "eee4da2cef8e2dc2b15066e9ebb5b2ff63396eb3",
        "3a90983dbdcb2f4f48c0d771d8e5b4d88f27fae6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 07 14:06:18 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 07 14:06:18 2011 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: (33 commits)\n  Btrfs: Fix page count calculation\n  btrfs: Drop __exit attribute on btrfs_exit_compress\n  btrfs: cleanup error handling in btrfs_unlink_inode()\n  Btrfs: exclude super blocks when we read in block groups\n  Btrfs: make sure search_bitmap finds something in remove_from_bitmap\n  btrfs: fix return value check of btrfs_start_transaction()\n  btrfs: checking NULL or not in some functions\n  Btrfs: avoid uninit variable warnings in ordered-data.c\n  Btrfs: catch errors from btrfs_sync_log\n  Btrfs: make shrink_delalloc a little friendlier\n  Btrfs: handle no memory properly in prepare_pages\n  Btrfs: do error checking in btrfs_del_csums\n  Btrfs: use the global block reserve if we cannot reserve space\n  Btrfs: do not release more reserved bytes to the global_block_rsv than we need\n  Btrfs: fix check_path_shared so it returns the right value\n  btrfs: check return value of btrfs_start_ioctl_transaction() properly\n  btrfs: fix return value check of btrfs_join_transaction()\n  fs/btrfs/inode.c: Add missing IS_ERR test\n  btrfs: fix missing break in switch phrase\n  btrfs: fix several uncheck memory allocations\n  ...\n"
    },
    {
      "commit": "eab49bec41136460b12ac0fbeceeb88386d538c7",
      "tree": "d2ad3e163407d7779d53fdaa0dedcc3b934106de",
      "parents": [
        "acce952b0263825da32cf10489413dec78053347",
        "4d728ec7aefdca5419d2ebfb28c147e81a4b59f4"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Fri Jan 28 16:24:59 2011 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Fri Jan 28 16:24:59 2011 -0500"
      },
      "message": "Merge branch \u0027bug-fixes\u0027 of git://repo.or.cz/linux-btrfs-devel into btrfs-38\n"
    },
    {
      "commit": "d0f69686c2ae775529aadc7a8acc6f13ad41de66",
      "tree": "a7db405db82bd5acc3f51cb010dc306f402931ac",
      "parents": [
        "3f3d0bc0df041236fad4ffa82188a6e4ef9af75e"
      ],
      "author": {
        "name": "Miao Xie",
        "email": "miaox@cn.fujitsu.com",
        "time": "Tue Jan 25 15:46:17 2011 +0800"
      },
      "committer": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 27 01:05:16 2011 +0800"
      },
      "message": "Btrfs: Don\u0027t return acl info when mounting with noacl option\n\nSteps to reproduce:\n\n  # mkfs.btrfs /dev/sda2\n  # mount /dev/sda2 /mnt\n  # touch /mnt/file0\n  # setfacl -m \u0027u:root:x,g::x,o::x\u0027 /mnt/file0\n  # umount /mnt\n  # mount /dev/sda2 -o noacl /mnt\n  # getfacl /mnt/file0\n  ...\n  user::rw-\n  user:root:--x\n  group::--x\n  mask::--x\n  other::--x\n\nThe output should be:\n\n  user::rw-\n  group::--x\n  other::--x\n\nSigned-off-by: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\n"
    },
    {
      "commit": "eee2a817df7c5a6e569f353f8be78cc1b3604bb6",
      "tree": "f721beb4712c732702d3383d3c6a52da8b5bbb20",
      "parents": [
        "83896fb5e51594281720d145164f866ba769abd5",
        "acce952b0263825da32cf10489413dec78053347"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 14:43:43 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 17 14:43:43 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: (25 commits)\n  Btrfs: forced readonly mounts on errors\n  btrfs: Require CAP_SYS_ADMIN for filesystem rebalance\n  Btrfs: don\u0027t warn if we get ENOSPC in btrfs_block_rsv_check\n  btrfs: Fix memory leak in btrfs_read_fs_root_no_radix()\n  btrfs: check NULL or not\n  btrfs: Don\u0027t pass NULL ptr to func that may deref it.\n  btrfs: mount failure return value fix\n  btrfs: Mem leak in btrfs_get_acl()\n  btrfs: fix wrong free space information of btrfs\n  btrfs: make the chunk allocator utilize the devices better\n  btrfs: restructure find_free_dev_extent()\n  btrfs: fix wrong calculation of stripe size\n  btrfs: try to reclaim some space when chunk allocation fails\n  btrfs: fix wrong data space statistics\n  fs/btrfs: Fix build of ctree\n  Btrfs: fix off by one while setting block groups readonly\n  Btrfs: Add BTRFS_IOC_SUBVOL_GETFLAGS/SETFLAGS ioctls\n  Btrfs: Add readonly snapshots support\n  Btrfs: Refactor btrfs_ioctl_snap_create()\n  btrfs: Extract duplicate decompress code\n  ...\n"
    },
    {
      "commit": "42838bb265b9cff3de9587fcacc398b5112dc2d9",
      "tree": "4c0cfbe4f41004b096917ddf75ed7d74743a4af3",
      "parents": [
        "6d07bcec969af335d4e35b3921131b7929bd634e"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Thu Jan 06 21:45:21 2011 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sun Jan 16 11:30:19 2011 -0500"
      },
      "message": "btrfs: Mem leak in btrfs_get_acl()\n\nIt seems to me that we leak the memory allocated to \u0027value\u0027 in\nbtrfs_get_acl() if the call to posix_acl_from_xattr() fails.\nHere\u0027s a patch that attempts to correct that problem.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "258a5aa8dfc6294f5f7df892023ee4d3e57c9841",
      "tree": "101a4b9ee97f7d838b35a906244085873c599d19",
      "parents": [
        "73598611ade7c85f0c3d52ba5130103f6709c6d3"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:50:01 2011 +1100"
      },
      "committer": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:50:30 2011 +1100"
      },
      "message": "btrfs: provide simple rcu-walk ACL implementation\n\nThis simple implementation just checks for no ACLs on the inode, and\nif so, then the rcu-walk may proceed, otherwise fail it.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@kernel.dk\u003e\n"
    },
    {
      "commit": "b74c79e99389cd79b31fcc08f82c24e492e63c7e",
      "tree": "763c6b412517306670bc625e90035f2d16bb739f",
      "parents": [
        "34286d6662308d82aed891852d04c7c3a2649b16"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:49:58 2011 +1100"
      },
      "committer": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:50:29 2011 +1100"
      },
      "message": "fs: provide rcu-walk aware permission i_ops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@kernel.dk\u003e\n"
    },
    {
      "commit": "b25b550bb153626df6a48eb8583e923e3dfcf64a",
      "tree": "baca9843877b8b3a254cde92ac2a9072014b5621",
      "parents": [
        "eda054770e5cd0e9ee1568dfcbcf39f9ade4f545",
        "6f902af400b2499c80865c62a06fbbd15cf804fd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 11 14:18:47 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 11 14:18:47 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:\n  Btrfs: The file argument for fsync() is never null\n  Btrfs: handle ERR_PTR from posix_acl_from_xattr()\n  Btrfs: avoid BUG when dropping root and reference in same transaction\n  Btrfs: prohibit a operation of changing acl\u0027s mask when noacl mount option used\n  Btrfs: should add a permission check for setfacl\n  Btrfs: btrfs_lookup_dir_item() can return ERR_PTR\n  Btrfs: btrfs_read_fs_root_no_name() returns ERR_PTRs\n  Btrfs: unwind after btrfs_start_transaction() errors\n  Btrfs: btrfs_iget() returns ERR_PTR\n  Btrfs: handle kzalloc() failure in open_ctree()\n  Btrfs: handle error returns from btrfs_lookup_dir_item()\n  Btrfs: Fix BUG_ON for fs converted from extN\n  Btrfs: Fix null dereference in relocation.c\n  Btrfs: fix remap_file_pages error\n  Btrfs: uninitialized data is check_path_shared()\n  Btrfs: fix fallocate regression\n  Btrfs: fix loop device on top of btrfs\n"
    },
    {
      "commit": "834e74759a473f8101a273e843d1edec2778801d",
      "tree": "f7009149bb1ca362737b2e6b7dc855326d90f079",
      "parents": [
        "15e7000095e6fc9ad07e476a100c900c72c14225"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Sat May 29 09:48:35 2010 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Fri Jun 11 15:57:39 2010 -0400"
      },
      "message": "Btrfs: handle ERR_PTR from posix_acl_from_xattr()\n\nposix_acl_from_xattr() returns both ERR_PTRs and null, but it\u0027s OK to\npass null values to set_cached_acl()\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "731e3d1b4348a96d53de6c084774424dedc64a3b",
      "tree": "1f0a95894fa9a8e226ee2d74c64805c373b1b927",
      "parents": [
        "2f26afba46f0ebf155cf9be746496a0304a5b7cf"
      ],
      "author": {
        "name": "Shi Weihua",
        "email": "shiwh@cn.fujitsu.com",
        "time": "Tue May 18 00:51:54 2010 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Fri Jun 11 15:57:38 2010 -0400"
      },
      "message": "Btrfs: prohibit a operation of changing acl\u0027s mask when noacl mount option used\n\nwhen used Posix File System Test Suite(pjd-fstest) to test btrfs,\nsome cases about setfacl failed when noacl mount option used.\nI simplified used commands in pjd-fstest, and the following steps\ncan reproduce it.\n------------------------\n# cd btrfs-part/\n# mkdir aaa\n# setfacl -m m::rw aaa    \u003c- successed, but not expected by pjd-fstest.\n------------------------\nI checked ext3, a warning message occured, like as:\n  setfacl: aaa/: Operation not supported\nCertainly, it\u0027s expected by pjd-fstest.\n\nSo, i compared acl.c of btrfs and ext3. Based on that, a patch created.\nFortunately, it works.\n\nSigned-off-by: Shi Weihua \u003cshiwh@cn.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "2f26afba46f0ebf155cf9be746496a0304a5b7cf",
      "tree": "8127a4a101734efce3c0d0190754f180de05a599",
      "parents": [
        "cf1e99a4e0daa4a5623cd71108509823b9ff2d30"
      ],
      "author": {
        "name": "Shi Weihua",
        "email": "shiwh@cn.fujitsu.com",
        "time": "Tue May 18 00:50:32 2010 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Fri Jun 11 15:57:37 2010 -0400"
      },
      "message": "Btrfs: should add a permission check for setfacl\n\nOn btrfs, do the following\n------------------\n# su user1\n# cd btrfs-part/\n# touch aaa\n# getfacl aaa\n  # file: aaa\n  # owner: user1\n  # group: user1\n  user::rw-\n  group::rw-\n  other::r--\n# su user2\n# cd btrfs-part/\n# setfacl -m u::rwx aaa\n# getfacl aaa\n  # file: aaa\n  # owner: user1\n  # group: user1\n  user::rwx           \u003c- successed to setfacl\n  group::rw-\n  other::r--\n------------------\nbut we should prohibit it that user2 changing user1\u0027s acl.\nIn fact, on ext3 and other fs, a message occurs:\n  setfacl: aaa: Operation not permitted\n\nThis patch fixed it.\nSigned-off-by: Shi Weihua \u003cshiwh@cn.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "f01cbd3f8148f2056567f829e07c157b28b2dd1e",
      "tree": "18d4a35bf25c9e17e11ce7a42015fae8ca5d009e",
      "parents": [
        "bb4354538eb7b92f32cfedbad68c7be266c0b467"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu May 13 17:53:15 2010 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri May 21 18:31:18 2010 -0400"
      },
      "message": "btrfs: constify xattr_handler\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "67f15b06c1a7e5417b7042b515ca2695de30beda",
      "tree": "ba93b80b40ba2a6d89adc74ed4be54b4626c56a3",
      "parents": [
        "94673e968cbcce07fa78dac4b0ae05d24b5816e1",
        "035fe03a7ad56982b30ab3a522b7b08d58feccd0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 29 10:27:37 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 29 10:27:37 2010 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:\n  Btrfs: check total number of devices when removing missing\n  Btrfs: check return value of open_bdev_exclusive properly\n  Btrfs: do not mark the chunk as readonly if in degraded mode\n  Btrfs: run orphan cleanup on default fs root\n  Btrfs: fix a memory leak in btrfs_init_acl\n  Btrfs: Use correct values when updating inode i_size on fallocate\n  Btrfs: remove tree_search() in extent_map.c\n  Btrfs: Add mount -o compress-force\n"
    },
    {
      "commit": "f858153c367a397235d3e81136741e40e44faf1d",
      "tree": "bb346105a3e4c9d1cfc4211fe7c3c578e6668d94",
      "parents": [
        "d1ea6a61454e7d7ff0873d0ad1ae27d5807da0d3"
      ],
      "author": {
        "name": "Yang Hongyang",
        "email": "yanghy@cn.fujitsu.com",
        "time": "Tue Jan 26 00:48:23 2010 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Jan 28 16:20:39 2010 -0500"
      },
      "message": "Btrfs: fix a memory leak in btrfs_init_acl\n\nIn btrfs_init_acl() cloned acl is not released\n\nSigned-off-by: Yang Hongyang \u003cyanghy@cn.fujitsu.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "30a0f5e1fb510f17c25ff159a9fffbe01ae0f34e",
      "tree": "3392e115d4d5767c8bdaeac8696a2465d65a1e91",
      "parents": [
        "88f5004430babb836cfce886d5d54c82166f8ba4",
        "11dfe35a0108097f2df1f042c485fa7f758c2cdf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 21 07:28:05 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 21 07:28:05 2010 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:\n  Btrfs: fix possible panic on unmount\n  Btrfs: deal with NULL acl sent to btrfs_set_acl\n  Btrfs: fix regression in orphan cleanup\n  Btrfs: Fix race in btrfs_mark_extent_written\n  Btrfs, fix memory leaks in error paths\n  Btrfs: align offsets for btrfs_ordered_update_i_size\n  btrfs: fix missing last-entry in readdir(3)\n"
    },
    {
      "commit": "a9cc71a60c29a09174bee2fcef8f924c529fd4b7",
      "tree": "d8ae909f351fda769f21ad58ce9fbe211657ecf2",
      "parents": [
        "6c090a11e1c403b727a6a8eff0b97d5fb9e95cb5"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sun Jan 17 20:36:18 2010 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Sun Jan 17 20:40:22 2010 -0500"
      },
      "message": "Btrfs: deal with NULL acl sent to btrfs_set_acl\n\nIt is legal for btrfs_set_acl to be sent a NULL acl.  This\nmakes sure we don\u0027t dereference it.  A similar patch was sent by\nJohannes Hirte \u003cjohannes.hirte@fem.tu-ilmenau.de\u003e\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "ebfee3d71d5a29102aac1fb2e756b8258f753592",
      "tree": "fa18938a56d452eb02c24f106dd06cc78f475e4b",
      "parents": [
        "b8a7f3cd7e8212e5c572178ff3b5a514861036a5",
        "83d3c9696fed237a3d96fce18299e2fcf112109f"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Dec 17 15:02:22 2009 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Dec 17 15:02:22 2009 -0500"
      },
      "message": "Merge branch btrfs-master into for-linus\n\nConflicts:\n\tfs/btrfs/acl.c\n"
    },
    {
      "commit": "f34f57a3ab4e73304d78c125682f1a53cd3975f2",
      "tree": "359aff6491d3e92b3901ea78dc164d41209d3eea",
      "parents": [
        "8082510e7124cc50d728f1b875639cb4e22312cc"
      ],
      "author": {
        "name": "Yan, Zheng",
        "email": "zheng.yan@oracle.com",
        "time": "Thu Nov 12 09:35:27 2009 +0000"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Dec 17 12:33:34 2009 -0500"
      },
      "message": "Btrfs: Pass transaction handle to security and ACL initialization functions\n\nPass transaction handle down to security and ACL initialization\nfunctions, so we can avoid starting nested transactions\n\nSigned-off-by: Yan Zheng \u003czheng.yan@oracle.com\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "431547b3c4533b8c7fd150ab36980b9a3147797b",
      "tree": "807ff2790f3c13c7c91ed2afd6d833032899482d",
      "parents": [
        "ef26ca97e83052790940cbc444b01b0d17a813c1"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Nov 13 09:52:56 2009 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:49 2009 -0500"
      },
      "message": "sanitize xattr handler prototypes\n\nAdd a flags argument to struct xattr_handler and pass it to all xattr\nhandler methods.  This allows using the same methods for multiple\nhandlers, e.g. for the ACL methods which perform exactly the same action\nfor the access and default ACLs, just using a different underlying\nattribute.  With a little more groundwork it\u0027ll also allow sharing the\nmethods for the regular user/trusted/secure handlers in extN, ocfs2 and\njffs2 like it\u0027s already done for xfs in this patch.\n\nAlso change the inode argument to the handlers to a dentry to allow\nusing the handlers mechnism for filesystems that require it later,\ne.g. cifs.\n\n[with GFS2 bits updated by Steven Whitehouse \u003cswhiteho@redhat.com\u003e]\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0eda294dfc980c1cbe4f8a0564bf543f86a01ddb",
      "tree": "478b0abfda753196fcb8842d002e5bb600051618",
      "parents": [
        "690587d109ffe19d6743e4cc80c18b0906b7f9ff"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Oct 13 13:50:18 2009 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Oct 13 13:51:39 2009 -0400"
      },
      "message": "Btrfs: fix btrfs acl #ifdef checks\n\nThe btrfs acl code was #ifdefing for a define\nthat didn\u0027t exist.  This correctly matches it\nto the values used by the Kconfig file.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "3baf0bed0a5adab95c7599d2f27124c74692ef28",
      "tree": "fff0aae377d71743ab4d95449bf57419280555b3",
      "parents": [
        "fd2696f399e45347c07f1f7f340e8515cace5657"
      ],
      "author": {
        "name": "Chris Ball",
        "email": "cjb@laptop.org",
        "time": "Tue Sep 29 13:51:05 2009 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Sep 29 13:51:05 2009 -0400"
      },
      "message": "Btrfs: Use CONFIG_BTRFS_POSIX_ACL to enable ACL code\n\nWe\u0027ve already defined CONFIG_BTRFS_POSIX_ACL in Kconfig, but we\u0027re\ncurrently not using it and are testing CONFIG_FS_POSIX_ACL instead.\nCONFIG_FS_POSIX_ACL states \"Never use this symbol for ifdefs\".\n\nSigned-off-by: Chris Ball \u003ccjb@laptop.org\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "073aaa1b142461d91f83da66db1184d7c1b1edea",
      "tree": "2b54d185d78f1229418fca521a93e6b55c57248b",
      "parents": [
        "06b16e9f68edaa1e71aee943d3c030bcf7380af1"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 09 12:11:54 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:07 2009 -0400"
      },
      "message": "helpers for acl caching + switch to those\n\nhelpers: get_cached_acl(inode, type), set_cached_acl(inode, type, acl),\nforget_cached_acl(inode, type).\n\nubifs/xattr.c needed includes reordered, the rest is a plain switchover.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5affd88a104af43f0063a12ad1ee4c7a587945dc",
      "tree": "95c727eac8669bd346f937b8be2d58ef716a2fe5",
      "parents": [
        "290c263bf83cd78e53b1aa3b42165f588163f2be"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 19:55:32 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:05 2009 -0400"
      },
      "message": "switch btrfs to inode-\u003ei_acl\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7df336ec1266dccbb253bac52c529d3dcc7c22d0",
      "tree": "f52acd46f2db0886669d18494a5e7e0f885b2fb5",
      "parents": [
        "524724ed1f224875a117be593540591ed050c73d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Wed Jun 10 11:36:43 2009 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Wed Jun 10 11:36:43 2009 -0400"
      },
      "message": "Fix btrfs when ACLs are configured out\n\n... otherwise generic_permission() will allow *anything* for all\nfiles you don\u0027t own and that have some group permissions.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "7b1a14bbb0e547aaa4d30cc376e6c8c12539ab0f",
      "tree": "80b75191277afe05201fab3e3d1bc50884444626",
      "parents": [
        "21380931eb4da4e29ac663d0221581282cbba208"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Apr 27 10:49:53 2009 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Apr 27 13:18:26 2009 -0400"
      },
      "message": "Btrfs: fix acl caching\n\nLinus noticed the btrfs code to cache acls wasn\u0027t properly caching\na NULL acl when the inode didn\u0027t have any acls.  This meant the common\ncase of no acls resulted in expensive btree searches every time the\nkernel checked permissions (which is quite often).\n\nThis is a modified version of Linus\u0027 original patch:\n\nProperly set initial acl fields to BTRFS_ACL_NOT_CACHED in the inode.\nThis forces an acl lookup when permission checks are done.\n\nFix btrfs_get_acl to avoid lookups and locking when the inode acls fields\nare set to null.\n\nFix btrfs_get_acl to use the right return value from __btrfs_getxattr\nwhen deciding to cache a NULL acl.  It was storing a NULL acl when\n__btrfs_getxattr return -ENOENT, but __btrfs_getxattr was actually returning\n-ENODATA for this case.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "ce3b0f8d5c2203301fc87f3aaaed73e5819e2a48",
      "tree": "ab952affafe18e604f6aaf6b13315b9435588e60",
      "parents": [
        "f1191b50ec11c8e2ca766d6d99eb5bb9d2c084a3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Mar 29 19:08:22 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 31 23:00:26 2009 -0400"
      },
      "message": "New helper - current_umask()\n\ncurrent-\u003efs-\u003eumask is what most of fs_struct users are doing.\nPut that into a helper function.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d397712bcc6a759a560fd247e6053ecae091f958",
      "tree": "9da8daebb870d8b8b1843507c4621715e23dd31a",
      "parents": [
        "1f3c79a28c8837e8572b98f6d14142d9a6133c56"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Jan 05 21:25:51 2009 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Mon Jan 05 21:25:51 2009 -0500"
      },
      "message": "Btrfs: Fix checkpatch.pl warnings\n\nThere were many, most are fixed now.  struct-funcs.c generates some warnings\nbut these are bogus.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "95819c05732c511338b43c115ffbcee978c02888",
      "tree": "4622f326207c53e42e7c9e8e8d14960e17190a30",
      "parents": [
        "eaa47d8612783807ef9703ebc9bf0d0f0455bf62"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Aug 28 06:21:17 2008 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Sep 25 11:04:07 2008 -0400"
      },
      "message": "Btrfs: optimize btrget/set/removexattr\n\nbtrfs actually stores the whole xattr name, including the prefix ondisk,\nso using the generic resolver that strips off the prefix is not very\nhelpful.  Instead do the real ondisk xattrs manually and only use the\ngeneric resolver for synthetic xattrs like ACLs.\n\n(Sorry Josef for guiding you towards the wrong direction here intially)\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "eaa47d8612783807ef9703ebc9bf0d0f0455bf62",
      "tree": "aae589fac6573e2974935b357bfa687dbab2e718",
      "parents": [
        "eab922ec8907b8c506e799785e7e2d16eabe50e4"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Aug 28 06:21:16 2008 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Sep 25 11:04:07 2008 -0400"
      },
      "message": "btrfs: optmize listxattr\n\nThe -\u003elist handler is really not useful at all, because we always call\nbtrfs_xattr_generic_list anyway.  After this is done\nfind_btrfs_xattr_handler becomes unused, and it becomes obvious that the\ntemporary name buffer allocation isn\u0027t needed but we can directly copy\ninto the supplied buffer.\n\nTested with various getfattr -d calls on varying xattr lists.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "eab922ec8907b8c506e799785e7e2d16eabe50e4",
      "tree": "d983401313631d24240524d40c9ef1d19ed4e5ac",
      "parents": [
        "639cb58675ce9b507eed9c3d6b3335488079b21a"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Thu Aug 28 06:21:15 2008 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Sep 25 11:04:07 2008 -0400"
      },
      "message": "Btrfs: compile when posix acl\u0027s are disabled\n\nThis patch makes btrfs so it will compile properly when acls are disabled.  I\ntested this and it worked with CONFIG_FS_POSIX_ACL off and on.\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "33268eaf0b3db5e2bd12c0ada81a8e8f87a46d68",
      "tree": "93b6d00a73402b59c2ea7ae7434138feecefc085",
      "parents": [
        "6099afe88fe64b2f47c43a8a71c13be3a416bbf7"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Thu Jul 24 12:16:36 2008 -0400"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Sep 25 11:04:05 2008 -0400"
      },
      "message": "Btrfs: Add ACL support\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "c1e32da616a17813f11b701a7a87775d35c12e3a",
      "tree": "3808b0e9572f2a25ab116f230a7832a8fe2365db",
      "parents": [
        "ed0dab6b86cee64e9072107f65fa40629f162b38"
      ],
      "author": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Tue Jan 22 12:46:56 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Sep 25 11:03:59 2008 -0400"
      },
      "message": "Btrfs: Include sched.h in the acl code for current (fixes compile on 2.6.23)\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "fb4bc1e0565a842d704846005ac0ec739e608ede",
      "tree": "d4670954777c4e74ae2385521eeda3965acf4d5b",
      "parents": [
        "caaca38b8fdcf63a17647fddae2195b189e19e37"
      ],
      "author": {
        "name": "Yan",
        "email": "yanzheng@21cn.com",
        "time": "Thu Jan 17 11:59:51 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Sep 25 11:03:59 2008 -0400"
      },
      "message": "Btrfs: Fix compile on 2.6.22 kernel\n\nThis patch fixes compile error on kernel-2.6.22\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "744f52f997b21de2a01931f79cf6c198bf688120",
      "tree": "903f0d91560b139bc7167f424e34664ddb7c0b72",
      "parents": [
        "b3a0d8d28c607cb2531a68742afc2b967b1f6083"
      ],
      "author": {
        "name": "Yan",
        "email": "yanzheng@21cn.com",
        "time": "Mon Jan 14 13:26:08 2008 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Sep 25 11:03:59 2008 -0400"
      },
      "message": "Btrfs: Implement ACLs setting and getting\n\nACLs are stored but not used for permission checks (yet)\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "1caf9342fc71d020e788a59598a44d4ea0136b36",
      "tree": "e54d756bd124515b262f56b22cd9c169b8b00027",
      "parents": [
        "5cf664263b05beb080bf95037e4c3bd50c80b096"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Mon Nov 19 10:18:17 2007 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Sep 25 11:03:57 2008 -0400"
      },
      "message": "Btrfs: Make ACLs return EOPNOTSUPP for now\n\nThere was a slight problem with ACL\u0027s returning EINVAL when you tried to set an\nACL.  This isn\u0027t correct, we should be returning EOPNOTSUPP, so I did a very\nugly thing and just commented everybody out and made them return EOPNOTSUPP.\nThis is only temporary, I\u0027m going back to implement ACL\u0027s, but Chris wants to\npush out a release so this will suffice for now.\n\nAlso Yan suggested setting reada to -1 in the delete case to enable backwards\nreadahead, and in the listxattr case I moved path-\u003ereada \u003d 2; to after the if\n(!path) check so we can avoid a possible null dereference.  Thank you,\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    },
    {
      "commit": "5103e947b9b7ac18ddb21a04ee3486e94c6504d7",
      "tree": "5d7c0c9ce1d57b988165f87c7bae304cb339589c",
      "parents": [
        "0591fb56fb732c7bf500d1446d0bf927046d7002"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Fri Nov 16 11:45:54 2007 -0500"
      },
      "committer": {
        "name": "Chris Mason",
        "email": "chris.mason@oracle.com",
        "time": "Thu Sep 25 11:03:57 2008 -0400"
      },
      "message": "xattr support for btrfs\n\nSigned-off-by: Chris Mason \u003cchris.mason@oracle.com\u003e\n"
    }
  ]
}
