)]}'
{
  "log": [
    {
      "commit": "06effdbb49af5f6c7d20affaec74603914acc768",
      "tree": "6cb59cbb05565e6c23c8ecf5eb79618083f330f7",
      "parents": [
        "999448a8c0202d8c41711c92385323520644527b"
      ],
      "author": {
        "name": "Bernd Schubert",
        "email": "bernd.schubert@itwm.fraunhofer.de",
        "time": "Sun Mar 18 22:44:50 2012 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sun Mar 18 22:44:50 2012 -0400"
      },
      "message": "nfsd: vfs_llseek() with 32 or 64 bit offsets (hashes)\n\nUse 32-bit or 64-bit llseek() hashes for directory offsets depending on\nthe NFS version. NFSv2 gets 32-bit hashes only.\n\nNOTE: This patch got rather complex as Christoph asked to set the\nfilp-\u003ef_mode flag in the open call or immediatly after dentry_open()\nin nfsd_open() to avoid races.\nPersonally I still do not see a reason for that and in my opinion\nFMODE_32BITHASH/FMODE_64BITHASH flags could be set nfsd_readdir(), as it\nfollows directly after nfsd_open() without a chance of races.\n\nSigned-off-by: Bernd Schubert \u003cbernd.schubert@itwm.fraunhofer.de\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nAcked-by: J. Bruce Fields\u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "175a4eb7ea531cdbf6d574f5d5ba9aa0f5e8ed13",
      "tree": "841812b19b8a5546e472be321b32ca58528b76c3",
      "parents": [
        "030a8ba48fa6fa2a1304bab5b0f49360613c4af2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 26 03:30:54 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:55:10 2012 -0500"
      },
      "message": "fs: propagate umode_t, misc bits\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bad0dcffc21d17a07dbb83a2bf764f35a57feba5",
      "tree": "bb2ed8685bafc927df70307ba13df53469000255",
      "parents": [
        "a561be7100cd610bd2e082f3211c1dfb45835817"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Nov 23 12:03:18 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:52:35 2012 -0500"
      },
      "message": "new helpers: fh_{want,drop}_write()\n\nA bunch of places in nfsd does mnt_{want,drop}_write on vfsmount of\nexport of given fhandle.  Switched to obvious inlined helpers...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "856121b2e83bd64bffdc8de449d24c9295e92ff3",
      "tree": "d60a777368fa48120a878407dd7abdcc780d2eba",
      "parents": [
        "4cdc951b8611de4ce25e35c9fb8c0656150c9245"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Oct 13 11:37:11 2011 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Mon Oct 17 17:50:08 2011 -0400"
      },
      "message": "nfsd4: warn on open failure after create\n\nIf we create the object and then return failure to the client, we\u0027re\nleft with an unexpected file in the filesystem.\n\nI\u0027m trying to eliminate such cases but not 100% sure I have so an\nassertion might be helpful for now.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "8e82fa8fdcd1271d45bf6a5195801c706e190d69",
      "tree": "a34ee639d4f027387e22a7c2550115f6f207a6b7",
      "parents": [
        "a043226bc140a2c1dde162246d68a67e5043e6b2"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Aug 25 14:23:39 2011 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Sat Aug 27 14:20:21 2011 -0400"
      },
      "message": "nfsd: prettify NFSD_MAY_* flag definitions\n\nAcked-by: Jim Rees \u003crees@umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "a043226bc140a2c1dde162246d68a67e5043e6b2",
      "tree": "8d2f2a52835d37150c0cae42787903793e57bd86",
      "parents": [
        "c10bd39d800d42adef55ed9016f802677cd0ab5f"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Aug 25 10:48:39 2011 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Sat Aug 27 14:20:20 2011 -0400"
      },
      "message": "nfsd4: permit read opens of executable-only files\n\nA client that wants to execute a file must be able to read it.  Read\nopens over nfs are therefore implicitly allowed for executable files\neven when those files are not readable.\n\nNFSv2/v3 get this right by using a passed-in NFSD_MAY_OWNER_OVERRIDE on\nread requests, but NFSv4 has gotten this wrong ever since\ndc730e173785e29b297aa605786c94adaffe2544 \"nfsd4: fix owner-override on\nopen\", when we realized that the file owner shouldn\u0027t override\npermissions on non-reclaim NFSv4 opens.\n\nSo we can\u0027t use NFSD_MAY_OWNER_OVERRIDE to tell nfsd_permission to allow\nreads of executable files.\n\nSo, do the same thing we do whenever we encounter another weird NFS\npermission nit: define yet another NFSD_MAY_* flag.\n\nThe industry\u0027s future standardization on 128-bit processors will be\nmotivated primarily by the need for integers with enough bits for all\nthe NFSD_MAY_* flags.\n\nReported-by: Leonardo Borda \u003cleonardoborda@gmail.com\u003e\nCc: stable@kernel.org\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "ac6721a13e5b1a90728e790600f827a5e5f5da2f",
      "tree": "f39f1faaaa4059956d8fde5fbb29fc5500d1e513",
      "parents": [
        "68d93184352f2e723f135b0a9bad93b58f9d120b"
      ],
      "author": {
        "name": "Mi Jinlong",
        "email": "mijinlong@cn.fujitsu.com",
        "time": "Wed Apr 20 17:06:25 2011 +0800"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Apr 29 20:47:52 2011 -0400"
      },
      "message": "nfsd41: make sure nfs server process OPEN with EXCLUSIVE4_1 correctly\n\nThe NFS server uses nfsd_create_v3 to handle EXCLUSIVE4_1 opens, but\nthat function is not prepared to handle them.\n\nRename nfsd_create_v3() to do_nfsd_create(), and add handling of\nEXCLUSIVE4_1.\n\nSigned-off-by: Mi Jinlong \u003cmijinlong@cn.fujitsu.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "204f4ce75434c3453907813f8a819d4cf2a5728f",
      "tree": "779f8796bda32557b48b3ee5f7a57bc45fff90fb",
      "parents": [
        "aea93397db4b39c9d15443a0e7cc9a380ba990c6"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Apr 08 16:32:54 2011 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Mon Apr 11 08:42:20 2011 -0400"
      },
      "message": "nfsd4: allow fh_verify caller to skip pseudoflavor checks\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "aea93397db4b39c9d15443a0e7cc9a380ba990c6",
      "tree": "fe98a2b9f48b814c0d911d5ff1d700a7465f40d3",
      "parents": [
        "8985ef0b8af895c3b85a8c1b7108e0169fcbd20b"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Sun Apr 10 10:35:12 2011 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Mon Apr 11 08:42:03 2011 -0400"
      },
      "message": "nfsd: distinguish functions of NFSD_MAY_* flags\n\nMost of the NFSD_MAY_* flags actually request permissions, but over the\nyears we\u0027ve accreted a few that modify the behavior of the permission or\nopen code in other ways.\n\nDistinguish the two cases a little more.  In particular, allow the\nshortcut at the start of nfsd_permission to ignore the\nnon-permission-requesting bits.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "039a87ca536a85bc169ce092e44bd57adfa1f563",
      "tree": "015ddd79fb489241b0171ce3c863353ae6c03522",
      "parents": [
        "69049961014992f50b10d6c3cd3cd172d4aae5ac"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Jul 30 11:33:32 2010 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Jul 30 12:54:54 2010 -0400"
      },
      "message": "nfsd: minor nfsd read api cleanup\n\nChristoph points that the NFSv2/v3 callers know which case they want\nhere, so we may as well just call the file\u003dNULL case directly instead of\nmaking this conditional.\n\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "91885258e8343bb65c08f668d7e6c16563eb4284",
      "tree": "3178dabadca5342d63cc1d20ea843539a180aa94",
      "parents": [
        "61f8603d93fa0b0e2f73be7a4f048696417a24a3"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Fri Mar 19 08:06:28 2010 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Mar 22 15:37:53 2010 -0400"
      },
      "message": "nfsd: don\u0027t break lease while servicing a COMMIT\n\nThis is the second attempt to fix the problem whereby a COMMIT call\ncauses a lease break and triggers a possible deadlock.\n\nThe problem is that nfsd attempts to break a lease on a COMMIT call.\nThis triggers a delegation recall if the lease is held for a delegation.\nIf the client is the one holding the delegation and it\u0027s the same one on\nwhich it\u0027s issuing the COMMIT, then it can\u0027t return that delegation\nuntil the COMMIT is complete. But, nfsd won\u0027t complete the COMMIT until\nthe delegation is returned. The client and server are essentially\ndeadlocked until the state is marked bad (due to the client not\nresponding on the callback channel).\n\nThe first patch attempted to deal with this by eliminating the open of\nthe file altogether and simply had nfsd_commit pass a NULL file pointer\nto the vfs_fsync_range. That would conflict with some work in progress\nby Christoph Hellwig to clean up the fsync interface, so this patch\ntakes a different approach.\n\nThis declares a new NFSD_MAY_NOT_BREAK_LEASE access flag that indicates\nto nfsd_open that it should not break any leases when opening the file,\nand has nfsd_commit set that flag on the nfsd_open call.\n\nFor now, this patch leaves nfsd_commit opening the file with write\naccess since I\u0027m not clear on what sort of access would be more\nappropriate.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nCc: stable@kernel.org\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "1557aca7904ed6fadd22cdc3364754070bb3d3c3",
      "tree": "97af309e4cff7e9fc2cb9d90aeceff8404c2c47f",
      "parents": [
        "c7af6b0895229bd080b86afc91302b66f6df0378"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Dec 04 19:36:06 2009 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 15 15:01:46 2009 -0500"
      },
      "message": "nfsd: move most of nfsfh.h to fs/nfsd\n\nMost of this can be trivially moved to a private header as well.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "3227fa41abc191384fa81b3bcf52aa7fccb31536",
      "tree": "f50512f2feecfc2fde13b0843cbbfb87728e2442",
      "parents": [
        "82ead7fe41da960ed80652d13d5a1072f85f5aca"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Sun Oct 25 21:43:01 2009 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Dec 15 14:07:24 2009 -0500"
      },
      "message": "nfsd: filter readdir results in V4ROOT case\n\nAs with lookup, we treat every boject as a mountpoint and pretend it\ndoesn\u0027t exist if it isn\u0027t exported.\n\nThe preexisting code here is confusing, but I haven\u0027t yet figured out\nhow to make it clearer.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "0a3adadee42f2865bb867b8c5f4955b7def9baad",
      "tree": "de98be9152faba8ea38bae24a7f5cce33ae99148",
      "parents": [
        "ea4878a24d7e6a467d369b962bab95bd6a12cbe0"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Nov 04 18:12:35 2009 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Nov 13 13:23:02 2009 -0500"
      },
      "message": "nfsd: make fs/nfsd/vfs.h for common includes\n\nNone of this stuff is used outside nfsd, so move it out of the common\nlinux include directory.\n\nActually, probably none of the stuff in include/linux/nfsd/nfsd.h really\nbelongs there, so later we may remove that file entirely.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    }
  ]
}
