)]}'
{
  "commit": "4e34e719e457f2e031297175410fc0bd4016a085",
  "tree": "ab969a371e0d2efc6bfbf503ca6cdfce3af3bf6c",
  "parents": [
    "edde854e8bb34a7f32fa993d721f1da0faf64165"
  ],
  "author": {
    "name": "Christoph Hellwig",
    "email": "hch@lst.de",
    "time": "Sat Jul 23 17:37:31 2011 +0200"
  },
  "committer": {
    "name": "Al Viro",
    "email": "viro@zeniv.linux.org.uk",
    "time": "Mon Jul 25 14:30:23 2011 -0400"
  },
  "message": "fs: take the ACL checks to common code\n\nReplace the -\u003echeck_acl method with a -\u003eget_acl method that simply reads an\nACL from disk after having a cache miss.  This means we can replace the ACL\nchecking boilerplate code with a single implementation in namei.c.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ca7e25292542a6934f4d3210846167e4343228c4",
      "old_mode": 33188,
      "old_path": "Documentation/filesystems/Locking",
      "new_id": "7e4699146fe172d15fed459d8e702cc38035b59b",
      "new_mode": 33188,
      "new_path": "Documentation/filesystems/Locking"
    },
    {
      "type": "modify",
      "old_id": "7f8861d341ea83321092db0b94e79953c795b5e1",
      "old_mode": 33188,
      "old_path": "Documentation/filesystems/porting",
      "new_id": "b4a3d765ff9ac07aa41e8d12ddbd4e97be5b9bc6",
      "new_mode": 33188,
      "new_path": "Documentation/filesystems/porting"
    },
    {
      "type": "modify",
      "old_id": "eff6617c9a0f6fe7c3824926c8a79b26ccd5b290",
      "old_mode": 33188,
      "old_path": "Documentation/filesystems/vfs.txt",
      "new_id": "52d8fb81cffffdffe3cb8f4ddb1cd65d586855fb",
      "new_mode": 33188,
      "new_path": "Documentation/filesystems/vfs.txt"
    },
    {
      "type": "modify",
      "old_id": "075bc909da179c5b99d98e2bac93ba41da6c17ba",
      "old_mode": 33188,
      "old_path": "fs/9p/acl.c",
      "new_id": "814be079c185277e5fde8f186cd1d2611e32e73d",
      "new_mode": 33188,
      "new_path": "fs/9p/acl.c"
    },
    {
      "type": "modify",
      "old_id": "3eba10f3af1e6b27f0c5e7aa56eca9d9ed739233",
      "old_mode": 33188,
      "old_path": "fs/9p/acl.h",
      "new_id": "ddb7ae19d9718933398fad6d18ac11bcc15c116c",
      "new_mode": 33188,
      "new_path": "fs/9p/acl.h"
    },
    {
      "type": "modify",
      "old_id": "803f59ff2faa556e40ccde956eea57e7b86e4977",
      "old_mode": 33188,
      "old_path": "fs/9p/vfs_inode_dotl.c",
      "new_id": "9d808d0e0cd9ccf896c0ab20b571cfebc7188a79",
      "new_mode": 33188,
      "new_path": "fs/9p/vfs_inode_dotl.c"
    },
    {
      "type": "modify",
      "old_id": "9508ad14c924aff585f0bc656e648d14ee08bfa3",
      "old_mode": 33188,
      "old_path": "fs/btrfs/acl.c",
      "new_id": "65a735d8f6e44443c6044d6b71a59e5acf91f546",
      "new_mode": 33188,
      "new_path": "fs/btrfs/acl.c"
    },
    {
      "type": "modify",
      "old_id": "82be74efbb26dd833a8a0b32bbf108ecfc63baca",
      "old_mode": 33188,
      "old_path": "fs/btrfs/ctree.h",
      "new_id": "fe9287b064969d503e0e2c44f8c7446a8767ce9b",
      "new_mode": 33188,
      "new_path": "fs/btrfs/ctree.h"
    },
    {
      "type": "modify",
      "old_id": "2548a04a0230c0f515bb45f71f1e3357727a7616",
      "old_mode": 33188,
      "old_path": "fs/btrfs/inode.c",
      "new_id": "e91b097e7252a911dcaa61eed0188bfeae500d2a",
      "new_mode": 33188,
      "new_path": "fs/btrfs/inode.c"
    },
    {
      "type": "modify",
      "old_id": "ba99fa4b2f35af628ecf89357122adafbc93a144",
      "old_mode": 33188,
      "old_path": "fs/ext2/acl.c",
      "new_id": "52c053763942eb0db19f72b7fb4618bbeeffd012",
      "new_mode": 33188,
      "new_path": "fs/ext2/acl.c"
    },
    {
      "type": "modify",
      "old_id": "3ff6cbb9ac4486e2c6bc4e7b0ca83485ab01fd1f",
      "old_mode": 33188,
      "old_path": "fs/ext2/acl.h",
      "new_id": "5c0a6a4fb052c78a3d14df3b25bfc47a26b5fe9b",
      "new_mode": 33188,
      "new_path": "fs/ext2/acl.h"
    },
    {
      "type": "modify",
      "old_id": "82e06321de359176c20c9603ba1a9dee2b15b638",
      "old_mode": 33188,
      "old_path": "fs/ext2/file.c",
      "new_id": "a5b3a5db31206f8f3c84781362f7c45e919ddf0e",
      "new_mode": 33188,
      "new_path": "fs/ext2/file.c"
    },
    {
      "type": "modify",
      "old_id": "d60b7099e2db3c649be7707924575891bd3d77d1",
      "old_mode": 33188,
      "old_path": "fs/ext2/namei.c",
      "new_id": "761fde807fc910f7961d494db363c341fa5f2baf",
      "new_mode": 33188,
      "new_path": "fs/ext2/namei.c"
    },
    {
      "type": "modify",
      "old_id": "a9fdd77d4b583ea539dfe890ac8f95090c29ac34",
      "old_mode": 33188,
      "old_path": "fs/ext3/acl.c",
      "new_id": "6c29bf0df04a0d0ed619a3b886e2d24847ab7a45",
      "new_mode": 33188,
      "new_path": "fs/ext3/acl.c"
    },
    {
      "type": "modify",
      "old_id": "597334626de93aee68631305d98a823e815058c4",
      "old_mode": 33188,
      "old_path": "fs/ext3/acl.h",
      "new_id": "dbc921e458c5599177fb86fc6e3fc95481cf06ab",
      "new_mode": 33188,
      "new_path": "fs/ext3/acl.h"
    },
    {
      "type": "modify",
      "old_id": "f55df0e61cbded50f25db7dc094c0ffc5a8dc7a3",
      "old_mode": 33188,
      "old_path": "fs/ext3/file.c",
      "new_id": "2be5b99097f13ad44f2db41ca680bfc82a3fa741",
      "new_mode": 33188,
      "new_path": "fs/ext3/file.c"
    },
    {
      "type": "modify",
      "old_id": "c095cf5640c79c4462ed0a60cd7aed5fd8c5472f",
      "old_mode": 33188,
      "old_path": "fs/ext3/namei.c",
      "new_id": "3b57230a17bbf9adad3748d790cc3376e7b3f9c2",
      "new_mode": 33188,
      "new_path": "fs/ext3/namei.c"
    },
    {
      "type": "modify",
      "old_id": "7b094d1a8d3e7ee839d77f0a457cf077f37b0623",
      "old_mode": 33188,
      "old_path": "fs/ext4/acl.c",
      "new_id": "dca2d1ded931eafbad76cda7cd9b0f07bf7fa6f8",
      "new_mode": 33188,
      "new_path": "fs/ext4/acl.c"
    },
    {
      "type": "modify",
      "old_id": "9d843d5deac402593b8b557e27c6ed25aafe401d",
      "old_mode": 33188,
      "old_path": "fs/ext4/acl.h",
      "new_id": "18cb39ed7c7bbb88dfb72f67150b40cf859e2a58",
      "new_mode": 33188,
      "new_path": "fs/ext4/acl.h"
    },
    {
      "type": "modify",
      "old_id": "ce766f974b1d49509941552983936e5e9ea62141",
      "old_mode": 33188,
      "old_path": "fs/ext4/file.c",
      "new_id": "e4095e988ebacb379a7784f72f52f78f51176ac4",
      "new_mode": 33188,
      "new_path": "fs/ext4/file.c"
    },
    {
      "type": "modify",
      "old_id": "707d605bf76985dfe0b873b8fccda9c6459682b1",
      "old_mode": 33188,
      "old_path": "fs/ext4/namei.c",
      "new_id": "8c9babac43dc941fa62ece2773f234044b8a5b7b",
      "new_mode": 33188,
      "new_path": "fs/ext4/namei.c"
    },
    {
      "type": "modify",
      "old_id": "ea19ca47d452a7a20a5cbbcf49841156fd445b48",
      "old_mode": 33188,
      "old_path": "fs/generic_acl.c",
      "new_id": "d5e33a077a67e7bb7cce426b5a4c5616e201c686",
      "new_mode": 33188,
      "new_path": "fs/generic_acl.c"
    },
    {
      "type": "modify",
      "old_id": "a2dd63c0c11a8465e517295161fdbbc3d8abcfcf",
      "old_mode": 33188,
      "old_path": "fs/gfs2/acl.c",
      "new_id": "884c9af0542fac0658cf5108d7869e5a08668e5a",
      "new_mode": 33188,
      "new_path": "fs/gfs2/acl.c"
    },
    {
      "type": "modify",
      "old_id": "b522b0cb39eaa12798649c2a8bd2b1e952a746f9",
      "old_mode": 33188,
      "old_path": "fs/gfs2/acl.h",
      "new_id": "0da38dc7efec24959a1ad656ff2cda8b561db1e0",
      "new_mode": 33188,
      "new_path": "fs/gfs2/acl.h"
    },
    {
      "type": "modify",
      "old_id": "0fb51a96eff0a8bb743fc83b2961a16465d8fa0c",
      "old_mode": 33188,
      "old_path": "fs/gfs2/inode.c",
      "new_id": "900cf986aadcc155d26028971f71bc6fa9a972ec",
      "new_mode": 33188,
      "new_path": "fs/gfs2/inode.c"
    },
    {
      "type": "modify",
      "old_id": "5783ed81171b80153ae15af3e8811afc92d02144",
      "old_mode": 33188,
      "old_path": "fs/jffs2/acl.c",
      "new_id": "27c511a1cf053f3dbbae46e76588af66f2bff7aa",
      "new_mode": 33188,
      "new_path": "fs/jffs2/acl.c"
    },
    {
      "type": "modify",
      "old_id": "9973073b9c4772bee9d3c3e36174c40fe2b8fba5",
      "old_mode": 33188,
      "old_path": "fs/jffs2/acl.h",
      "new_id": "b3421c78d9f85482be72d045fdde7194e2bb63d8",
      "new_mode": 33188,
      "new_path": "fs/jffs2/acl.h"
    },
    {
      "type": "modify",
      "old_id": "5f243cd63afc330e817f1dbfa1a52cb5eb83b33c",
      "old_mode": 33188,
      "old_path": "fs/jffs2/dir.c",
      "new_id": "9659b7c00468064cdc9e51be4d68d06229fc85eb",
      "new_mode": 33188,
      "new_path": "fs/jffs2/dir.c"
    },
    {
      "type": "modify",
      "old_id": "3989f7e09f7f649c96ad9e5737de886697c018b4",
      "old_mode": 33188,
      "old_path": "fs/jffs2/file.c",
      "new_id": "61e6723535b9d56f6cf727328ca7ae8d2a94090a",
      "new_mode": 33188,
      "new_path": "fs/jffs2/file.c"
    },
    {
      "type": "modify",
      "old_id": "b955626071c28acb8be9728b88399f8c9cdd7ab4",
      "old_mode": 33188,
      "old_path": "fs/jffs2/symlink.c",
      "new_id": "e3035afb18145e60add43a86640b1464fdac5aa4",
      "new_mode": 33188,
      "new_path": "fs/jffs2/symlink.c"
    },
    {
      "type": "modify",
      "old_id": "687a1ae42e3fc7dba2c8c61b110d80666c4d0ce2",
      "old_mode": 33188,
      "old_path": "fs/jfs/acl.c",
      "new_id": "b3a32caf2b4596d8ce0fa8a53c5084787088c4cc",
      "new_mode": 33188,
      "new_path": "fs/jfs/acl.c"
    },
    {
      "type": "modify",
      "old_id": "7527855b5cc6fc71ec5b613fbf022bd725843f20",
      "old_mode": 33188,
      "old_path": "fs/jfs/file.c",
      "new_id": "844f9460cb11344dc65253c79ef5ec0baf6fe576",
      "new_mode": 33188,
      "new_path": "fs/jfs/file.c"
    },
    {
      "type": "modify",
      "old_id": "54e07559878d12e2fe77c7b39e4f2114c7a3abdb",
      "old_mode": 33188,
      "old_path": "fs/jfs/jfs_acl.h",
      "new_id": "ad84fe50ca9e897362caa12101d63a590b56073f",
      "new_mode": 33188,
      "new_path": "fs/jfs/jfs_acl.h"
    },
    {
      "type": "modify",
      "old_id": "03787ef6a11826523abaa38fcfce77f57c8c199d",
      "old_mode": 33188,
      "old_path": "fs/jfs/namei.c",
      "new_id": "29b1f1a21142d773d9fe0ec783745cc82cd2a21b",
      "new_mode": 33188,
      "new_path": "fs/jfs/namei.c"
    },
    {
      "type": "modify",
      "old_id": "120efc76d3d06e3980db48c97199e9b604b5c94c",
      "old_mode": 33188,
      "old_path": "fs/namei.c",
      "new_id": "ec2e5656b444038e57e37e44ad491b8511c7df19",
      "new_mode": 33188,
      "new_path": "fs/namei.c"
    },
    {
      "type": "modify",
      "old_id": "480200e94e83a18a5e5e40e2924e8dd992838a2f",
      "old_mode": 33188,
      "old_path": "fs/ocfs2/acl.c",
      "new_id": "783c58d9daf11b92898676b2af2f55765cdd3caf",
      "new_mode": 33188,
      "new_path": "fs/ocfs2/acl.c"
    },
    {
      "type": "modify",
      "old_id": "5c5d31f05853175476cc0c9ed4c2460c67f40da9",
      "old_mode": 33188,
      "old_path": "fs/ocfs2/acl.h",
      "new_id": "071fbd380f2f52889fe4ddc459df3bf603d7629e",
      "new_mode": 33188,
      "new_path": "fs/ocfs2/acl.h"
    },
    {
      "type": "modify",
      "old_id": "0fc2bd34039dafd8d05e4bbe89885afbe11167af",
      "old_mode": 33188,
      "old_path": "fs/ocfs2/file.c",
      "new_id": "de4ea1af041b654f8f1b4f1a000f6492226f701f",
      "new_mode": 33188,
      "new_path": "fs/ocfs2/file.c"
    },
    {
      "type": "modify",
      "old_id": "33889dc52dd7ee4d856ab482b6ca13cf1b47bb46",
      "old_mode": 33188,
      "old_path": "fs/ocfs2/namei.c",
      "new_id": "53aa41ed7bf39d34d2ad9064813b3e6feeb57971",
      "new_mode": 33188,
      "new_path": "fs/ocfs2/namei.c"
    },
    {
      "type": "modify",
      "old_id": "0dd0266f97962c1e0c1b9640ab37d189afde6e3f",
      "old_mode": 33188,
      "old_path": "fs/posix_acl.c",
      "new_id": "a6227d219e93028f1bb0adc19002b3e12a89c8ef",
      "new_mode": 33188,
      "new_path": "fs/posix_acl.c"
    },
    {
      "type": "modify",
      "old_id": "c7156dc39ce7946b806e210dd0c4382cb1313185",
      "old_mode": 33188,
      "old_path": "fs/reiserfs/file.c",
      "new_id": "ace635053a3677fa40080fee79897fa8281c7889",
      "new_mode": 33188,
      "new_path": "fs/reiserfs/file.c"
    },
    {
      "type": "modify",
      "old_id": "551f1b79dbc479a810a849df2f9ce1a118ead575",
      "old_mode": 33188,
      "old_path": "fs/reiserfs/namei.c",
      "new_id": "ef392324bbf14f7b06de26ef30cc75461f7a1f84",
      "new_mode": 33188,
      "new_path": "fs/reiserfs/namei.c"
    },
    {
      "type": "modify",
      "old_id": "7ba083eb62bdb6dcc430a914156126d79c1571e8",
      "old_mode": 33188,
      "old_path": "fs/reiserfs/xattr.c",
      "new_id": "6bc346c160e71489ead30d54f41afc3e07ed23bd",
      "new_mode": 33188,
      "new_path": "fs/reiserfs/xattr.c"
    },
    {
      "type": "modify",
      "old_id": "2827bbd8366e02a8ce079a771fc5f9e29138cd01",
      "old_mode": 33188,
      "old_path": "fs/xfs/linux-2.6/xfs_acl.c",
      "new_id": "44ce516568045386e282eb03456835f87417a45a",
      "new_mode": 33188,
      "new_path": "fs/xfs/linux-2.6/xfs_acl.c"
    },
    {
      "type": "modify",
      "old_id": "77463dd55198fc849761cca3258be03c48327e9a",
      "old_mode": 33188,
      "old_path": "fs/xfs/linux-2.6/xfs_iops.c",
      "new_id": "6544c3236bc8dd51bff1c8d9935d1f979830553c",
      "new_mode": 33188,
      "new_path": "fs/xfs/linux-2.6/xfs_iops.c"
    },
    {
      "type": "modify",
      "old_id": "fda0708ef2ea82f455bb87dcc0aee00cdbc85632",
      "old_mode": 33188,
      "old_path": "fs/xfs/linux-2.6/xfs_trace.h",
      "new_id": "690fc7a7bd7283f78f24a35dc4e4d7ad10d0a65f",
      "new_mode": 33188,
      "new_path": "fs/xfs/linux-2.6/xfs_trace.h"
    },
    {
      "type": "modify",
      "old_id": "0135e2a669d78924c2e4261450ad5d17676371b8",
      "old_mode": 33188,
      "old_path": "fs/xfs/xfs_acl.h",
      "new_id": "2c656ef49473b0f429d15861dfde1e1c6eb0b292",
      "new_mode": 33188,
      "new_path": "fs/xfs/xfs_acl.h"
    },
    {
      "type": "modify",
      "old_id": "7a757a48a5c6acbb8b2bca1c9d52c3ad09d46d7a",
      "old_mode": 33188,
      "old_path": "include/linux/fs.h",
      "new_id": "12f84b30c3cabad04140ee6f5478dca37d85b629",
      "new_mode": 33188,
      "new_path": "include/linux/fs.h"
    },
    {
      "type": "modify",
      "old_id": "574bea4013b618d0816d2280ced3670fa4e75bd4",
      "old_mode": 33188,
      "old_path": "include/linux/generic_acl.h",
      "new_id": "b6d657544ef1afdbcfe2b867bbdaf0d91cfe749c",
      "new_mode": 33188,
      "new_path": "include/linux/generic_acl.h"
    },
    {
      "type": "modify",
      "old_id": "3fd8c4506bbb32ef4347784e7a4c529883348bcb",
      "old_mode": 33188,
      "old_path": "include/linux/reiserfs_acl.h",
      "new_id": "f096b80e73d8145dc35bcdb36f008d29a61f07d9",
      "new_mode": 33188,
      "new_path": "include/linux/reiserfs_acl.h"
    },
    {
      "type": "modify",
      "old_id": "57958c0e1d38319fff4a2f83a3e58250e64cc794",
      "old_mode": 33188,
      "old_path": "include/linux/reiserfs_xattr.h",
      "new_id": "c2b71473266efea1a172055d360c969b74f22680",
      "new_mode": 33188,
      "new_path": "include/linux/reiserfs_xattr.h"
    },
    {
      "type": "modify",
      "old_id": "fcedf5464eb79dba02ad485681fcc67530bdb720",
      "old_mode": 33188,
      "old_path": "mm/shmem.c",
      "new_id": "3e519798b522366b0d003501d67388261ee101e2",
      "new_mode": 33188,
      "new_path": "mm/shmem.c"
    }
  ]
}
