)]}'
{
  "log": [
    {
      "commit": "541010e4b8921cd781ff02ae68028501457045b6",
      "tree": "58bd529d4c6e69899a0aa20afa2d7f1c23326417",
      "parents": [
        "e457f790d8b05977853aa238bbc667b3bb375671",
        "5e7fc436426b1f9e106f511a049de91c82ec2c53"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 16:07:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 16:07:40 2007 -0700"
      },
      "message": "Merge branch \u0027locks\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027locks\u0027 of git://linux-nfs.org/~bfields/linux:\n  nfsd: remove IS_ISMNDLCK macro\n  Rework /proc/locks via seq_files and seq_list helpers\n  fs/locks.c: use list_for_each_entry() instead of list_for_each()\n  NFS: clean up explicit check for mandatory locks\n  AFS: clean up explicit check for mandatory locks\n  9PFS: clean up explicit check for mandatory locks\n  GFS2: clean up explicit check for mandatory locks\n  Cleanup macros for distinguishing mandatory locks\n  Documentation: move locks.txt in filesystems/\n  locks: add warning about mandatory locking races\n  Documentation: move mandatory locking documentation to filesystems/\n  locks: Fix potential OOPS in generic_setlease()\n  Use list_first_entry in locks_wake_up_blocks\n  locks: fix flock_lock_file() comment\n  Memory shortage can result in inconsistent flocks state\n  locks: kill redundant local variable\n  locks: reverse order of posix_locks_conflict() arguments\n"
    },
    {
      "commit": "f4921aff5b174349bc36551f142a5dbac782ea3f",
      "tree": "bdff8ca1531977ad1d04ac8d70e10f8dfbb26c38",
      "parents": [
        "419217cb1d0266f62cbea6cdc6b1d1324350bc34",
        "05c88babab957dfd63bd351b25042d80bd854dd0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 10:46:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 10:47:35 2007 -0700"
      },
      "message": "Merge git://git.linux-nfs.org/pub/linux/nfs-2.6\n\n* git://git.linux-nfs.org/pub/linux/nfs-2.6: (131 commits)\n  NFSv4: Fix a typo in nfs_inode_reclaim_delegation\n  NFS: Add a boot parameter to disable 64 bit inode numbers\n  NFS: nfs_refresh_inode should clear cache_validity flags on success\n  NFS: Fix a connectathon regression in NFSv3 and NFSv4\n  NFS: Use nfs_refresh_inode() in ops that aren\u0027t expected to change the inode\n  SUNRPC: Don\u0027t call xprt_release in call refresh\n  SUNRPC: Don\u0027t call xprt_release() if call_allocate fails\n  SUNRPC: Fix buggy UDP transmission\n  [23/37] Clean up duplicate includes in\n  [2.6 patch] net/sunrpc/rpcb_clnt.c: make struct rpcb_program static\n  SUNRPC: Use correct type in buffer length calculations\n  SUNRPC: Fix default hostname created in rpc_create()\n  nfs: add server port to rpc_pipe info file\n  NFS: Get rid of some obsolete macros\n  NFS: Simplify filehandle revalidation\n  NFS: Ensure that nfs_link() returns a hashed dentry\n  NFS: Be strict about dentry revalidation when doing exclusive create\n  NFS: Don\u0027t zap the readdir caches upon error\n  NFS: Remove the redundant nfs_reval_fsid()\n  NFSv3: Always use directory post-op attributes in nfs3_proc_lookup\n  ...\n\nFix up trivial conflict due to sock_owned_by_user() cleanup manually in\nnet/sunrpc/xprtsock.c\n"
    },
    {
      "commit": "5e7fc436426b1f9e106f511a049de91c82ec2c53",
      "tree": "e81390d24654d62a49091db2ba8084c08b61e9e3",
      "parents": [
        "7f8ada98d9edd83d6ebd01e431e15b024a4a3dc4"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 02 14:18:12 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:32:46 2007 -0400"
      },
      "message": "nfsd: remove IS_ISMNDLCK macro\n\nThis macro is only used in one place; in this place it seems simpler to\nput open-code it and move the comment to where it\u0027s used.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "a16877ca9cec211708a161057a7cbfbf2cbc3a53",
      "tree": "a114bfe588af58047b1eb2aa1f57ac4b890c01a6",
      "parents": [
        "98257af5a2ad0c5b502ebd07094d9fd8ce87acef"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Oct 01 14:41:11 2007 -0700"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:32:46 2007 -0400"
      },
      "message": "Cleanup macros for distinguishing mandatory locks\n\nThe combination of S_ISGID bit set and S_IXGRP bit unset is used to mark the\ninode as \"mandatory lockable\" and there\u0027s a macro for this check called\nMANDATORY_LOCK(inode).  However, fs/locks.c and some filesystems still perform\nthe explicit i_mode checking.  Besides, Andrew pointed out, that this macro is\nbuggy itself, as it dereferences the inode arg twice.\n\nConvert this macro into static inline function and switch its users to it,\nmaking the code shorter and more readable.\n\nThe __mandatory_lock() helper is to be used in places where the IS_MANDLOCK()\nfor superblock is already known to be true.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\nCc: Ron Minnich \u003crminnich@sandia.gov\u003e\nCc: Latchesar Ionkov \u003clucho@ionkov.net\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a16e92edcd0a2846455a30823e1bac964e743baa",
      "tree": "50893238dcccb1bcfc6c1160c3db4887d2f08eea",
      "parents": [
        "cfdcad4da1903720b9b8c1f176e46a0ebf546be3"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Sep 28 16:45:51 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:57 2007 -0400"
      },
      "message": "knfsd: query filesystem for NFSv4 getattr of FATTR4_MAXNAME\n\nWithout this we always return 2^32-1 as the the maximum namelength.\n\nThanks to Andreas Gruenbacher for bug report and testing.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nCc: Andreas Gruenbacher \u003cagruen@suse.de\u003e\n"
    },
    {
      "commit": "cfdcad4da1903720b9b8c1f176e46a0ebf546be3",
      "tree": "8c8b12074a5d197c427c4907f41492d556da2dd5",
      "parents": [
        "1b1a9b3163a83f52ea2ac333846d4dfd2c4edd90"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Sep 12 20:35:15 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:57 2007 -0400"
      },
      "message": "knfsd: nfsv4 delegation recall should take reference on client\n\nIt\u0027s not enough to take a reference on the delegation object itself; we\nneed to ensure that the rpc_client won\u0027t go away just as we\u0027re about to\nmake an rpc call.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "1b1a9b3163a83f52ea2ac333846d4dfd2c4edd90",
      "tree": "bfaaa512b4efa08bed800330f654ba9637dd2f58",
      "parents": [
        "0272e1fd9f4fa8a43357c168e081744f99e67195"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Sep 12 08:43:59 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:57 2007 -0400"
      },
      "message": "knfsd: don\u0027t shutdown callbacks until nfsv4 client is freed\n\nIf a callback still holds a reference on the client, then it may be\nabout to perform an rpc call, so it isn\u0027t safe to call rpc_shutdown().\n(Though rpc_shutdown() does wait for any outstanding rpc\u0027s, it can\u0027t\nknow if a new rpc is about to be issued with that client.)\n\nSo, wait to shutdown the rpc_client until the reference count on the\nclient has gone to zero.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "0272e1fd9f4fa8a43357c168e081744f99e67195",
      "tree": "c56c6469fd2d220e317cf7ab7215e538dca5bad3",
      "parents": [
        "354ecbb9dd89c21708b319da8c4ffd3dd6e6811d"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Sep 12 18:56:12 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:57 2007 -0400"
      },
      "message": "knfsd: let nfsd manage timing out its own leases\n\nCurrently there\u0027s a race that can cause an oops in generic_setlease.\n\n(In detail: nfsd, when it removes a lease, does so by calling\nvfs_setlease() with F_UNLCK and a pointer to the fl_flock field, which\nin turn points to nfsd\u0027s existing lease; but the first thing the\nsetlease code does is call time_out_leases().  If the lease happens to\nalready be beyond the lease break time, that will free the lease and (in\nnfsd\u0027s release_private callback) set fl_flock to NULL, leading to a NULL\ndeference soon after in vfs_setlease().)\n\nThere are probably other things to fix here too, but it seems inherently\nracy to allow either locks.c or nfsd to time out this lease.  Instead\njust set the fl_break_time to 0 (preventing locks.c from ever timing out\nthis lock) and leave it up to nfsd\u0027s laundromat thread to deal with it.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "40ee5dc6af351c1b3de245abed4bd8e6a4a5646a",
      "tree": "5558d5f2b3df23e745b152c439e731a7aeff7ab6",
      "parents": [
        "21fcd02be34f73bbc94db267b4db6ccd7332923d"
      ],
      "author": {
        "name": "Peter Staubach",
        "email": "staubach@redhat.com",
        "time": "Thu Aug 16 12:10:07 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:57 2007 -0400"
      },
      "message": "knfsd: 64 bit ino support for NFS server\n\nModify the NFS server code to support 64 bit ino\u0027s, as\nappropriate for the system and the NFS protocol version.\n\nThe gist of the changes is to query the underlying file system\nfor attributes and not just to use the cached attributes in the\ninode.  For this specific purpose, the inode only contains an\nino field which unsigned long, which is large enough on 64 bit\nplatforms, but is not large enough on 32 bit platforms.\n\nI haven\u0027t been able to find any reason why -\u003egetattr can\u0027t be called\nwhile i_mutex.  The specification indicates that i_mutex is not\nrequired to be held in order to invoke -\u003egetattr, but it doesn\u0027t say\nthat i_mutex can\u0027t be held while invoking -\u003egetattr.\n\nI also haven\u0027t come to any conclusions regarding the value of\nlease_get_mtime() and whether it should or should not be invoked\nby fill_post_wcc() too.  I chose not to change this because I\nthought that it was safer to leave well enough alone.  If we\ndecide to make a change, it can be done separately.\n\nSigned-off-by: Peter Staubach \u003cstaubach@redhat.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "c175b83c4c4be72535c5c12abc155e29a08323a0",
      "tree": "10f0366f87ca31ba30e7d7edeabf5cdac4097f9d",
      "parents": [
        "246d95ba051101e515670a1cbe2907a88d360b88"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Thu Aug 09 18:34:32 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:57 2007 -0400"
      },
      "message": "knfsd: remove code duplication in nfsd4_setclientid()\n\nEach branch of this if-then-else has a bunch of duplicated code that we\ncould just put at the end.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "246d95ba051101e515670a1cbe2907a88d360b88",
      "tree": "d4d17a1e4b0d9e9e21f82d01c893707b99a68531",
      "parents": [
        "dd4877bfb6f09cb4a294b459b354c8fc8fa66904"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Aug 09 00:53:50 2007 -0700"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:57 2007 -0400"
      },
      "message": "nfsd warning fix\n\nfs/nfsd/nfsctl.c: In function \u0027write_filehandle\u0027:\nfs/nfsd/nfsctl.c:301: warning: \u0027maxsize\u0027 may be used uninitialized in this function\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by:  Neil Brown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "dd4877bfb6f09cb4a294b459b354c8fc8fa66904",
      "tree": "d4f5f199bd0fa481b9b41c55715835272e07b482",
      "parents": [
        "e8ff2a8453cedf38d6d7a0528cb9c308066a3e3e"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@fieldses.org",
        "time": "Tue Oct 24 18:33:17 2006 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:57 2007 -0400"
      },
      "message": "knfsd: fix callback rpc cred\n\nIt doesn\u0027t make sense to make the callback with credentials that the\nclient made the setclientid with.  Instead the spec requires that the\ncallback occur with the credentials the client authenticated *to*.\nIt probably doesn\u0027t matter what we use for auth_unix, and some more\ninfrastructure will be needed for auth_gss, so let\u0027s just remove the\ncred lookup for now.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nAcked-by:  Neil Brown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "e8ff2a8453cedf38d6d7a0528cb9c308066a3e3e",
      "tree": "6987fee75558983f92cbba7385e39acc44f7555e",
      "parents": [
        "2b47eece1fa519a81c8b802af77a8b8aa44baa10"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Aug 01 15:30:59 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:56 2007 -0400"
      },
      "message": "knfsd: move nfsv4 slab creation/destruction to module init/exit\n\nWe have some slabs that the nfs4 server uses to store state objects.\nWe\u0027re currently creating and destroying those slabs whenever the server\nis brought up or down.  That seems excessive; may as well just do that\nin module initialization and exit.\n\nAlso add some minor header cleanup.  (Thanks to Andrew Morton for that\nand a compile fix.)\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by:  Neil Brown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "2b47eece1fa519a81c8b802af77a8b8aa44baa10",
      "tree": "b06263ca61a05cfaca7311bcfe542a44502c817c",
      "parents": [
        "c9b6cbe56d3ac471e6cd72a59ec9e324b3417016"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Jul 27 18:06:50 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:56 2007 -0400"
      },
      "message": "knfsd: spawn kernel thread to probe callback channel\n\nWe want to allow gss on the callback channel, so people using krb5 can\nstill get the benefits of delegations.\n\nBut looking up the rpc credential can take some time in that case.  And\nwe shouldn\u0027t delay the response to setclientid_confirm while we wait.\n\nIt may be inefficient, but for now the simplest solution is just to\nspawn a new thread as necessary for the purpose.\n\n(Thanks to Adrian Bunk for catching a missing static here.)\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nCc: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "c9b6cbe56d3ac471e6cd72a59ec9e324b3417016",
      "tree": "15d77bd55682cb34678eb6f33053efaab1f81cc5",
      "parents": [
        "2fdada03b3876ab9f84ede160f187e888cafefb4"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Jul 27 16:36:45 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:56 2007 -0400"
      },
      "message": "knfsd: nfs4 name-\u003eid mapping not correctly parsing negative downcall\n\nNote that qword_get() returns length or -1, not an -ERROR.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by:  Neil Brown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "2fdada03b3876ab9f84ede160f187e888cafefb4",
      "tree": "4fb687764c83d63083261f079695627003c22dd9",
      "parents": [
        "599e0a2290b22d959c7748bda83da3614187a299"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Jul 27 16:10:37 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:56 2007 -0400"
      },
      "message": "knfsd: demote some printk()s to dprintk()s\n\nTo quote a recent mail from Andrew Morton:\n\n\tLook: if there\u0027s a way in which an unprivileged user can trigger\n\ta printk we fix it, end of story.\n\nOK.  I assume that goes double for printk()s that might be triggered by\nrandom hosts on the internet.  So, disable some printk()s that look like\nthey could be triggered by malfunctioning or malicious clients.  For\nnow, just downgrade them to dprintk()s.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by:  Neil Brown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "599e0a2290b22d959c7748bda83da3614187a299",
      "tree": "3bd93f935dd4a3b41535ae8f41c8a273337c809f",
      "parents": [
        "3b398f0ef8db6a9bb431474afd871f4295203d2d"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Thu Jul 26 17:04:54 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:56 2007 -0400"
      },
      "message": "knfsd: cleanup of nfsd4 cmp_* functions\n\nBenny Halevy suggested renaming cmp_* to same_* to make the meaning of\nthe return value clearer.\n\nFix some nearby style deviations while we\u0027re at it, including a small\nswath of creative indentation in nfs4_preprocess_seqid_op().\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by:  Neil Brown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "3b398f0ef8db6a9bb431474afd871f4295203d2d",
      "tree": "6ad8d3729f260ad1acde039ef81d7ddc03125097",
      "parents": [
        "9c85fca56b569dfba1f10ae12ce425c0e678df83"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 24 21:38:18 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:56 2007 -0400"
      },
      "message": "knfsd: delete code made redundant by map_new_errors\n\nI moved this check into map_new_errors, but forgot to delete the\noriginal.  Oops.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by:  Neil Brown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "9c85fca56b569dfba1f10ae12ce425c0e678df83",
      "tree": "588274c4216818f671ac47d804e830ae10f0d6e5",
      "parents": [
        "dca1dd30ce0a6234acc751bb90efba1b49079669"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Mar 07 15:26:25 2007 +0000"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:56 2007 -0400"
      },
      "message": "nfsd: fix horrible indentation in nfsd_setattr\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nAcked-by:  Neil Brown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "45457e0916f8253691a44d3574949b6d3d5872b1",
      "tree": "60774cfc75cf073280b39ad82f095704c4b221af",
      "parents": [
        "bbf25010f1a6b761914430f5fca081ec8c7accd1"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Jun 22 17:26:32 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:54 2007 -0400"
      },
      "message": "nfsd: tone down inaccurate dprintk\n\nThe nfserr_dropit happens routinely on upcalls (so a kmalloc failure is\nalmost never the actual cause), but I occasionally get a complant from\nsome tester that\u0027s worried because they ran across this message after\nturning on debugging to research some unrelated problem.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by:  Neil Brown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "817cb9d43d4c330f9fc023d96e5beaa1abe8c4b7",
      "tree": "bf1337ed1d37a9408aa07c3b7ebfa3c376d79070",
      "parents": [
        "e159a08b6ab14e255536fddae75d448395295c6f"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:01:20 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:14 2007 -0400"
      },
      "message": "NFSD: Convert printk\u0027s to dprintk\u0027s in NFSD\u0027s nfs4xdr\n\nDue to recent edict to remove or replace printk\u0027s that can flood the system\nlog.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b8da0d1c27f144bce999c653467106f3f0d5a308",
      "tree": "eedc2f54d8dd6768b953b4d9e1b6075b62fc21ad",
      "parents": [
        "a1033be72cdb053e182bb41e302a1c11e72b68bb"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@suse.de",
        "time": "Wed Sep 05 17:22:13 2007 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Sep 10 18:57:47 2007 -0700"
      },
      "message": "knfsd: Validate filehandle type in fsid_source\n\nfsid_source decided where to get the \u0027fsid\u0027 number to\nreturn for a GETATTR based on the type of filehandle.\nIt can be from the device, from the fsid, or from the\nUUID.\n\nIt is possible for the filehandle to be inconsistent\nwith the export information, so make sure the export information\nactually has the info implied by the value returned by\nfsid_source.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"Luiz Fernando N. Capitulino\" \u003clcapitulino@gmail.com\u003e\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a1033be72cdb053e182bb41e302a1c11e72b68bb",
      "tree": "9e0bd5906c957d290d3291de3543a430f9864283",
      "parents": [
        "7d94143291e4e625e2bc3b1ebdc7143ee7a9a2f1"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@suse.de",
        "time": "Wed Sep 05 17:22:12 2007 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Sep 10 18:57:47 2007 -0700"
      },
      "message": "knfsd: Fixed problem with NFS exporting directories which are mounted on.\n\nRecent changes in NFSd cause a directory which is mounted-on\nto not appear properly when the filesystem containing it is exported.\n\n*exp_get* now returns -ENOENT rather than NULL and when\n  commit 5d3dbbeaf56d0365ac6b5c0a0da0bd31cc4781e1\nremoved the NULL checks, it didn\u0027t add a check for -ENOENT.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4a4b88317aa02c82e66e37debb764d4ff3eedd70",
      "tree": "4a4a2157f5b4117d28c38cb290dd1c804246ffb1",
      "parents": [
        "0a725fc4d3bfc4734164863d6c50208b109ca5c7"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 31 00:37:53 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 31 15:39:38 2007 -0700"
      },
      "message": "knfsd: eliminate unnecessary -ENOENT returns on export downcalls\n\nA succesful downcall with a negative result (which indicates that the given\nfilesystem is not exported to the given user) should not return an error.\n\nCurrently mountd is depending on stdio to write these downcalls.  With some\nversions of libc this appears to cause subsequent writes to attempt to write\nall accumulated data (for which writes previously failed) along with any new\ndata.  This can prevent the kernel from seeing responses to later downcalls.\nSymptoms will be that nfsd fails to respond to certain requests.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0a725fc4d3bfc4734164863d6c50208b109ca5c7",
      "tree": "d0b8c618a5af484b88c08dc04643fa05e1bcf144",
      "parents": [
        "749997e5127a1df6b68a10c686af3f5b819a41a2"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 31 00:37:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 31 15:39:38 2007 -0700"
      },
      "message": "nfsd4: idmap upcalls should use unsigned uid and gid\n\nWe shouldn\u0027t be using negative uid\u0027s and gid\u0027s in the idmap upcalls.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "749997e5127a1df6b68a10c686af3f5b819a41a2",
      "tree": "73ca2d3c6b90de172c777dec052cfa83898e6db9",
      "parents": [
        "421cee293587081efef165b137514884b8472565"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jul 31 00:37:51 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 31 15:39:38 2007 -0700"
      },
      "message": "knfsd: set the response bitmask for NFS4_CREATE_EXCLUSIVE\n\nRFC 3530 says:\n\n If the server uses an attribute to store the exclusive create verifier, it\n will signify which attribute by setting the appropriate bit in the attribute\n mask that is returned in the results.\n\nLinux uses the atime and mtime to store the verifier, but sends a zeroed out\nbitmask back to the client.  This patch makes sure that we set the correct\nbits in the bitmask in this situation.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ca5c8cde93d65db3139604ca6b91bf8ff3f775e2",
      "tree": "d9ce882caf6b2b1d578829481e0895d6cd5b02aa",
      "parents": [
        "582ee43dad8e411513a74f2d801255dcffc6d29e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Jul 26 17:33:49 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 26 11:11:56 2007 -0700"
      },
      "message": "lockd and nfsd endianness annotation fixes\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e63516c826454c964eefdd24d33e188064c6679",
      "tree": "3a22bd550f2febb703af566b4c41a952d67aa8fd",
      "parents": [
        "601e625587bf92c9f370d74a15c4e43bc6468f9f"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Sat Jul 21 04:37:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Jul 21 17:49:14 2007 -0700"
      },
      "message": "knfsd: fix typo in export display, print uid and gid as unsigned\n\nFor display purposes, treat uid\u0027s and gid\u0027s as unsigned ints for now.\nAlso fix a typo.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "20c2df83d25c6a95affe6157a4c9cac4cf5ffaac",
      "tree": "415c4453d2b17a50abe7a3e515177e1fa337bd67",
      "parents": [
        "64fb98fc40738ae1a98bcea9ca3145b89fb71524"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jul 20 10:11:58 2007 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jul 20 10:11:58 2007 +0900"
      },
      "message": "mm: Remove slab destructors from kmem_cache_create().\n\nSlab destructors were no longer supported after Christoph\u0027s\nc59def9f222d44bb7e2f0a559f2906191a0862d7 change. They\u0027ve been\nBUGs for both slab and slub, and slob never supported them\neither.\n\nThis rips out support for the dtor pointer from kmem_cache_create()\ncompletely and fixes up every single callsite in the kernel (there were\nabout 224, not including the slab allocator definitions themselves,\nor the documentation references).\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "c7d51402d2a64c5b96531f9900bb368020ebbbbb",
      "tree": "b870f7352ceb21799df933a31662b748edcad1e6",
      "parents": [
        "e22841c637dc8b308b40f59d64a5b6683d458ab7"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Thu Jul 19 01:49:20 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:52 2007 -0700"
      },
      "message": "knfsd: clean up EX_RDONLY\n\nShare a little common code, reverse the arguments for consistency, drop the\nunnecessary \"inline\", and lowercase the name.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e22841c637dc8b308b40f59d64a5b6683d458ab7",
      "tree": "4a5d32f430c8123a71a1731eb6b94f807bb435f4",
      "parents": [
        "5d3dbbeaf56d0365ac6b5c0a0da0bd31cc4781e1"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Thu Jul 19 01:49:20 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:52 2007 -0700"
      },
      "message": "knfsd: move EX_RDONLY out of header\n\nEX_RDONLY is only called in one place; just put it there.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5d3dbbeaf56d0365ac6b5c0a0da0bd31cc4781e1",
      "tree": "aa47031138ddb94f8a725ab525a46bffd466a479",
      "parents": [
        "9a25b96c1f6e1a3c85c9524f3046c7c75d8fecc7"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Thu Jul 19 01:49:19 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:52 2007 -0700"
      },
      "message": "nfsd: remove unnecessary NULL checks from nfsd_cross_mnt\n\nWe can now assume that rqst_exp_get_by_name() does not return NULL; so clean\nup some unnecessary checks.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9a25b96c1f6e1a3c85c9524f3046c7c75d8fecc7",
      "tree": "aacaf5f3616f7e24a6fe66b5df136b521ccaa557",
      "parents": [
        "a280df32db291f41b3922ac218674be526af5b9b"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Thu Jul 19 01:49:18 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:52 2007 -0700"
      },
      "message": "nfsd: return errors, not NULL, from export functions\n\nI converted the various export-returning functions to return -ENOENT instead\nof NULL, but missed a few cases.\n\nThis particular case could cause actual bugs in the case of a krb5 client that\ndoesn\u0027t match any ip-based client and that is trying to access a filesystem\nnot exported to krb5 clients.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a280df32db291f41b3922ac218674be526af5b9b",
      "tree": "133e80664abd69ad14b3951112d2916e26f51680",
      "parents": [
        "d688abf50bd5a30d2c44dea2a72dd59052cd3cce"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Thu Jul 19 01:49:18 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:52 2007 -0700"
      },
      "message": "nfsd: fix possible read-ahead cache and export table corruption\n\nThe value of nperbucket calculated here is too small--we should be rounding up\ninstead of down--with the result that the index j in the following loop can\noverflow the raparm_hash array.  At least in my case, the next thing in memory\nturns out to be export_table, so the symptoms I see are crashes caused by the\nappearance of four zeroed-out export entries in the first bucket of the hash\ntable of exports (which were actually entries in the readahead cache, a\npointer to which had been written to the export table in this initialization\ncode).\n\nIt looks like the bug was probably introduced with commit\nfce1456a19f5c08b688c29f00ef90fdfa074c79b (\"knfsd: make the readahead params\ncache SMP-friendly\").\n\nCc: \u003cstable@kernel.org\u003e\nCc: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by: NeilBrown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a9933cea7a1d80dd9efae9f1acd857f5dce742b9",
      "tree": "d931351589579ce141110350de9ff11154328399",
      "parents": [
        "6d5e8b05caf074ae5676ad9aaf92e381226a14a7"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Thu Jun 07 17:09:49 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jul 18 19:14:12 2007 -0400"
      },
      "message": "locks: rename lease functions to reflect locks.c conventions\n\nWe\u0027ve been using the convention that vfs_foo is the function that calls\na filesystem-specific foo method if it exists, or falls back on a\ngeneric method if it doesn\u0027t; thus vfs_foo is what is called when some\nother part of the kernel (normally lockd or nfsd) wants to get a lock,\nwhereas foo is what filesystems call to use the underlying local\nfunctionality as part of their lock implementation.\n\nSo rename setlease to vfs_setlease (which will call a\nfilesystem-specific setlease after a later patch) and __setlease to\nsetlease.\n\nAlso, vfs_setlease need only be GPL-exported as long as it\u0027s only needed\nby lockd and nfsd.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "1269bc69b6649282091bb7007372acf4ab8357fd",
      "tree": "58cd434f7381332dd8b7331da36f98b40cb69639",
      "parents": [
        "9091224f3cff4721f295df29e8a99705a63bc4c7"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd: enforce per-flavor id squashing\n\nAllow root squashing to vary per-pseudoflavor, so that you can (for example)\nallow root access only when sufficiently strong security is in use.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9091224f3cff4721f295df29e8a99705a63bc4c7",
      "tree": "a3fdc31dc0697003029a06b8088a8a81f54e41c4",
      "parents": [
        "4796f45740bc6f2e3e6cc14e7ed481b38bd0bd39"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd: allow auth_sys nlm on rpcsec_gss exports\n\nOur clients (like other clients, as far as I know) use only auth_sys for nlm,\neven when using rpcsec_gss for the main nfs operations.\n\nAdministrators that want to deny non-kerberos-authenticated locking requests\nwill need to turn off NFS protocol versions less than 4....\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4796f45740bc6f2e3e6cc14e7ed481b38bd0bd39",
      "tree": "1f24645e86f87511350e149525245f2b215ba55a",
      "parents": [
        "dcb488a3b7ac3987e21148f44f641c9b2e734232"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:51 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd4: secinfo handling without secinfo\u003d option\n\nWe could return some sort of error in the case where someone asks for secinfo\non an export without the secinfo\u003d option set--that\u0027d be no worse than what\nwe\u0027ve been doing.  But it\u0027s not really correct.  So, hack up an approximate\nsecinfo response in that case--it may not be complete, but it\u0027ll tell the\nclient at least one acceptable security flavor.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dcb488a3b7ac3987e21148f44f641c9b2e734232",
      "tree": "edc9fe889094768068d8ea8c214076e40313a297",
      "parents": [
        "ae4c40b1d81f5299c04330306736b2f0f0539f4b"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@citi.umich.edu",
        "time": "Tue Jul 17 04:04:51 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd4: implement secinfo\n\nImplement the secinfo operation.\n\n(Thanks to Usha Ketineni wrote an earlier version of this support.)\n\nCc: Usha Ketineni \u003cuketinen@us.ibm.com\u003e\nSigned-off-by: Andy Adamson \u003candros@citi.umich.edu\u003e\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "91fe39d35ebd6adaece4e090f6b1a3e4b6a59c97",
      "tree": "f76c9129068fdb96408295ddb1c53491cf663389",
      "parents": [
        "ac34cdb03dfdb8cdc824f41f577434c5c2521155"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:49 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd: display export secinfo information\n\nAdd secinfo information to the display in proc/net/sunrpc/nfsd.export/content.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ac34cdb03dfdb8cdc824f41f577434c5c2521155",
      "tree": "7ba12b944282a401911fd0d7d61fc116317e1789",
      "parents": [
        "0ec757df9743025f14190d6034d8bd2bf37c2dd1"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:49 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd: factor out code from show_expflags\n\nFactor out some code to be shared by secinfo display code.  Remove some\nunnecessary conditional printing of commas where we know the condition is\ntrue.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ec757df9743025f14190d6034d8bd2bf37c2dd1",
      "tree": "77436cbdc8c241aceab2daed243606e17e126771",
      "parents": [
        "32c1eb0cd7ee00b5eb7b6f7059c635fbc1052966"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd4: make readonly access depend on pseudoflavor\n\nAllow readonly access to vary depending on the pseudoflavor, using the flag\npassed with each pseudoflavor in the export downcall.  The rest of the flags\nare ignored for now, though some day we might also allow id squashing to vary\nbased on the flavor.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "32c1eb0cd7ee00b5eb7b6f7059c635fbc1052966",
      "tree": "c1a15e47d2dd93417b38d374346332809d461bda",
      "parents": [
        "6c0a654dceaa4342270306de77eadb0173dfb58a"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@citi.umich.edu",
        "time": "Tue Jul 17 04:04:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd4: return nfserr_wrongsec\n\nMake the first actual use of the secinfo information by using it to return\nnfserr_wrongsec when an export is found that doesn\u0027t allow the flavor used on\nthis request.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Andy Adamson \u003candros@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6c0a654dceaa4342270306de77eadb0173dfb58a",
      "tree": "ba2c62790bc155a444a6772b829165aa5ad07cd3",
      "parents": [
        "2ea2209f073dc7049bd285b4f5dbc0aa273f9746"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd: factor nfsd_lookup into 2 pieces\n\nFactor nfsd_lookup into nfsd_lookup_dentry, which finds the right dentry and\nexport, and a second part which composes the filehandle (and which will later\ncheck the security flavor on the new export).\n\nNo change in behavior.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2ea2209f073dc7049bd285b4f5dbc0aa273f9746",
      "tree": "254cbddee0c764ea3b1b728b88e70ba47057689d",
      "parents": [
        "3ab4d8b1215d61736e2a9a26bea7cc2e6b029e3d"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:46 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd: use ip-address-based domain in secinfo case\n\nWith this patch, we fall back on using the gss/pseudoflavor only if we fail to\nfind a matching auth_unix export that has a secinfo list.\n\nAs long as sec\u003d options aren\u0027t used, there\u0027s still no change in behavior here\n(except possibly for some additional auth_unix cache lookups, whose results\nwill be ignored).\n\nThe sec\u003d option, however, is not actually enforced yet; later patches will add\nthe necessary checks.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ab4d8b1215d61736e2a9a26bea7cc2e6b029e3d",
      "tree": "6b256e44c4ed5295dfd55eef8641093b91692559",
      "parents": [
        "0989a7889695831e49e2c53c1884f52645516a90"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:46 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd: set rq_client to ip-address-determined-domain\n\nWe want it to be possible for users to restrict exports both by IP address and\nby pseudoflavor.  The pseudoflavor information has previously been passed\nusing special auth_domains stored in the rq_client field.  After the preceding\npatch that stored the pseudoflavor in rq_pflavor, that\u0027s now superfluous; so\nnow we use rq_client for the ip information, as auth_null and auth_unix do.\n\nHowever, we keep around the special auth_domain in the rq_gssclient field for\nbackwards compatibility purposes, so we can still do upcalls using the old\n\"gss/pseudoflavor\" auth_domain if upcalls using the unix domain to give us an\nappropriate export.  This allows us to continue supporting old mountd.\n\nIn fact, for this first patch, we always use the \"gss/pseudoflavor\"\nauth_domain (and only it) if it is available; thus rq_client is ignored in the\nauth_gss case, and this patch on its own makes no change in behavior; that\nwill be left to later patches.\n\nNote on idmap: I\u0027m almost tempted to just replace the auth_domain in the idmap\nupcall by a dummy value--no version of idmapd has ever used it, and it\u0027s\nunlikely anyone really wants to perform idmapping differently depending on the\nwhere the client is (they may want to perform *credential* mapping\ndifferently, but that\u0027s a different matter--the idmapper just handles id\u0027s\nused in getattr and setattr).  But I\u0027m updating the idmapd code anyway, just\nout of general backwards-compatibility paranoia.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0989a7889695831e49e2c53c1884f52645516a90",
      "tree": "f2548a7ebdedbe89121c40c0157f5554093fb0d7",
      "parents": [
        "87548c37c8bdbf98aea002c9c04e4dc8aa27fe1b"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd: provide export lookup wrappers which take a svc_rqst\n\nSplit the callers of exp_get_by_name(), exp_find(), and exp_parent() into\nthose that are processing requests and those that are doing other stuff (like\nlooking up filehandles for mountd).\n\nNo change in behavior, just a (fairly pointless, on its own) cleanup.\n\n(Note this has the effect of making nfsd_cross_mnt() pass rqstp-\u003erq_client\ninstead of exp-\u003eex_client into exp_find_by_name().  However, the two should\nhave the same value at this point.)\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "87548c37c8bdbf98aea002c9c04e4dc8aa27fe1b",
      "tree": "353ccf93af0b1d34967f141a10f1b0089a9e7813",
      "parents": [
        "df547efb03e3e8f9ea726e1d07fbbd6fd0706cd7"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd: remove superfluous assignment from nfsd_lookup\n\nThe \"err\" variable will only be used in the final return, which always happens\nafter either the preceding\n\n\terr \u003d fh_compose(...);\n\nor after the following\n\n\terr \u003d nfserrno(host_err);\n\nSo the earlier assignment to err is ignored.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "df547efb03e3e8f9ea726e1d07fbbd6fd0706cd7",
      "tree": "ff0b523096d135562dd979af4864ad6846a359c7",
      "parents": [
        "e677bfe4d451f8271986a229270c6eecd1f62b3f"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:43 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd4: simplify exp_pseudoroot arguments\n\nWe\u0027re passing three arguments to exp_pseudoroot, two of which are just fields\nof the svc_rqst.  Soon we\u0027ll want to pass in a third field as well.  So let\u0027s\njust give up and pass in the whole struct svc_rqst.\n\nAlso sneak in some minor style cleanups while we\u0027re at it.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e677bfe4d451f8271986a229270c6eecd1f62b3f",
      "tree": "75cbbe0a5d853c006d0f9aeab7dcee77148d470c",
      "parents": [
        "c4170583f655dca5da32bd14173d6a93805fc48b"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@citi.umich.edu",
        "time": "Tue Jul 17 04:04:42 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd4: parse secinfo information in exports downcall\n\nWe add a list of pseudoflavors to each export downcall, which will be used\nboth as a list of security flavors allowed on that export, and (in the order\ngiven) as the list of pseudoflavors to return on secinfo calls.\n\nThis patch parses the new downcall information and adds it to the export\nstructure, but doesn\u0027t use it for anything yet.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Andy Adamson \u003candros@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2d3bb25209c1f9a27ea9535c7fd2f6729a5e7db1",
      "tree": "487ccec9aaf60298d4cb7b2fc5f4d76072bcc60b",
      "parents": [
        "47f9940c55c0bdc65188749cae4e841601f513bb"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@puzzle.fieldses.org",
        "time": "Tue Jul 17 04:04:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd: make all exp_finding functions return -errno\u0027s on err\n\nCurrently exp_find(), exp_get_by_name(), and friends, return an export on\nsuccess, and on failure return:\n\n\terrors -EAGAIN (drop this request pending an upcall) or\n\t\t-ETIMEDOUT (an upcall has timed out), or\n\treturn NULL, which can mean either that there was a memory allocation\n\t\tfailure, or that an export was not found, or that a passed-in\n\t\texport lacks an auth_domain.\n\nMany callers seem to assume that NULL means that an export was not found,\nwhich may lead to bugs in the case of a memory allocation failure.\n\nModify these functions to distinguish between the two NULL cases by returning\neither -ENOENT or -ENOMEM.  They now never return NULL.  We get to simplify\nsome code in the process.\n\nWe return -ENOENT in the case of a missing auth_domain.  This case should\nprobably be removed (or converted to a bug) after confirming that it can never\nhappen.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "47f9940c55c0bdc65188749cae4e841601f513bb",
      "tree": "ff24a78f815591d8309e368e504347371d96ef60",
      "parents": [
        "c2f1a551dea8b37c2e0cb886885c250fb703e9d8"
      ],
      "author": {
        "name": "Meelap Shah",
        "email": "meelap@umich.edu",
        "time": "Tue Jul 17 04:04:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd4: don\u0027t delegate files that have had conflicts\n\nOne more incremental delegation policy improvement: don\u0027t give out a\ndelegation on a file if conflicting access has previously required that a\ndelegation be revoked on that file.  (In practice we\u0027ll forget about the\nconflict when the struct nfs4_file is removed on close, so this is of limited\nuse for now, though it should at least solve a temporary problem with\nself-conflicts on write opens from the same client.)\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c2f1a551dea8b37c2e0cb886885c250fb703e9d8",
      "tree": "11a5f256703d856017ceb2268bd02b7b510dee30",
      "parents": [
        "1e5140279f31e47d58ed6036ee61ba7a65710e63"
      ],
      "author": {
        "name": "Meelap Shah",
        "email": "meelap@umich.edu",
        "time": "Tue Jul 17 04:04:39 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd4: vary maximum delegation limit based on RAM size\n\nOur original NFSv4 delegation policy was to give out a read delegation on any\nopen when it was possible to.\n\nSince the lifetime of a delegation isn\u0027t limited to that of an open, a client\nmay quite reasonably hang on to a delegation as long as it has the inode\ncached.  This becomes an obvious problem the first time a client\u0027s inode cache\napproaches the size of the server\u0027s total memory.\n\nOur first quick solution was to add a hard-coded limit.  This patch makes a\nmild incremental improvement by varying that limit according to the server\u0027s\ntotal memory size, allowing at most 4 delegations per megabyte of RAM.\n\nMy quick back-of-the-envelope calculation finds that in the worst case (where\nevery delegation is for a different inode), a delegation could take about\n1.5K, which would make the worst case usage about 6% of memory.  The new limit\nworks out to be about the same as the old on a 1-gig server.\n\n[akpm@linux-foundation.org: Don\u0027t needlessly bloat vmlinux]\n[akpm@linux-foundation.org: Make it right for highmem machines]\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1e5140279f31e47d58ed6036ee61ba7a65710e63",
      "tree": "ce2aa52d5f304907d0ed2e6675d576116d605897",
      "parents": [
        "4b2ca38ad6c44ed0442092a829e6e954bf3580af"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@fieldses.org",
        "time": "Tue Jul 17 04:04:38 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd: remove unused header interface.h\n\nIt looks like Al Viro gutted this header file five years ago and it hasn\u0027t\nbeen touched since.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4b2ca38ad6c44ed0442092a829e6e954bf3580af",
      "tree": "d3256d5a1e2a0276326f8abb2e6aabc3df3812da",
      "parents": [
        "0ac68d17996eb421dde51452b89d5545ba07c6fe"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@fieldses.org",
        "time": "Tue Jul 17 04:04:37 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd4: fix handling of acl errrors\n\nnfs4_acl_nfsv4_to_posix() returns an error and returns any posix acls\ncalculated in two caller-provided pointers.  It was setting these pointers to\n-errno in some error cases, resulting in nfsd4_set_nfs4_acl() calling\nposix_acl_release() with a -errno as an argument.\n\nFix both the caller and the callee, by modifying nfsd4_set_nfs4_acl() to\nstop relying on the passed-in-pointers being left as NULL in the error\ncase, and by modifying nfs4_acl_nfsv4_to_posix() to stop returning\ngarbage in those pointers.\n\nThanks to Alex Soule for reporting the bug.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nCc: Alexander Soule \u003csoule@umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ac68d17996eb421dde51452b89d5545ba07c6fe",
      "tree": "444ac8b89189e6b3e543df82c04b4d570c3133f6",
      "parents": [
        "f7fede4b27bfc6c987d6da8e40384b1b098830bb"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Tue Jul 17 04:04:37 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd4: fix enc_stateid_sz for nfsd callbacks\n\nenc_stateid_sz should be given in u32 words units, not bytes, so we were\noverestimating the buffer space needed here.\n\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f7fede4b27bfc6c987d6da8e40384b1b098830bb",
      "tree": "c9ec028a7d0a1ff1814108a61177713512830acd",
      "parents": [
        "33a1060ae7dc671a0208b341bd454009625bb5a6"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@fieldses.org",
        "time": "Tue Jul 17 04:04:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd4: silence a compiler warning in ACL code\n\nSilence a compiler warning in the ACL code, and add a comment making clear the\ninitialization serves no other purpose.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9a8db97e7756119689c93c431e8b8324080f5625",
      "tree": "2e0ac28664b02c7e1c7a111c6e60ac059fd92ad8",
      "parents": [
        "12127498c8f5e479df15ee374a0932f5659df49e"
      ],
      "author": {
        "name": "Marc Eshel",
        "email": "eshel@almaden.ibm.com",
        "time": "Tue Jul 17 04:04:35 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: lockd: nfsd4: use same grace period for lockd and nfsd4\n\nBoth lockd and (in the nfsv4 case) nfsd enforce a \"grace period\" after reboot,\nduring which clients may reclaim locks from the previous server instance, but\nmay not acquire new locks.\n\nCurrently the lockd and nfsd enforce grace periods of different lengths.  This\nmay cause problems when we reboot a server with both v2/v3 and v4 clients.\nFor example, if the lockd grace period is shorter (as is likely the case),\nthen a v3 client might acquire a new lock that conflicts with a lock already\nheld (but not yet reclaimed) by a v4 client.\n\nThis patch calculates a lease time that lockd and nfsd can both use.\n\nSigned-off-by: Marc Eshel \u003ceshel@almaden.ibm.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "12127498c8f5e479df15ee374a0932f5659df49e",
      "tree": "c302d248b5e6093a7ce5741abc9dc111782c98bf",
      "parents": [
        "019ab801cf32381b90cbe0144cc5695aed0e408c"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Tue Jul 17 04:04:34 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:06 2007 -0700"
      },
      "message": "nfsd warning fix\n\ngcc-4.3:\n\nfs/nfsd/nfsctl.c: In function \u0027write_getfs\u0027:\nfs/nfsd/nfsctl.c:248: warning: cast from pointer to integer of different size\n\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d37065cd6d6bbe98fd4be14d6c9e64c0bfa124c5",
      "tree": "03a996d3d93a4d5ebd737519f7a6f959ecdbce0d",
      "parents": [
        "5ca29607331fe37980dc3b488793ef8b1409b722"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Jul 17 04:04:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:06 2007 -0700"
      },
      "message": "knfsd: exportfs: add procedural interface for NFSD\n\nCurrently NFSD calls directly into filesystems through the export_operations\nstructure.  I plan to change this interface in various ways in later patches,\nand want to avoid the export of the default operations to NFSD, so this patch\nadds two simple exportfs_encode_fh/exportfs_decode_fh helpers for NFSD to call\ninstead of poking into exportfs guts.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a569425512253992cc64ebf8b6d00a62f986db3e",
      "tree": "7ea72c75c54697bddbad807af89cc549d7426a69",
      "parents": [
        "6dd4ac3b30b81b5bd0d628af1c89b7da689a38ea"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Jul 17 04:04:28 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:06 2007 -0700"
      },
      "message": "knfsd: exportfs: add exportfs.h header\n\ncurrently the export_operation structure and helpers related to it are in\nfs.h.  fs.h is already far too large and there are very few places needing the\nexport bits, so split them off into a separate header.\n\n[akpm@linux-foundation.org: fix cifs build]\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: Steven French \u003csfrench@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "831441862956fffa17b9801db37e6ea1650b0f69",
      "tree": "b0334921341f8f1734bdd3243de76d676329d21c",
      "parents": [
        "787d2214c19bcc9b6ac48af0ce098277a801eded"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Jul 17 04:03:35 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:02 2007 -0700"
      },
      "message": "Freezer: make kernel threads nonfreezable by default\n\nCurrently, the freezer treats all tasks as freezable, except for the kernel\nthreads that explicitly set the PF_NOFREEZE flag for themselves.  This\napproach is problematic, since it requires every kernel thread to either\nset PF_NOFREEZE explicitly, or call try_to_freeze(), even if it doesn\u0027t\ncare for the freezing of tasks at all.\n\nIt seems better to only require the kernel threads that want to or need to\nbe frozen to use some freezer-related code and to remove any\nfreezer-related code from the other (nonfreezable) kernel threads, which is\ndone in this patch.\n\nThe patch causes all kernel threads to be nonfreezable by default (ie.  to\nhave PF_NOFREEZE set by default) and introduces the set_freezable()\nfunction that should be called by the freezable kernel threads in order to\nunset PF_NOFREEZE.  It also makes all of the currently freezable kernel\nthreads call set_freezable(), so it shouldn\u0027t cause any (intentional)\nchange of behaviour to appear.  Additionally, it updates documentation to\ndescribe the freezing of tasks more accurately.\n\n[akpm@linux-foundation.org: build fixes]\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "16cefa8c3863721fd40445a1b34dea18cd16ccfe",
      "tree": "c8e58ca06e2edfd667d3e6062a642b80cc58e5e7",
      "parents": [
        "4fbef206daead133085fe33905f5e842d38fb8da",
        "d8558f99fbc5ef5d4ae76b893784005056450f82"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Jul 13 16:46:18 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Jul 13 16:46:18 2007 -0700"
      },
      "message": "Merge git://git.linux-nfs.org/pub/linux/nfs-2.6\n\n* git://git.linux-nfs.org/pub/linux/nfs-2.6: (122 commits)\n  sunrpc: drop BKL around wrap and unwrap\n  NFSv4: Make sure unlock is really an unlock when cancelling a lock\n  NLM: fix source address of callback to client\n  SUNRPC client: add interface for binding to a local address\n  SUNRPC server: record the destination address of a request\n  SUNRPC: cleanup transport creation argument passing\n  NFSv4: Make the NFS state model work with the nosharedcache mount option\n  NFS: Error when mounting the same filesystem with different options\n  NFS: Add the mount option \"nosharecache\"\n  NFS: Add support for mounting NFSv4 file systems with string options\n  NFS: Add final pieces to support in-kernel mount option parsing\n  NFS: Introduce generic mount client API\n  NFS: Add enums and match tables for mount option parsing\n  NFS: Improve debugging output in NFS in-kernel mount client\n  NFS: Clean up in-kernel NFS mount\n  NFS: Remake nfsroot_mount as a permanent part of NFS client\n  SUNRPC: Add a convenient default for the hostname when calling rpc_create()\n  SUNRPC: Rename rpcb_getport to be consistent with new rpcb_getport_sync name\n  SUNRPC: Rename rpcb_getport_external routine\n  SUNRPC: Allow rpcbind requests to be interrupted by a signal.\n  ...\n"
    },
    {
      "commit": "4fbef206daead133085fe33905f5e842d38fb8da",
      "tree": "94689f4fc018e0a599db08a6902fbc079d33c07e",
      "parents": [
        "4fd885170bf13841ada921495b7b00c4b9971cf9"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jul 13 22:42:20 2007 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Jul 13 16:45:43 2007 -0700"
      },
      "message": "nfsd: fix nfsd_vfs_read() splice actor setup\n\nWhen nfsd was transitioned to use splice instead of sendfile() for data\ntransfers, a line setting the page index was lost. Restore it, so that\nnfsd is functional when that path is used.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43780b87fa799ae65df11d89d4539d8d6a7c67eb",
      "tree": "46fce452807c8672af77666bb03cab5ff4191e94",
      "parents": [
        "45160d6275814e0c86206e6981f0b92c61a50a21"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Sun Jul 01 12:13:22 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:46 2007 -0400"
      },
      "message": "SUNRPC: Add a convenient default for the hostname when calling rpc_create()\n\nA couple of callers just use a stringified IP address for the rpc client\u0027s\nhostname.  Move the logic for constructing this into rpc_create(), so it can\nbe shared.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "f61534dfd38f895b203e2aadaba04f21a992ca8c",
      "tree": "02485ae68fb2f45cbbc06152e0a4856ceff5f587",
      "parents": [
        "4ada539ed77c7a2bbcb75cafbbd7bd8d2b9bef7b"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jun 14 17:31:58 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:30 2007 -0400"
      },
      "message": "SUNRPC: Remove redundant calls to rpciod_up()/rpciod_down()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cac36bb06efe4880234524e117e0e712b10b1f16",
      "tree": "5220c6f2185cee1c6934cf8048975beac5bc94bb",
      "parents": [
        "d96e6e71647846e0dab097efd9b8bf3a3a556dca"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jun 14 13:10:48 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 08:04:15 2007 +0200"
      },
      "message": "pipe: change the -\u003epin() operation to -\u003econfirm()\n\nThe name \u0027pin\u0027 was badly chosen, it doesn\u0027t pin a pipe buffer\nin the most commonly used sense in the kernel. So change the\nname to \u0027confirm\u0027, after debating this issue with Hugh\nDickins a bit.\n\nA good return from -\u003econfirm() means that the buffer is really\nthere, and that the contents are good.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "d6b29d7cee064f28ca097e906de7453541351095",
      "tree": "16775787df194cb45b4ac712da1c240f48cae96e",
      "parents": [
        "ebf9909343392c929d9943c04f421cd42e03b530"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jun 04 09:59:47 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 08:04:14 2007 +0200"
      },
      "message": "splice: divorce the splice structure/function definitions from the pipe header\n\nWe need to move even more stuff into the header so that folks can use\nthe splice_to_pipe() implementation instead of open-coding a lot of\npipe knowledge (see relay implementation), so move to our own header\nfile finally.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "cf8208d0eabd1d5d2625ec02a175a294c3f30d36",
      "tree": "7dd1f75873a2d84a3c626ecd45640d42c1b5dfcf",
      "parents": [
        "f0930fffa99e7fe0a0c4b6c7d9a244dc88288c27"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jun 12 21:22:14 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 08:04:14 2007 +0200"
      },
      "message": "sendfile: convert nfsd to splice_direct_to_actor()\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e8edc6e03a5c8562dc70a6d969f732bdb355a7e7",
      "tree": "fc86c863655128a7041dfe613d14393d761fa7b9",
      "parents": [
        "ff1be9ad61e3e17ba83702d8ed0b534e5b8ee15c"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon May 21 01:22:52 2007 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 21 09:18:19 2007 -0700"
      },
      "message": "Detach sched.h from mm.h\n\nFirst thing mm.h does is including sched.h solely for can_do_mlock() inline\nfunction which has \"current\" dereference inside. By dealing with can_do_mlock()\nmm.h can be detached from sched.h which is good. See below, why.\n\nThis patch\na) removes unconditional inclusion of sched.h from mm.h\nb) makes can_do_mlock() normal function in mm/mlock.c\nc) exports can_do_mlock() to not break compilation\nd) adds sched.h inclusions back to files that were getting it indirectly.\ne) adds less bloated headers to some files (asm/signal.h, jiffies.h) that were\n   getting them indirectly\n\nNet result is:\na) mm.h users would get less code to open, read, preprocess, parse, ... if\n   they don\u0027t need sched.h\nb) sched.h stops being dependency for significant number of files:\n   on x86_64 allmodconfig touching sched.h results in recompile of 4083 files,\n   after patch it\u0027s only 3744 (-8.3%).\n\nCross-compile tested on\n\n\tall arm defconfigs, all mips defconfigs, all powerpc defconfigs,\n\talpha alpha-up\n\tarm\n\ti386 i386-up i386-defconfig i386-allnoconfig\n\tia64 ia64-up\n\tm68k\n\tmips\n\tparisc parisc-up\n\tpowerpc powerpc-up\n\ts390 s390-up\n\tsparc sparc-up\n\tsparc64 sparc64-up\n\tum-x86_64\n\tx86_64 x86_64-up x86_64-defconfig x86_64-allnoconfig\n\nas well as my two usual configs.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b41eeef14d7c73af6d16c7d02b7a939082a137ff",
      "tree": "eafe41b86a825f7effc4ba596c56507451c60367",
      "parents": [
        "072f62ed85a71bbb3429a52678500ec9f9441e0d"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed May 09 02:34:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:54 2007 -0700"
      },
      "message": "knfsd: avoid Oops if buggy userspace performs confusing filehandle-\u003edentry mapping\n\nWhen a lookup request arrives, nfsd uses information provided by userspace\n(mountd) to find the right filesystem.\n\nIt then assumes that the same filehandle type as the incoming filehandle can\nbe used to create an outgoing filehandle.\n\nHowever if mountd is buggy, or maybe just being creative, the filesystem may\nnot support that filesystem type, and the kernel could oops, particularly if\n\u0027ex_uuid\u0027 is NULL but a FSID_UUID* filehandle type is used.\n\nSo add some proper checking that the fsid version/type from the incoming\nfilehandle is actually supportable, and ignore that information if it isn\u0027t\nsupportable.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "072f62ed85a71bbb3429a52678500ec9f9441e0d",
      "tree": "016660b8c3de979be1d623c18306ab4c72088adb",
      "parents": [
        "f725b217b16e2cb1777c5a6e13c99f7913f1514a"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed May 09 02:34:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:54 2007 -0700"
      },
      "message": "knfsd: various nfsd xdr cleanups\n\n1/ decode_sattr and decode_sattr3 never return NULL, so remove\n   several checks for that. ditto for xdr_decode_hyper.\n\n2/ replace some open coded XDR_QUADLEN calls with calls to\n   XDR_QUADLEN\n\n3/ in decode_writeargs, simply an \u0027if\u0027 to use a single\n   calculation.\n   .page_len is the length of that part of the packet that did\n   not fit in the first page (the head).\n   So the length of the data part is the remainder of the\n   head, plus page_len.\n\n3/ other minor cleanups.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f725b217b16e2cb1777c5a6e13c99f7913f1514a",
      "tree": "7ba67527cc570e327b6d17eac92fc9c8b44d0b4d",
      "parents": [
        "05ed690efbb28b54af79f97af8c9705e82a6fbd7"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed May 09 02:34:56 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:54 2007 -0700"
      },
      "message": "knfsd: trivial makefile cleanup\n\nkbuild directly interprets \u003cmodulename\u003e-y as objects to build into a module,\nno need to assign it to the old foo-objs variable.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "402acd29e552cb80109d1d5c0ada53f634465d87",
      "tree": "12c86f3421d3d8679401742e1bc6569c75908ee3",
      "parents": [
        "5bd5f5812bfa753218e02cb773e06ede48055798"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed May 09 02:34:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:54 2007 -0700"
      },
      "message": "knfsd: avoid use of unitialised variables on error path when nfs exports\n\nWe need to zero various parts of \u0027exp\u0027 before any \u0027goto out\u0027, otherwise when\nwe go to free the contents...  we die.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd123012d99fde4759500fee611e724e4f3016e3",
      "tree": "a947c5e4210a2a51ea6619b3e127650feaa00421",
      "parents": [
        "669716433598a1498049e75a84a5aaf69c8da173"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed May 09 02:34:50 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:54 2007 -0700"
      },
      "message": "RPC: add wrapper for svc_reserve to account for checksum\n\nWhen the kernel calls svc_reserve to downsize the expected size of an RPC\nreply, it fails to account for the possibility of a checksum at the end of\nthe packet.  If a client mounts a NFSv2/3 with sec\u003dkrb5i/p, and does I/O\nthen you\u0027ll generally see messages similar to this in the server\u0027s ring\nbuffer:\n\nRPC request reserved 164 but used 208\n\nWhile I was never able to verify it, I suspect that this problem is also\nthe root cause of some oopses I\u0027ve seen under these conditions:\n\nhttps://bugzilla.redhat.com/bugzilla/show_bug.cgi?id\u003d227726\n\nThis is probably also a problem for other sec\u003d types and for NFSv4.  The\nlarge reserved size for NFSv4 compound packets seems to generally paper\nover the problem, however.\n\nThis patch adds a wrapper for svc_reserve that accounts for the possibility\nof a checksum.  It also fixes up the appropriate callers of svc_reserve to\ncall the wrapper.  For now, it just uses a hardcoded value that I\ndetermined via testing.  That value may need to be revised upward as things\nchange, or we may want to eventually add a new auth_op that attempts to\ncalculate this somehow.\n\nUnfortunately, there doesn\u0027t seem to be a good way to reliably determine\nthe expected checksum length prior to actually calculating it, particularly\nwith schemes like spkm3.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nAcked-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "669716433598a1498049e75a84a5aaf69c8da173",
      "tree": "6f925e6ddaaa31b485972ccc08fd725b5ea65e27",
      "parents": [
        "7ac1bea5507218da03f6005d228789da5a831c3f"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed May 09 02:34:49 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:54 2007 -0700"
      },
      "message": "nfsd/nfs4state: remove unnecessary daemonize call\n\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f34b95689d2ce001c157b1604289ff240b4bdee0",
      "tree": "e249e166e3c66656ad1b5ac895da6e4c207830e1",
      "parents": [
        "8842c9655b2b7f0e8e6c50a773b649e5d8a57678"
      ],
      "author": {
        "name": "Peter Staubach",
        "email": "staubach@redhat.com",
        "time": "Wed May 09 02:34:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:54 2007 -0700"
      },
      "message": "The NFSv2/NFSv3 server does not handle zero length WRITE requests correctly\n\nThe NFSv2 and NFSv3 servers do not handle WRITE requests for 0 bytes\ncorrectly.  The specifications indicate that the server should accept the\nrequest, but it should mostly turn into a no-op.  Currently, the server\nwill return an XDR decode error, which it should not.\n\nAttached is a patch which addresses this issue.  It also adds some boundary\nchecking to ensure that the request contains as much data as was requested\nto be written.  It also correctly handles an NFSv3 request which requests\nto write more data than the server has stated that it is prepared to\nhandle.  Previously, there was some support which looked like it should\nwork, but wasn\u0027t quite right.\n\nSigned-off-by: Peter Staubach \u003cstaubach@redhat.com\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8842c9655b2b7f0e8e6c50a773b649e5d8a57678",
      "tree": "5f5e682ee03286f33c70775fed05c4645bbeb3ae",
      "parents": [
        "6e84d644b5929789398914b0ccf447355dec6fb0"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed May 09 02:34:46 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:54 2007 -0700"
      },
      "message": "remove nfs4_acl_add_ace()\n\nnfs4_acl_add_ace() can now be removed.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nAcked-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e63340ae6b6205fef26b40a75673d1c9c0c8bb90",
      "tree": "8d3212705515edec73c3936bb9e23c71d34a7b41",
      "parents": [
        "04c9167f91e309c9c4ea982992aa08e83b2eb42e"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue May 08 00:28:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:07 2007 -0700"
      },
      "message": "header cleaning: don\u0027t include smp_lock.h when not used\n\nRemove includes of \u003clinux/smp_lock.h\u003e where it is not used/needed.\nSuggested by Al Viro.\n\nBuilds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,\nsparc64, and arm (all 59 defconfigs).\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2d56d3c43cc97ae48586745556f5a5b564d61582",
      "tree": "28f2edc1e69b79e94d99023041dd0358861b6956",
      "parents": [
        "0f9008ef38d5a6305d94bbdd8f20d68fc75c63b6",
        "586759f03e2e9031ac5589912a51a909ed53c30a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:34:24 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:34:24 2007 -0700"
      },
      "message": "Merge branch \u0027server-cluster-locking-api\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027server-cluster-locking-api\u0027 of git://linux-nfs.org/~bfields/linux:\n  gfs2: nfs lock support for gfs2\n  lockd: add code to handle deferred lock requests\n  lockd: always preallocate block in nlmsvc_lock()\n  lockd: handle test_lock deferrals\n  lockd: pass cookie in nlmsvc_testlock\n  lockd: handle fl_grant callbacks\n  lockd: save lock state on deferral\n  locks: add fl_grant callback for asynchronous lock return\n  nfsd4: Convert NFSv4 to new lock interface\n  locks: add lock cancel command\n  locks: allow {vfs,posix}_lock_file to return conflicting lock\n  locks: factor out generic/filesystem switch from setlock code\n  locks: factor out generic/filesystem switch from test_lock\n  locks: give posix_test_lock same interface as -\u003elock\n  locks: make -\u003elock release private data before returning in GETLK case\n  locks: create posix-to-flock helper functions\n  locks: trivial removal of unnecessary parentheses\n"
    },
    {
      "commit": "fd85b8170dabbf021987875ef7f903791f4f181e",
      "tree": "9899d2e3e3cd3ac60ed5638add79e39045817e41",
      "parents": [
        "9b9d2ab4154a42ea4a119f7d3e4e0288bfe0bb79"
      ],
      "author": {
        "name": "Marc Eshel",
        "email": "eshel@almaden.ibm.com",
        "time": "Tue Nov 28 16:26:41 2006 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Sun May 06 20:38:49 2007 -0400"
      },
      "message": "nfsd4: Convert NFSv4 to new lock interface\n\nConvert NFSv4 to the new lock interface.  We don\u0027t define any callback for now,\nso we\u0027re not taking advantage of the asynchronous feature--that\u0027s less critical\nfor the multi-threaded nfsd then it is for the single-threaded lockd.  But this\ndoes allow a cluster filesystems to export cluster-coherent locking to NFS.\n\nNote that it\u0027s cluster filesystems that are the issue--of the filesystems that\ndefine lock methods (nfs, cifs, etc.), most are not exportable by nfsd.\n\nSigned-off-by: Marc Eshel \u003ceshel@almaden.ibm.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "150b393456e5a23513cace286a019e87151e47f0",
      "tree": "91599ec9b759f7e3c5defcb8dd361acd7288154c",
      "parents": [
        "7723ec9777d9832849b76475b1a21a2872a40d20"
      ],
      "author": {
        "name": "Marc Eshel",
        "email": "eshel@almaden.ibm.com",
        "time": "Thu Jan 18 16:15:35 2007 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Sun May 06 19:23:24 2007 -0400"
      },
      "message": "locks: allow {vfs,posix}_lock_file to return conflicting lock\n\nThe nfsv4 protocol\u0027s lock operation, in the case of a conflict, returns\ninformation about the conflicting lock.\n\nIt\u0027s unclear how clients can use this, so for now we\u0027re not going so far as to\nadd a filesystem method that can return a conflicting lock, but we may as well\nreturn something in the local case when it\u0027s easy to.\n\nSigned-off-by: Marc Eshel \u003ceshel@almaden.ibm.com\u003e\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "9d6a8c5c213e34c475e72b245a8eb709258e968c",
      "tree": "96110535c2bd9485129c0753a9e0f012083b220f",
      "parents": [
        "70cc6487a4e08b8698c0e2ec935fb48d10490162"
      ],
      "author": {
        "name": "Marc Eshel",
        "email": "eshel@almaden.ibm.com",
        "time": "Wed Feb 21 00:55:18 2007 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Sun May 06 17:39:00 2007 -0400"
      },
      "message": "locks: give posix_test_lock same interface as -\u003elock\n\nposix_test_lock() and -\u003elock() do the same job but have gratuitously\ndifferent interfaces.  Modify posix_test_lock() so the two agree,\nsimplifying some code in the process.\n\nSigned-off-by: Marc Eshel \u003ceshel@almaden.ibm.com\u003e\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "2bea90d43a050bbc4021d44e59beb34f384438db",
      "tree": "2dd3f15bd9df537166a82777b0c95243b90b17e1",
      "parents": [
        "511d2e8855a065c8251d0c140ebc353854f1929e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Mar 29 16:47:53 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Apr 30 22:17:10 2007 -0700"
      },
      "message": "SUNRPC: RPC buffer size estimates are too large\n\nThe RPC buffer size estimation logic in net/sunrpc/clnt.c always\nsignificantly overestimates the requirements for the buffer size.\nA little instrumentation demonstrated that in fact rpc_malloc was never\nallocating the buffer from the mempool, but almost always called kmalloc.\n\nTo compute the size of the RPC buffer more precisely, split p_bufsiz into\ntwo fields; one for the argument size, and one for the result size.\n\nThen, compute the sum of the exact call and reply header sizes, and split\nthe RPC buffer precisely between the two.  That should keep almost all RPC\nbuffers within the 2KiB buffer mempool limit.\n\nAnd, we can finally be rid of RPC_SLACK_SPACE!\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "79f6523a16b2010969418f8df25fe61498dec66b",
      "tree": "269437d5a0083a1b97fd03db2ba1f3d564d09d31",
      "parents": [
        "21315edd4877b593d5bf17a601a48fc836b8ba58"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@fieldses.org",
        "time": "Mon Mar 26 21:32:10 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 27 09:05:14 2007 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: remove superfluous cancel_delayed_work() call\n\nThis cancel_delayed_work call is called from a function that is only called\nfrom a piece of code that immediate follows a cancel and destruction of the\nworkqueue, so it\u0027s clearly a mistake.\n\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "21315edd4877b593d5bf17a601a48fc836b8ba58",
      "tree": "1bede67ee14b584395ae198d4299869c5536c0c8",
      "parents": [
        "54c044094947826105317dadd01deca083627ea1"
      ],
      "author": {
        "name": "Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Mar 26 21:32:09 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 27 09:05:14 2007 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: demote \"clientid in use\" printk to a dprintk\n\nThe reused clientid here is a more of a problem for the client than the\nserver, and the client can report the problem itself if it\u0027s serious.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "54c044094947826105317dadd01deca083627ea1",
      "tree": "e2d7ebf3f7504d07f904a13e04f020d3396b2147",
      "parents": [
        "598b9a56373f0596ed48f7af730706aaee998d5f"
      ],
      "author": {
        "name": "Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Mar 26 21:32:09 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 27 09:05:14 2007 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: fix inheritance flags on v4 ace derived from posix default ace\n\nA regression introduced in the last set of acl patches removed the\nINHERIT_ONLY flag from aces derived from the posix acl.  Fix.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "598b9a56373f0596ed48f7af730706aaee998d5f",
      "tree": "4ed3f708e67ec38f890d22e13499ab26630a09f6",
      "parents": [
        "ec28297a562f2b022115b9eb82e4ea724d996240"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Mar 26 21:32:08 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 27 09:05:14 2007 -0700"
      },
      "message": "[PATCH] knfsd: allow nfsd READDIR to return 64bit cookies\n\n-\u003ereaddir passes lofft_t offsets (used as nfs cookies) to\nnfs3svc_encode_entry{,_plus}, but when they pass it on to encode_entry it\nbecomes an \u0027off_t\u0027, which isn\u0027t good.\n\nSo filesystems that returned 64bit offsets would lose.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a033f35a2206e28af8109c62b403d940ba89d2b9",
      "tree": "b3e66110c5d7ed1470d11cb6004a67af74999f8a",
      "parents": [
        "24b29dbcf382b12b58bc33fb4d0abb13d6ddc073"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Wed Mar 14 09:16:24 2007 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Mar 14 15:27:49 2007 -0700"
      },
      "message": "[PATCH] include of asm/pgtable.h in nfsfh is bogus\n\nnot needed and actually breaks build on frv, while we are at it\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c9ce228306fda4448f5f495b4f36c07956f45acd",
      "tree": "1af8af646a209757f1f1af4c2de590e8027b779d",
      "parents": [
        "575d5e72aab57beb6d5fa2a7d66be9fc681a5e00"
      ],
      "author": {
        "name": "Greg Banks",
        "email": "gnb@sgi.com",
        "time": "Tue Feb 20 10:12:34 2007 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 19 16:13:28 2007 -0800"
      },
      "message": "[PATCH] Fix a free-wrong-pointer bug in nfs/acl server.\n\nDue to type confusion, when an nfsacl verison 2 \u0027ACCESS\u0027 request\nfinishes and tries to clean up, it calls fh_put on entiredly the\nwrong thing and this can cause an oops.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3160a711ef754758e7f85ae371cf900252c1a392",
      "tree": "d8c9e37b72c60c8b2c673bb4101bfbc9743a4163",
      "parents": [
        "bec50c47aaf6f1f9247f1860547ab394a0802a4c"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Feb 16 01:28:37 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:14:01 2007 -0800"
      },
      "message": "[PATCH] knfsd: nfsd4: fix handling of directories without default ACLs\n\nWhen setting an ACL that lacks inheritable ACEs on a directory, we should set\na default ACL of zero length, not a default ACL with all bits denied.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bec50c47aaf6f1f9247f1860547ab394a0802a4c",
      "tree": "c988f486976a75ae0694a28f127c58b738debe21",
      "parents": [
        "f43daf67871d9da5c638994416b4144eac63c992"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@snoopy.citi.umich.edu",
        "time": "Fri Feb 16 01:28:36 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:14:01 2007 -0800"
      },
      "message": "[PATCH] knfsd: nfsd4: acls: avoid unnecessary denies\n\nWe\u0027re inserting deny\u0027s between some ACEs in order to enforce posix draft acl\nsemantics which prevent permissions from accumulating across entries in an\nacl.\n\nThat\u0027s fine, but we\u0027re doing that by inserting a deny after *every* allow,\nwhich is overkill.  We shouldn\u0027t be adding them in places where they actually\nmake no difference.\n\nAlso replaced some helper functions for creating acl entries; I prefer just\nassigning directly to the struct fields--it takes a few more lines, but the\nfield names provide some documentation that I think makes the result easier\nunderstand.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f43daf67871d9da5c638994416b4144eac63c992",
      "tree": "6452a3c8e7b92a0e6d7c87d375e4c81d124756fb",
      "parents": [
        "f34f924274ad8f84c6d86ea9e52b0682347f5701"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@snoopy.citi.umich.edu",
        "time": "Fri Feb 16 01:28:34 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:14:01 2007 -0800"
      },
      "message": "[PATCH] knfsd: nfsd4: acls: don\u0027t return explicit mask\n\nReturn just the effective permissions, and forget about the mask.  It isn\u0027t\nworth the complexity.\n\nWARNING: This breaks backwards compatibility with overly-picky nfsv4-\u003eposix\nacl translation, as may has been included in some patched versions of libacl.\nTo our knowledge no such version was every distributed by anyone outside citi.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f34f924274ad8f84c6d86ea9e52b0682347f5701",
      "tree": "415bebb9cc9ca17f30bacc126d8e62fb0dc0d984",
      "parents": [
        "a4db5fe5dfb3a5b5b550f1acd95ef3de01a3f063"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Feb 16 01:28:34 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:14:01 2007 -0800"
      },
      "message": "[PATCH] knfsd: nfsd4: fix error return on unsupported acl\n\nWe should be returning ATTRNOTSUPP, not NOTSUPP, when acls are unsupported.\n\nAlso fix a comment.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a4db5fe5dfb3a5b5b550f1acd95ef3de01a3f063",
      "tree": "38d4ebad2877789d481185c973dbba449cbaee61",
      "parents": [
        "28e05dd8457c7a7fa1c3faac169a95e0ce4b4a12"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@snoopy.citi.umich.edu",
        "time": "Fri Feb 16 01:28:30 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:14:01 2007 -0800"
      },
      "message": "[PATCH] knfsd: nfsd4: fix memory leak on kmalloc failure in savemem\n\nThe wrong pointer is being kfree\u0027d in savemem() when defer_free returns with\nan error.\n\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "28e05dd8457c7a7fa1c3faac169a95e0ce4b4a12",
      "tree": "850b9db205c45d82706ec283fd13de74c1516630",
      "parents": [
        "575a6290f035b16e3301014d9b176422ec9062bb"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Feb 16 01:28:30 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:14:01 2007 -0800"
      },
      "message": "[PATCH] knfsd: nfsd4: represent nfsv4 acl with array instead of linked list\n\nSimplify the memory management and code a bit by representing acls with an\narray instead of a linked list.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "575a6290f035b16e3301014d9b176422ec9062bb",
      "tree": "a233a66a01fa5501868419669b52bfc0d348f938",
      "parents": [
        "7bdfa68c5e70b815e85dab0bdd9f48ec103c4002"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Feb 16 01:28:29 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:14:01 2007 -0800"
      },
      "message": "[PATCH] knfsd: nfsd4: simplify nfsv4-\u003eposix translation\n\nThe code that splits an incoming nfsv4 ACL into inheritable and effective\nparts can be combined with the the code that translates each to a posix acl,\nresulting in simpler code that requires one less pass through the ACL.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7bdfa68c5e70b815e85dab0bdd9f48ec103c4002",
      "tree": "0cb4068ea5f0281a624a4d259407243407bdaa24",
      "parents": [
        "f534a257acfd9dae0a689be64397919907b283ba"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Feb 16 01:28:28 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:14:01 2007 -0800"
      },
      "message": "[PATCH] knfsd: nfsd4: relax checking of ACL inheritance bits\n\nThe rfc allows us to be more permissive about the ACL inheritance bits we\naccept:\n\n\t\"If the server supports a single \"inherit ACE\" flag that applies to\n\tboth files and directories, the server may reject the request\n\t(i.e., requiring the client to set both the file and directory\n\tinheritance flags). The server may also accept the request and\n\tsilently turn on the ACE4_DIRECTORY_INHERIT_ACE flag.\"\n\nLet\u0027s take the latter option--the ACL is a complex attribute that could be\nrejected for a wide variety of reasons, and the protocol gives us little\nability to explain the reason for the rejection, so erroring out is a\nuser-unfriendly last resort.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f534a257acfd9dae0a689be64397919907b283ba",
      "tree": "dd8f00c1f2da1bc2f3391bc63378dff0caa5bdd2",
      "parents": [
        "5575ddf75ca7e61d6f69b96368e03dd88edd4604"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Feb 16 01:28:27 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:14:01 2007 -0800"
      },
      "message": "[PATCH] knfsd: nfsd4: fix non-terminated string\n\nThe server name is expected to be a null-terminated string, so we can\u0027t pass\nin the raw client identifier.\n\nWhat\u0027s more, the client identifier is just a binary, not necessarily\nprintable, blob.  Let\u0027s just use the ip address instead.  The server name\nappears to exist just to help debugging by making some printk\u0027s more\ninformative.\n\nNote that the string is copies into the rpc client structure, so the pointer\nto the local variable does not outlive the function call.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd354f1ae75e6466a7e31b727faede57a1f89ca5",
      "tree": "09a2da1672465fefbc7fe06ff4e6084f1dd14c6b",
      "parents": [
        "3fc605a2aa38899c12180ca311f1eeb61a6d867e"
      ],
      "author": {
        "name": "Tim Schmielau",
        "email": "tim@physik3.uni-rostock.de",
        "time": "Wed Feb 14 00:33:14 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:54 2007 -0800"
      },
      "message": "[PATCH] remove many unneeded #includes of sched.h\n\nAfter Al Viro (finally) succeeded in removing the sched.h #include in module.h\nrecently, it makes sense again to remove other superfluous sched.h includes.\nThere are quite a lot of files which include it but don\u0027t actually need\nanything defined in there.  Presumably these includes were once needed for\nmacros that used to live in sched.h, but moved to other header files in the\ncourse of cleaning it up.\n\nTo ease the pain, this time I did not fiddle with any header files and only\nremoved #includes from .c-files, which tend to cause less trouble.\n\nCompile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,\narm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,\nallmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all\nconfigs in arch/arm/configs on arm.  I also checked that no new warnings were\nintroduced by the patch (actually, some warnings are removed that were emitted\nby unnecessarily included header files).\n\nSigned-off-by: Tim Schmielau \u003ctim@physik3.uni-rostock.de\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "af6a4e280e3ff453653f39190b57b345ff0bec16"
}
