)]}'
{
  "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "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": "27459f0940e16c68e080f5fc7e85aa9eb3f74528",
      "tree": "f13cd1f2005dda2b6115e2afbc49e1271b0d374b",
      "parents": [
        "2442222283918c2d1c20ae651d95fe168757938b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:34 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Provide room in svc_rqst for larger addresses\n\nExpand the rq_addr field to allow it to contain larger addresses.\n\nSpecifically, we replace a \u0027sockaddr_in\u0027 with a \u0027sockaddr_storage\u0027, then\neverywhere the \u0027sockaddr_in\u0027 was referenced, we use instead an accessor\nfunction (svc_addr_in) which safely casts the _storage to _in.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\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": "b591480bbe1a7f0e90533bce8ea86efecc84648e",
      "tree": "43d75e2978ecf85bab894ec6afce8cc06c5480c1",
      "parents": [
        "c954e2a5d1c9662991a41282297ddebcadee0578"
      ],
      "author": {
        "name": "J.Bruce Fields",
        "email": "bfields@fieldses.org",
        "time": "Wed Dec 13 00:35:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:05:54 2006 -0800"
      },
      "message": "[PATCH] knfsd: nfsd4: reorganize compound ops\n\nDefine an op descriptor struct, use it to simplify nfsd4_proc_compound().\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a4f1706a9bd94d0e33e853a7e9f40b2650d54fbf",
      "tree": "66c2bb36ac0b9da3edb13bcee77a46ab576a5e89",
      "parents": [
        "d9e626f1e23358487595c2d3901126d00f9de7e0"
      ],
      "author": {
        "name": "J.Bruce Fields",
        "email": "bfields@fieldses.org",
        "time": "Wed Dec 13 00:35:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:05:54 2006 -0800"
      },
      "message": "[PATCH] knfsd: nfsd4: move replay_owner to cstate\n\nTuck away the replay_owner in the cstate 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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ca3643171bc6e08b7c4d1f9a2ce659541a01a7fe",
      "tree": "2128accc9584e7dd69f6b62c62ef6631f5da231f",
      "parents": [
        "01f3bd1f03599470e4695392b6ae055ed8506978"
      ],
      "author": {
        "name": "J.Bruce Fields",
        "email": "bfields@fieldses.org",
        "time": "Wed Dec 13 00:35:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:05:54 2006 -0800"
      },
      "message": "[PATCH] knfsd: nfsd4: pass saved and current fh together into nfsd4 operations\n\nPass the saved and current filehandles together into all the nfsd4 compound\noperations.\n\nI want a unified interface to these operations so we can just call them by\npointer and throw out the huge switch statement.\n\nAlso I\u0027ll eventually want a structure like this--that holds the state used\nduring compound processing--for deferral.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "451c11a161168fbdbba17573d4b062fdd2a4c2c4",
      "tree": "1ee261fe5b9dd5b439096b71d5335e78441f296b",
      "parents": [
        "b21a323710e77a27b2f66af901bd3640c30aba6e"
      ],
      "author": {
        "name": "J.Bruce Fields",
        "email": "bfields@fieldses.org",
        "time": "Wed Dec 13 00:35:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:05:53 2006 -0800"
      },
      "message": "[PATCH] knfsd: nfsd4: remove a dprink from nfsd4_lock\n\nThis dprintk is printing the wrong error now, but it\u0027s probably an unnecessary\ndprintk anyway; just remove 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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7eaa36e2d470ed63bf0c4e4dd8b09cc4a9e1c481",
      "tree": "f0242501eea54821150f6996807a80e9231bae89",
      "parents": [
        "01cce933d8b524d9312f5098c70fa1b6ac190572"
      ],
      "author": {
        "name": "Josef \"Jeff\" Sipek",
        "email": "jsipek@cs.sunysb.edu",
        "time": "Fri Dec 08 02:36:41 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:28:42 2006 -0800"
      },
      "message": "[PATCH] nfsd: change uses of f_{dentry, vfsmnt} to use f_path\n\nChange all the uses of f_{dentry,vfsmnt} to f_path.{dentry,mnt} in the nfs\nserver code.\n\nSigned-off-by: Josef \"Jeff\" Sipek \u003cjsipek@cs.sunysb.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e18b890bb0881bbab6f4f1a6cd20d9c60d66b003",
      "tree": "4828be07e1c24781c264b42c5a75bcd968223c3f",
      "parents": [
        "441e143e95f5aa1e04026cb0aa71c801ba53982f"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] slab: remove kmem_cache_t\n\nReplace all uses of kmem_cache_t with struct kmem_cache.\n\nThe patch was generated using the following script:\n\n\t#!/bin/sh\n\t#\n\t# Replace one string by another in all the kernel sources.\n\t#\n\n\tset -e\n\n\tfor file in `find * -name \"*.c\" -o -name \"*.h\"|xargs grep -l $1`; do\n\t\tquilt add $file\n\t\tsed -e \"1,\\$s/$1/$2/g\" $file \u003e/tmp/$$\n\t\tmv /tmp/$$ $file\n\t\tquilt refresh\n\tdone\n\nThe script was run like this\n\n\tsh replace kmem_cache_t \"struct kmem_cache\"\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c4028958b6ecad064b1a6303a6a5906d4fe48d73",
      "tree": "1c4c89652c62a75da09f9b9442012007e4ac6250",
      "parents": [
        "65f27f38446e1976cc98fd3004b110fedcddd189"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Nov 22 14:57:56 2006 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Nov 22 14:57:56 2006 +0000"
      },
      "message": "WorkStruct: make allyesconfig\n\nFix up for make allyesconfig.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "a90b061c0bf712961cea40d9c916b300073d12e5",
      "tree": "74514dbfc0e7814b983ad98bef55086539248d0a",
      "parents": [
        "c7afef1f963bec198b186cc34b9e8c9b9ce2e266"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Oct 19 23:29:03 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 20 10:26:43 2006 -0700"
      },
      "message": "[PATCH] nfsd: nfs_replay_me\n\nWe are using NFS_REPLAY_ME as a special error value that is never leaked to\nclients.  That works fine; the only problem is mixing host- and network-\nendian values in the same objects.  Network-endian equivalent would work just\nas fine; switch to it.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c7afef1f963bec198b186cc34b9e8c9b9ce2e266",
      "tree": "d3686ebea2e848e225e9927b8f6f164547d82719",
      "parents": [
        "f00f328fda1eeec575cd0f360da81b66bf4133a1"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Oct 19 23:29:02 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 20 10:26:43 2006 -0700"
      },
      "message": "[PATCH] nfsd: misc endianness annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b8dd7b9ab194d9ab322881f49fde42954757efae",
      "tree": "2709bca272730c061faee95bbbcac12343968de3",
      "parents": [
        "c4d987ba841dff4b2fc768e52d1d95af83f9f157"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Oct 19 23:29:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 20 10:26:43 2006 -0700"
      },
      "message": "[PATCH] nfsd: NFSv4 errno endianness annotations\n\ndon\u0027t use the same variable to store NFS and host error values\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b37ad28bcaa7c486a4ff0fb6c3bdaaacd67b86ce",
      "tree": "17bb3677f3e63dc469b64a123a74cee0266768df",
      "parents": [
        "6264d69d7df654ca64f625e9409189a0e50734e9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Oct 19 23:28:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 20 10:26:42 2006 -0700"
      },
      "message": "[PATCH] nfsd: nfs4 code returns error values in net-endian\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1a1d92c10dd24bbdc28b3d6e2d03ec199dd3a65b",
      "tree": "fade83955f75e718e39153d6f81d221403338bed",
      "parents": [
        "f52720ca5f48574e347dff35ffe6b389ace61537"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Sep 27 01:49:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:10 2006 -0700"
      },
      "message": "[PATCH] Really ignore kmem_cache_destroy return value\n\n* Rougly half of callers already do it by not checking return value\n* Code in drivers/acpi/osl.c does the following to be sure:\n\n\t(void)kmem_cache_destroy(cache);\n\n* Those who check it printk something, however, slab_error already printed\n  the name of failed cache.\n* XFS BUGs on failed kmem_cache_destroy which is not the decision\n  low-level filesystem driver should make. Converted to ignore.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f8314dc60ccba7e41f425048c4160dc7f63377d5",
      "tree": "4e361a6e93dc7f64da0244e5a0dfef1fface0ddb",
      "parents": [
        "32c2d2bc4bed61323f14f2a7d69ccbd567253d8a"
      ],
      "author": {
        "name": "Panagiotis Issaris",
        "email": "takis@issaris.org",
        "time": "Wed Sep 27 01:49:37 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:10 2006 -0700"
      },
      "message": "[PATCH] fs: Conversions from kmalloc+memset to k(z|c)alloc\n\nConversions from kmalloc+memset to kzalloc.\n\nSigned-off-by: Panagiotis Issaris \u003ctakis@issaris.org\u003e\nJffs2-bit-acked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9ecb6a08d84d0e795648d5add64f154bc406914b",
      "tree": "007e079b6bde7c6b0b7758d218d006e9f6bcab5d",
      "parents": [
        "ba5a6a19d83babe00be3711db3deee5c57587b8f"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Jun 30 01:56:17 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:40 2006 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: fix open flag passing\n\nSince nfsv4 actually keeps around the file descriptors it gets from open\n(instead of just using them for a single read or write operation), we need to\nmake sure that we can do RDWR opens and not just RDONLY/WRONLY.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ba5a6a19d83babe00be3711db3deee5c57587b8f",
      "tree": "ccc35a1a51b6952b58b0afa27ff556b2a617881f",
      "parents": [
        "1df0cada03644e37ae6fefd7c0267d9a531991e2"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Jun 30 01:56:16 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:40 2006 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: fix some open argument tests\n\nThese tests always returned true; clearly that wasn\u0027t what was intended.\n\nIn keeping with kernel style, make them functions instead of macros while\nwe\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6e46d8a9ccbcd3273bdb6902ca2b6da62c253e73",
      "tree": "fd5706307c249d7be444a2e4b21ac256203d1e56",
      "parents": [
        "7fc90ec93a5eb71f4b08403baf5ba7176b3ec6b1"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Jun 30 01:56:14 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:40 2006 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: remove superfluous grace period checks\n\nWe\u0027re checking nfs_in_grace here a few times when there isn\u0027t really any\nreason to--bad_stateid is probably the more sensible return value anyway.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a8cddc5dfc1d03a91885ef27eb91418e665577ce",
      "tree": "a9fc586e6b6262686c406c7393f0417aa805e5f8",
      "parents": [
        "7e4053645a67097fa9bec2794d685b1d3928757a"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Jun 30 01:56:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:40 2006 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: fix open_confirm locking\n\nFix an improper unlock in an error path.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "34af946a22724c4e2b204957f2b24b22a0fb121c",
      "tree": "7881dcbd0a698257c126198cdb6d97d4e45ee51e",
      "parents": [
        "b6cd0b772dcc5dc9b4c03d53946474dee399fa72"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 27 02:53:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:39 2006 -0700"
      },
      "message": "[PATCH] spin/rwlock init cleanups\n\nlocking init cleanups:\n\n - convert \" \u003d SPIN_LOCK_UNLOCKED\" to spin_lock_init() or DEFINE_SPINLOCK()\n - convert rwlocks in a similar manner\n\nthis patch was generated automatically.\n\nMotivation:\n\n - cleanliness\n - lockdep needs control of lock initialization, which the open-coded\n   variants do not give\n - it\u0027s also useful for -rt and for lock debugging in general\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f116629d03655adaf7832b93b03c99391d09d4a7",
      "tree": "526f689619817df3c23ab00e3228b4776bde2190",
      "parents": [
        "179e09172ab663b8587ecc46bb18a56a770304a9"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "mita@miraclelinux.com",
        "time": "Mon Jun 26 00:24:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:18 2006 -0700"
      },
      "message": "[PATCH] fs: use list_move()\n\nThis patch converts the combination of list_del(A) and list_add(A, B) to\nlist_move(A, B) under fs/.\n\nCc: Ian Kent \u003craven@themaw.net\u003e\nAcked-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nCc: Hans Reiser \u003creiserfs-dev@namesys.com\u003e\nCc: Urban Widmark \u003curban@teststation.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nSigned-off-by: Akinobu Mita \u003cmita@miraclelinux.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "358dd55aa3a77fbbae482b83d96733d9ad441d05",
      "tree": "d72352df2fc26e94a22202917df7db13c9563085",
      "parents": [
        "ef0f3390ebedac78bff1936bbb26606bca83e891"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Apr 10 22:55:42 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:53 2006 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: grant delegations more frequently\n\nKeep unused openowners around for at least one lease period, to avoid the need\nfor as many open confirmations and to allow handing out more delegations.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ef0f3390ebedac78bff1936bbb26606bca83e891",
      "tree": "86fceb6260a80b9d3ba41b13371b2be73198c300",
      "parents": [
        "4e2fd495b520b51e4ba83340f13520b7f07e3743"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Apr 10 22:55:41 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:53 2006 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: limit number of delegations handed out.\n\nIt\u0027s very easy for the server to DOS itself by just giving out too many\ndelegations.\n\nFor now we just solve the problem with a dumb hard limit.  Eventually we\u0027ll\nwant a smarter policy.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4e2fd495b520b51e4ba83340f13520b7f07e3743",
      "tree": "91bc6f41267df3e19a71016546484edb7e648527",
      "parents": [
        "541e0e09814594e907e18fb8d9fc9b746aa4b18a"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Apr 10 22:55:39 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:53 2006 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: add missing rpciod_down()\n\nWe should be shutting down rpciod for the callback channel when we shut down\nthe server.\n\nAlso note that we do rpciod_up() and create the callback client *before*\nsetting cb_set--the cb_set only determines whether the initial null was\nsuccesful.  So cb_set is not a reliable determiner of whether we need to clean\nup, only cb_client is.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5e8d5c29482dc56de5971ddc99c6e7f69e4d16f6",
      "tree": "fe50096b5742960ff6bcccbb053c1f9b379916c8",
      "parents": [
        "6f54e2d0d3a904e55c9c50b78542072f6c42080e"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Apr 10 22:55:37 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:52 2006 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: fix laundromat shutdown race\n\nWe need to make sure the laundromat work doesn\u0027t reschedule itself just when\nwe try to cancel it.  Also, we shouldn\u0027t be waiting for it to finish running\nwhile holding the state lock, as that\u0027s a potential deadlock.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e465a77f943f51df1a169426df879340bd0db3f3",
      "tree": "a9f11a318fd0ce3df430520a5c14c84e130402c4",
      "parents": [
        "d5b9026a670fdb404e6e2e2e0a1b447e9ea9c1f6"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Apr 10 22:55:23 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:51 2006 -0700"
      },
      "message": "[PATCH] fs/nfsd/nfs4state.c: make a struct static\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Marc Eshel \u003ceshel@almaden.ibm.com\u003e\nCc: Andy Adamson \u003candros@citi.umich.edu\u003e\nCc: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d5b9026a670fdb404e6e2e2e0a1b447e9ea9c1f6",
      "tree": "e657e09e5e1eb43f163775d1b8e599131516a67a",
      "parents": [
        "7775f4c85dcbd1175f21b2fbb7221c79ec70b722"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Apr 10 22:55:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:51 2006 -0700"
      },
      "message": "[PATCH] knfsd: locks: flag NFSv4-owned locks\n\nUse the fl_lmops field to identify which locks are ours, instead of trying to\nlook them up in our private hash.  This is safer and more efficient.\n\nEarlier versions of this patch used a lock flag instead, but Trond pointed out\nthat adding a new flag for each lock manager wasn\u0027t going to scale well, and\nsuggested this approach instead; a separate patch converts lockd to using\nfl_lmops in the same way.\n\nIn the NFSv4 case this looks like a bit of a hack, since the NFSv4 server\nisn\u0027t currently actually defining a lock_manager_operations struct, so we end\nup defining one *just* to serve as a cookie to identify our locks.\n\nBut it works, and we actually do expect to start using the\nlock_manager_operations at some point anyway.\n\nSigned-off-by: Marc Eshel \u003ceshel@almaden.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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "eb76b3fda1f7c2aa2d1523b36835048a15e5e5d2",
      "tree": "4a120685e7c1a3762a4da73d29327871f310a914",
      "parents": [
        "5842add2f3b519111b6401f3a35862bd00a3aa7e"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@citi.umich.edu",
        "time": "Sun Mar 26 01:37:26 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:56 2006 -0800"
      },
      "message": "[PATCH] NFSD4: return conflict lock without races\n\nUpdate the NFSv4 server to use the new posix_lock_file_conf() interface.\nRemove unnecessary (and race-prone) posix_test_file() calls.\n\nSigned-off-by: Andy Adamson \u003candros@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "353ab6e97b8f209dbecc9f650f1f84e3da2a7bb1",
      "tree": "bffabd9a5a493ffd2b41dd825e71e848ca6ba6d7",
      "parents": [
        "e655a250d5fc12b6dfe0d436180ba4a3bfffdc9f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 26 01:37:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:55 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: fs/\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Eric Van Hensbergen \u003cericvh@ericvh.myip.org\u003e\nCc: Robert Love \u003crml@tech9.net\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8dc7c3115b611c00006eac3ee5b108296432aab7",
      "tree": "be44c59907cbdcb6fdf46d0ad9cc140af757acfc",
      "parents": [
        "2e0af86f618c697b44e2d67dff151256c58201c4"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@citi.umich.edu",
        "time": "Mon Mar 20 13:44:26 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Mar 20 13:44:26 2006 -0500"
      },
      "message": "locks,lockd: fix race in nlmsvc_testlock\n\nposix_test_lock() returns a pointer to a struct file_lock which is unprotected\nand can be removed while in use by the caller.  Move the conflicting lock from\nthe return to a parameter, and copy the conflicting lock.\n\nIn most cases the caller ends up putting the copy of the conflicting lock on\nthe stack.  On i386, sizeof(struct file_lock) appears to be about 100 bytes.\nWe\u0027re assuming that\u0027s reasonable.\n\nSigned-off-by: Andy Adamson \u003candros@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "7fcd53303de8dbbed863f6471ca92eb96a1faa28",
      "tree": "6a2b08da2310c5dc5b57b11558ecc09ebd6ecba7",
      "parents": [
        "de1ae286f863c46b7c8f9bed97df17d7f5ea510c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jan 18 17:43:48 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:28 2006 -0800"
      },
      "message": "[PATCH] nfsd4_lock() returns bogus values to clients\n\nmissing nfserrno() in default case of a switch by return value of\nposix_lock_file(); as the result we send negative host-endian to clients that\nexpect positive network-endian, preferably mentioned in RFC...  BTW, that case\nis not impossible - posix_lock_file() can return -ENOLCK and we do not handle\nthat one explicitly.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "de1ae286f863c46b7c8f9bed97df17d7f5ea510c",
      "tree": "602de8f33e97b5138d465137dad7d0cc43411696",
      "parents": [
        "9246585a117f182d26a5a5c15872c3e8fcf44dd6"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jan 18 17:43:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:28 2006 -0800"
      },
      "message": "[PATCH] NFSERR_SERVERFAULT returned host-endian\n\n-\u003erp_status is network-endian and nobody byteswaps it before sending to\nclient; putting NFSERR_SERVERFAULT instead of nfserr_serverfault in there is\nnot nice...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9246585a117f182d26a5a5c15872c3e8fcf44dd6",
      "tree": "fe8d8ce681a9bf48f64d270fd95e128864962dfa",
      "parents": [
        "d75f2b9f5da71667aba7e97a962c49f1e17aa4ca"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jan 18 17:43:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:27 2006 -0800"
      },
      "message": "[PATCH] nfsd4_truncate() bogus return value\n\n-EINVAL (in host order, no less) is not a good thing to return to client.\n\nnfsd4_truncate() returns it in one case and its callers expect nfs_....  from\nit.  AFAICS, it should be nfserr_inval\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6c26d08f02f829a833d393c3f1b196538a9ec2c4",
      "tree": "6425e263f072a73db7ced341c4df9507ae46ccef",
      "parents": [
        "fb553c0f17444e090db951b96df4d2d71b4f4b6b"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jan 18 17:43:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:27 2006 -0800"
      },
      "message": "[PATCH] nfsd4: fix open_downgrade\n\nBad bookkeeping of the share reservations when handling open upgrades was\ncausing open downgrade to fail.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fb553c0f17444e090db951b96df4d2d71b4f4b6b",
      "tree": "4eb83eab183f5dd8786aef63768a15fca1155fa6",
      "parents": [
        "0f442aa299bb47046db4077d9c122a1b539311ce"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jan 18 17:43:36 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:26 2006 -0800"
      },
      "message": "[PATCH] nfsd4: don\u0027t create on open that fails due to ERR_GRACE\n\nIn an earlier patch (commit b648330a1d741d5df8a5076b2a0a2519c69c8f41) I noted\nthat a too-early grace-period check was preventing us from bumping the\nsequence id on open.  Unfortunately in that patch I stupidly moved the\ngrace-period check back too far, so now an open for create can succesfully\ncreate the file while still returning ERR_GRACE.\n\nThe correct place for that check is after we\u0027ve set the open_owner and handled\nany replays, but before we actually start mucking with the filesystem.\n\nThanks to Avishay Traeger for reporting the bug.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0f442aa299bb47046db4077d9c122a1b539311ce",
      "tree": "e7c04435a41d5084690ae0a70b593898dc25b0e7",
      "parents": [
        "375c5547cbf39423078535affac66c8afdc8fafb"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jan 18 17:43:34 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:26 2006 -0800"
      },
      "message": "[PATCH] nfsd4: simplify process-open1 logic\n\nnfsd4_process_open1 is very highly nested; flatten it out a bit.\n\nAlso, the preceding comment, which just outlines the logic, seems redundant.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ae8b625313db4dd4b060962c2a02f3a2837ca61b",
      "tree": "537c4cc4225321099423d37f85da9264e2b69c2b",
      "parents": [
        "a525825df15221a95d4c1f5a291d9fde77ef10bc"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jan 18 17:43:32 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:26 2006 -0800"
      },
      "message": "[PATCH] nfsd4: no replays on unconfirmed owners\n\nWe shouldn\u0027t check for replays until after checking whether the open owner is\nconfirmed.  Clients are allowed to reuse openowners without bumping the seqid.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "796dadfd02eda1e3e6e42ecc8379d8b1c1523ddf",
      "tree": "ff9d4c34f8b598aca7481d6b2bf41dd31a483c82",
      "parents": [
        "04ef59548470b81829e8593c1b39776ce0534d68"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jan 18 17:43:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:25 2006 -0800"
      },
      "message": "[PATCH] nfsd4: fix check_for_locks\n\nFix some bad logic.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "04ef59548470b81829e8593c1b39776ce0534d68",
      "tree": "846dbe3d17ac1a745c2f23642129b15c3c150d19",
      "parents": [
        "3a65588adc4401622b204caa897123e16a4a0318"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jan 18 17:43:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:25 2006 -0800"
      },
      "message": "[PATCH] nfsd4: remove release_state_owner()\n\nIt\u0027s confusing having both release_stateowner() and release_state_owner().\n\nAnd as it turns out, release_state_owner() is short and only called from one\nplace; so just remove it.\n\nAlso note the confirmed check is superfluous there--preprocess_seqid_op\nalready check this.\n\nAnd remove a redundant comment and a superfluous line assignment while we\u0027re\nat 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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3a65588adc4401622b204caa897123e16a4a0318",
      "tree": "a96a8d4a28608b49440062273c70565c1129165d",
      "parents": [
        "8a280510852959c0d51b1d625e90c0491c238368"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jan 18 17:43:19 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:24 2006 -0800"
      },
      "message": "[PATCH] nfsd4: rename lk_stateowner\n\nOne of the things that\u0027s confusing about nfsd4_lock is that the lk_stateowner\nfield could be set to either of two different lockowners: the open owner or\nthe lock owner.  Rename to lk_replay_owner and add a comment to make it clear\nthat it\u0027s used for whichever stateowner has its sequence id bumped for replay\ndetection.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8a280510852959c0d51b1d625e90c0491c238368",
      "tree": "e24b9167f5f979cc126f07ef32c851ab249a7766",
      "parents": [
        "a6f6ef2f1d7329111fcad7db48fb7adba5062d0a"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jan 18 17:43:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:24 2006 -0800"
      },
      "message": "[PATCH] nfsd4: fix nfsd4_lock cleanup on failure\n\nrelease_state_owner also puts the lock owner on the close_lru.  There\u0027s no\nneed for that, though; replays of the failed lock would be handled by the\nopenowner not the lockowner.\n\nAlso consolidate the cleanup a bit, fixing leaks that can happen if errors\noccur between the time a new lock owner is allocated and the lock is done.\n\nRemove a comment and dprintk that look a little redundant.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a6f6ef2f1d7329111fcad7db48fb7adba5062d0a",
      "tree": "7fd08104892870699c8f191e2e23b753b5b119d5",
      "parents": [
        "1918e341383ab787d6c5b17200f4ed901b10c777"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@citi.umich.edu",
        "time": "Wed Jan 18 17:43:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:24 2006 -0800"
      },
      "message": "[PATCH] nfsd4: misc lock fixes\n\nLogic fixes for LOCK and UNLOCK.\n\n- Move the permission check on the current file handle outside of\n  nfs4_lock_state()\n\n- remove the file manager fl_release_private calls; fl_ops is not set.\n\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "73aea4ecd38ebeff9e322f738057f4ae2c32a3ee",
      "tree": "cabc00b17b3f96854cd818ea7e26734ac855843c",
      "parents": [
        "b59e3c0e172e3f3a147021aa16b929482b8d5846"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@suse.de",
        "time": "Tue Sep 13 01:25:39 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 13 08:22:32 2005 -0700"
      },
      "message": "[PATCH] nfsd4: fix setclientid unlock of unlocked state lock\n\nWe could try to unlock the state lock here without having first locked 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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b59e3c0e172e3f3a147021aa16b929482b8d5846",
      "tree": "60aec6ff8a214adfa828af8a89460aca55731d46",
      "parents": [
        "f2327d9adb1e948a7041128e971effd8d6e2d42c"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@suse.de",
        "time": "Tue Sep 13 01:25:38 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 13 08:22:32 2005 -0700"
      },
      "message": "[PATCH] nfsd4: fix open seqid incrementing in lock\n\nIn the case of a lock which introduces a new lockowner, the openowner\u0027s\nsequence id should be incremented, even when the operation fails, if the\nerror is a sequence-id-mutating error.  The current code fails to do that\nin some cases.  Fix this by using the same sequence-id-incrementing\nmechanism that all other such operations 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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f2327d9adb1e948a7041128e971effd8d6e2d42c",
      "tree": "c71c0eaee80dac069b7bb4f7d2e14bcbcfee14fe",
      "parents": [
        "849823c52d9c96cf777038670bb0ee3a291ca69d"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@suse.de",
        "time": "Tue Sep 13 01:25:37 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 13 08:22:31 2005 -0700"
      },
      "message": "[PATCH] nfsd4: move replay_owner\n\nIt seems more natural to move the setting of the replay_owner into the\nrelevant procedure instead of doing it in nfsv4_proc_compound.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "849823c52d9c96cf777038670bb0ee3a291ca69d",
      "tree": "d593c56185566e1257bf9483509c8ce5acad5ee6",
      "parents": [
        "fff71312e7227c6850f367ff9c72f96d5b33b1d0"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@suse.de",
        "time": "Tue Sep 13 01:25:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 13 08:22:31 2005 -0700"
      },
      "message": "[PATCH] nfsd4: printk reduction\n\nDemote some printk\u0027s that look like they could be triggered by non-buggy\nclients to dprintk\u0027s.  (For example, stale clientid\u0027s are normal\noccurrences on reboot, and on a server with a lot of clients these messages\ncould become annoying.)\n\nAlso remove some redundant dprintk\u0027s (e.g. no need for both STALE_CLIENTID\nand its callers to do dprintks).\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4c4cd222ee329025840bc2f8cebf71d36c62440c",
      "tree": "70d1d8e754e7ab7226a6eee6afeab8b892072600",
      "parents": [
        "3a4f98bbf481cb9f755005ac569ceb5303e1b69f"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:27 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:11 2005 -0700"
      },
      "message": "[PATCH] nfsd4: check lock type against openmode.\n\nWe shouldn\u0027t be allowing, e.g., write locks on files not open for read.  To\nenforce this, we add a pointer from the lock stateid back to the open stateid\nit came from, so that the check will continue to be correct even after the\nopen is upgraded or downgraded.\n\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@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3a4f98bbf481cb9f755005ac569ceb5303e1b69f",
      "tree": "a3dfac239801fd5d96222f48a1f2caf59a650826",
      "parents": [
        "f8816512fcfde986326a2eb0f5a58e463d9904d8"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:26 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:10 2005 -0700"
      },
      "message": "[PATCH] nfsd4: clean up nfs4_preprocess_seqid_op\n\nAs long as we\u0027re here, do some miscellaneous cleanup.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f8816512fcfde986326a2eb0f5a58e463d9904d8",
      "tree": "3f79b8c23a393c119e0de31294c2843d7bd3b01e",
      "parents": [
        "52fd004e296ac07cde820af9e3139d47dda03cf8"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:25 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:10 2005 -0700"
      },
      "message": "[PATCH] nfsd4: clarify close_lru handling\n\nThe handling of close_lru in preprocess_stateid_op was a source of some\nconfusion here recently.  Try to make the logic a little clearer, by renaming\nfind_openstateowner_id to make its purpose clearer and untangling some\nunnecessarily complicated goto\u0027s.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "52fd004e296ac07cde820af9e3139d47dda03cf8",
      "tree": "1ded0ee9f0f3df0a268a09ef6873c8ae2a75cbff",
      "parents": [
        "b700949b781480819e53bdc38a53f053226dd75e"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:24 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:09 2005 -0700"
      },
      "message": "[PATCH] nfsd4: renew lease on seqid modifying operations\n\nnfs4_preprocess_seqid_op is called by NFSv4 operations that imply an implicit\nrenewal of the client lease.\n\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@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b700949b781480819e53bdc38a53f053226dd75e",
      "tree": "1e09ac2b3e4c39e7167d4780f21ebaa416a1092a",
      "parents": [
        "444c2c07c2d7a6936d1381d381ab80e3f5541427"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:23 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:09 2005 -0700"
      },
      "message": "[PATCH] nfsd4: return better error on io incompatible with open mode\n\nfrom RFC 3530:\n\"Share reservations are established by OPEN operations and by their\nnature are mandatory in that when the OPEN denies READ or WRITE\noperations, that denial results in such operations being rejected\nwith error NFS4ERR_LOCKED.\"\n\n(Note that share_denied is really only a legal error for OPEN.)\n\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@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "444c2c07c2d7a6936d1381d381ab80e3f5541427",
      "tree": "b4dc8b6ccc33208b39d01b8505c4a759b6ebdf7b",
      "parents": [
        "e66770cd7b0c36f28a2f6eb0957c0575ac8b3787"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:22 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:09 2005 -0700"
      },
      "message": "[PATCH] nfsd4: always update stateid on open\n\nAn OPEN from the same client/open stateowner requires a stateid update because\nof the share/deny access update.\n\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@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e66770cd7b0c36f28a2f6eb0957c0575ac8b3787",
      "tree": "ee5bcf1ac04eac19c72fad96863bc7b0327a3f47",
      "parents": [
        "7fb64cee34f5dc743f697041717cafda8a94b5ac"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:21 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:09 2005 -0700"
      },
      "message": "[PATCH] nfsd4: relax new lock seqid check\n\nWe\u0027re insisting that the lock sequence id field passed in the\nopen_to_lockowner struct always be zero.  This is probably thanks to the\nsentence in rfc3530: \"The first request issued for any given lock_owner is\nissued with a sequence number of zero.\"\n\nBut there doesn\u0027t seem to be any problem with allowing initial sequence\nnumbers other than zero.  And currently this is causing lock reclaims from the\nLinux client to fail.\n\nIn the spirit of \"be liberal in what you accept, conservative in what you\nsend\", we\u0027ll relax the check (and patch the Linux client as well).\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bd9aac523b812d58e644fde5e59f5697fb9e3822",
      "tree": "a3adb8ac833a8e776cca8df91e96f85aa28e81c6",
      "parents": [
        "893f87701c9e5bd5610dfbb3f8bf1135f86d85cb"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:19 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:09 2005 -0700"
      },
      "message": "[PATCH] nfsd4: fix open_reclaim seqid\n\nThe sequence number we store in the sequence id is the last one we received\nfrom the client.  So on the next operation we\u0027ll check that the client gives\nus the next higher number.\n\nWe increment sequence id\u0027s at the last moment, in encode, so that we\u0027re sure\nof knowing the right error return.  (The decision to increment the sequence id\ndepends on the exact error returned.)\n\nHowever on the *first* use of a sequence number, if we set the sequence number\nto the one received from the client and then let the increment happen on\nencode, we\u0027ll be left with a sequence number one to high.\n\nFor that reason, ENCODE_SEQID_OP_TAIL only increments the sequence id on\n*confirmed* stateowners.\n\nThis creates a problem for open reclaims, which are confirmed on first use.\nTherefore the open reclaim code, as a special exception, *decrements* the\nsequence id, cancelling out the undesired increment on encode.  But this\nprevents the sequence id from ever being incremented in the case where\nmultiple reclaims are sent with the same openowner.  Yuch!\n\nWe could add another exception to the open reclaim code, decrementing the\nsequence id only if this is the first use of the open owner.\n\nBut it\u0027s simpler by far to modify the meaning of the op_seqid field: instead\nof representing the previous value sent by the client, we take op_seqid, after\nencoding, to represent the *next* sequence id that we expect from the client.\nThis eliminates the need for special-case handling of the first use of a\nstateowner.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "893f87701c9e5bd5610dfbb3f8bf1135f86d85cb",
      "tree": "ee2de8fd627624cedc0c0e7067dd4892e160db67",
      "parents": [
        "375151773125f56b7f6d798d914ea469256b330b"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:17 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:08 2005 -0700"
      },
      "message": "[PATCH] nfsd4: comment indentation\n\nYeah, it\u0027s trivial, but this drives me up the wall....\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "375151773125f56b7f6d798d914ea469256b330b",
      "tree": "2bc6c0d8d2a075b9daa2aa7dca440f572c566629",
      "parents": [
        "0dd395dc76071a06eea39839cc946c1241af3650"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:16 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:08 2005 -0700"
      },
      "message": "[PATCH] nfsd4: stop overusing RECLAIM_BAD\n\nA misreading of the spec lead us to convert all errors on open and lock\nreclaims to RECLAIM_BAD.  This causes problems--for example, a reboot within\nthe grace period could lead to reclaims with stale stateid\u0027s, and we\u0027d like to\nreturn STALE errors in those cases.\n\nWhat rfc3530 actually says about RECLAIM_BAD: \"The reclaim provided by the\nclient does not match any of the server\u0027s state consistency checks and is\nbad.\" I\u0027m assuming that \"state consistency checks\" refers to checks for\nconsistency with the state recorded to stable storage, and that the error\nshould be reserved for that case.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0dd395dc76071a06eea39839cc946c1241af3650",
      "tree": "f4b9b8b013dfebcba296f1f8145f8535521db3ae",
      "parents": [
        "b648330a1d741d5df8a5076b2a0a2519c69c8f41"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:15 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:08 2005 -0700"
      },
      "message": "[PATCH] nfsd4: ERR_GRACE should bump seqid on lock\n\nA GRACE or NOGRACE response to a lock request should also bump the sequence\nid.  So we delay the handling of grace period errors till after we\u0027ve found\nthe relevant owner.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b648330a1d741d5df8a5076b2a0a2519c69c8f41",
      "tree": "aa53fc54675d3c7b51aa8f86f5f8929acd0f85a3",
      "parents": [
        "0fa822e452084032b8495ca0d8e0199329847815"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:15 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:08 2005 -0700"
      },
      "message": "[PATCH] nfsd4: ERR_GRACE should bump seqid on open\n\nThe GRACE and NOGRACE errors should bump the sequence id on open.  So we delay\nthe handling of these errors until nfsd4_process_open2, at which point we\u0027ve\nset the open owner, so the encode routine will be able to bump the sequence\nid.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0fa822e452084032b8495ca0d8e0199329847815",
      "tree": "5be25dc1f1222d2998a9754e5b5e26d516601b9d",
      "parents": [
        "67be431350941765e211eeed237c12def3aaba70"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:14 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:08 2005 -0700"
      },
      "message": "[PATCH] nfsd4: fix release_lockowner\n\nWe oops in list_for_each_entry(), because release_stateowner frees something\non the list we\u0027re traversing.\n\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@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "463090294e1e460cf97f5ade376d4b1e62bc5263",
      "tree": "eaf3f7b7c0bbc7c16aa39c77252da436bf62df06",
      "parents": [
        "89b39f5d8d701ddd93546b3d8edbefa5d568529d"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:10 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:07 2005 -0700"
      },
      "message": "[PATCH] nfsd4: reboot recovery fix\n\nWe need to remove the recovery directory here too.  (This chunk just got lost\nsomehow in the process of commuting the reboot recovery patches past the other\npatches.)\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0964a3d3f1aa96468091924f6b0c391a46dc6d0b",
      "tree": "0a6b0587d1922d64ca7e4aa7f306ad869bccf452",
      "parents": [
        "c7b9a45927e74c81d6562153f7fde9d32da00159"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:32 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:36 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4 reboot dirname fix\n\nSet the recovery directory via /proc/fs/nfsd/nfs4recoverydir.\n\nIt may be changed any time, but is used only on startup.\n\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@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c7b9a45927e74c81d6562153f7fde9d32da00159",
      "tree": "d21fb5d43052bce7469c168d1ad485c821a42079",
      "parents": [
        "190e4fbf96037e5e526ba3210f2bcc2a3b6fe964"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:30 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:36 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: reboot recovery\n\nThis patch adds the code to create and remove client subdirectories from the\nrecovery directory, as described in the previous patch comment.\n\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@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "190e4fbf96037e5e526ba3210f2bcc2a3b6fe964",
      "tree": "957fb35a6a2895622c4db0052160fd91d06153e8",
      "parents": [
        "cb36d6345752fa24827044c68e15f6708a40d9f6"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:25 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:35 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: initialize recovery directory\n\nNFSv4 clients are required to know what state they have on the server so that\nthey can reclaim it on server reboot.  However, it is possible for\npathalogical combinations of server reboots and network partitions to leave a\nclient in a state where it cannot know whether it has lost its state on the\nserver.\n\nFor this reason, rfc3530 requires that we store some information about clients\nto stable storage.\n\nSo we maintain a directory /var/lib/nfs/v4recovery with a subdirectory for\neach client with active state.  We leave open the possibility of including\nfiles underneath each such subdirectory with information about the client, but\nfor now the subdirectories are empty.\n\nWe create a client subdirectory whenever a client makes its first non-reclaim\nopen_confirm.\n\nWe remove a client subdirectory whenever either\n        a) its lease expires, or\n\tb) the grace period ends without it reclaiming anything.\nWhen handling reclaims, we allow the reclaim if and only if the client doing\nthe reclaim has a subdirectory.\n\nThis patch adds just the code to scan the recovery directory on nfsd startup.\n\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@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cb36d6345752fa24827044c68e15f6708a40d9f6",
      "tree": "adc6b7201525c87685815037cfa5fd1c248f6e95",
      "parents": [
        "3e9e3dbe0fe36c824ce2c5d7b05997c87a64bbdc"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:23 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:35 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: remove cb_parsed\n\nThe cb_parsed field is only used by probe_callback, to determine whether the\ncallback information has been filled in by setclientid.  But there is no way\nthat probe_callback() can be called without that having already happened, so\nthat check is superfluous, as is cb_parsed.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3e9e3dbe0fe36c824ce2c5d7b05997c87a64bbdc",
      "tree": "f8291afbbe83259c5309d1b4b968359f1bf63fd4",
      "parents": [
        "ea1da636e956ad1591a74904f23d98bbc26a644b"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:20 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:35 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: allow multiple lockowners\n\n\u003eFrom the language of rfc3530 section 8.1.3 (e.g., the suggestion that a\n\"process id\" might be a reasonable lockowner value) it\u0027s conceivable that a\nclient might want to use the same lockowner string on multiple files, so we may\nas well allow that.  We expect each use of open_to_lockowner to create a\ndistinct seqid stream, though.\n\nFor now we\u0027re also allowing multiple uses of open_to_lockowner with the same\nopen, though it seems unlikely clients would actually do that.\n\nAlso add a comment reminding myself of some very non-scalable data structures.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ea1da636e956ad1591a74904f23d98bbc26a644b",
      "tree": "193d0667adad25b094e209856dfcc1300d1d85dc",
      "parents": [
        "21ab45a480ec7705d177e959ebf452d62340c004"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:17 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:35 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: rename state list fields\n\nTrivial renaming patch:\n\nI can never remember, while looking at various lists relating the nfsd4 state\nstructures, which are the \"heads\" and which are items on other lists, or which\nstructures are actually on the various lists.  The following convention helps\nme: given structures foo and bar, with foo containing the head of a list of\nbars, use \"bars\" for the name of the head of the list contained in the struct\nfoo, and use \"per_foo\" for the entries in the struct bars.\n\nAlready done for struct nfs4_file; go ahead and do it for the other nfsd4\nstate structures.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "21ab45a480ec7705d177e959ebf452d62340c004",
      "tree": "019722d5b362e78ca50cf21823d1b8d6f221a9a7",
      "parents": [
        "7c79f7377cd4f2a50d51475f4c7966a3e60596a7"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:14 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:34 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: miscellaneous setclientid_confirm cleanup\n\nMinor cleanup, remove some unnecessary printk\u0027s.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7c79f7377cd4f2a50d51475f4c7966a3e60596a7",
      "tree": "96dbf206231739934ba95a76281dbea1504800d2",
      "parents": [
        "08e8987c37cd04d2df211c1e019d8f165d44266e"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:13 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:34 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: setclientid_confirm comments\n\nTrivial whitespace and comment fixes.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "08e8987c37cd04d2df211c1e019d8f165d44266e",
      "tree": "5cce86377d0bcae663940acd2600d45b8dc4153d",
      "parents": [
        "22de4d837439071a0bec897485d3911383b6ffad"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:11 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:34 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: setclientid_confirm gotoectomy\n\nChange from \"goto\" to \"else if\" format in setclientid_confirm.\n\nFrom: Fred Isaman\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "22de4d837439071a0bec897485d3911383b6ffad",
      "tree": "060a06df409be203303f78d8be2adfe913e64249",
      "parents": [
        "1a69c179a28a9bb9f4d086927b192d5cffe88e50"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:09 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:34 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: fix setclientid_confirm error return\n\nNFS4_INVAL is not a valid error for setclientid_confirm, and INUSE is the more\nlogical error here anyway.\n\nFrom: Fred Isaman\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1a69c179a28a9bb9f4d086927b192d5cffe88e50",
      "tree": "e2155b4eb77f6d98f8643238b2836065abe1a836",
      "parents": [
        "31f4a6c127f619886bf97f643e546f7788248f3f"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:08 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:34 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: fix setclientid_confirm cases\n\nSetclientid_confirm code confused states 1 and 3 (numbering from the\nIMPLEMENTATION section of rfc3530, section 14.2.33).  Fix this.\n\nState 1 allows the client to change the callback channel on the fly.  We don\u0027t\nimplement this currently, so just turn off the callback channel in this case.\n\nFrom: Fred Isaman\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "31f4a6c127f619886bf97f643e546f7788248f3f",
      "tree": "5c473562ea9051e42a53631f26486959d43fcaa4",
      "parents": [
        "fd39ca9a808c6026989bc2188868a0574eb37108"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:06 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:33 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: fix uncomfirmed list\n\nSetclientid code assumes there is only one match in unconfirmed list.\nMake sure that assumption holds.\n\nFrom: Fred Isaman\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fd39ca9a808c6026989bc2188868a0574eb37108",
      "tree": "9dbb4df308afd32e1a913e3df9c828863c6f98ee",
      "parents": [
        "a76b4319ca85b5e3a8098470c623a272d40271cd"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:03 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:33 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: make needlessly global code static\n\nThis patch contains the following possible cleanups:\n\n- make needlessly global code static\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a76b4319ca85b5e3a8098470c623a272d40271cd",
      "tree": "c9e862136b066c0bccf6a1a0d977a71b58542d87",
      "parents": [
        "28ce6054f1de89834e5e9522f9e451cd88a35f85"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:04:01 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:33 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: grace period end\n\nFor the purposes of reboot recovery, we want to do some work during the\ntransition period at the end of the grace period.  Some of that work must be\nguaranteed to have a certain relationship with the end of the grace period, so\nwe want to control the transition there.\n\nOur approach is to modify the in_grace() checks to consult a global variable\ninstead of checking the time directly, to schedule the first run of the\nlaundromat thread at the end of the grace period, and to set the global\nend-of-grace-period there.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "28ce6054f1de89834e5e9522f9e451cd88a35f85",
      "tree": "653406eb3f3323fd15086007f1ced3a1f090c0e0",
      "parents": [
        "a55370a3c0106106a975c5a09cee800611d0cf50"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:03:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:33 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: add find_{un}conf_by_str functions to simplify setclientid\n\nMinor setclientid cleanup\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a55370a3c0106106a975c5a09cee800611d0cf50",
      "tree": "408d5dc0ecf970c103ef091388e66da267adb2e2",
      "parents": [
        "7dea9d280c96f90382ec5d5709433e66a0993ec9"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:03:52 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:33 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: reboot hash\n\nFor the purposes of reboot recovery we keep a directory with subdirectories\neach having a name that is the ascii hex representation of the md5 sum of a\nclient identifier for an active client.\n\nThis adds the code to calculate that name.  We also use it for the purposes of\ncomparing clients, so if someone ever manages to find two client names that\nare md5 collisions, then we\u0027ll return clid_inuse to the second.\n\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@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7dea9d280c96f90382ec5d5709433e66a0993ec9",
      "tree": "046d0665956b1c37fbacaa12276bc8cc2c4b5049",
      "parents": [
        "bd0b1e954e3ba3e5d2cab941458cf98206471bd2"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:03:42 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:32 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: setclientid simplification\n\nWe can be a little more concise here.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "707d4ab7b3aa6d1f7a7d2cd123fb83ba9a528205",
      "tree": "b5b12bf45baacc0659fd419a5df93166710748f3",
      "parents": [
        "ac4d8ff2a57179de3ef7834c6ab3fac430b0a05d"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:03:32 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:32 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: remove nfs4_reclaim_init\n\nnfs4_reclaim_init is no longer performing any useful function.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ac4d8ff2a57179de3ef7834c6ab3fac430b0a05d",
      "tree": "8c0f7125177a47d4140a73e4b59309a5bb3ffd2c",
      "parents": [
        "76a3550ec50ed86885a10a767ebaebb7c9104721"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:03:30 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:32 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: clean up state initialization\n\nSeparate out stuff that needs initialization on startup from stuff that only\nneeds initialization on module init from static data.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "76a3550ec50ed86885a10a767ebaebb7c9104721",
      "tree": "0961d1eb0a61378852cf90f203dba09a22ac012d",
      "parents": [
        "7b190fecfa33d72bcf74c9473134c2ad14ae9545"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jun 23 22:03:26 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:06:31 2005 -0700"
      },
      "message": "[PATCH] knfsd: nfsd4: rename nfs4_state_init\n\nSomewhat gratuitous rename to simplify following patch.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "7b190fecfa33d72bcf74c9473134c2ad14ae9545"
}
