)]}'
{
  "log": [
    {
      "commit": "03550fac06c4f0c39a1885d46015c28794413c82",
      "tree": "090c03e257149a034263b81a95742ce1fdcaebc6",
      "parents": [
        "c3bb257d2d3a1a4e49372b9d74eaebe0fcf110dd"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Mar 14 17:51:12 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Apr 23 16:13:41 2008 -0400"
      },
      "message": "nfsd: move most of fh_verify to separate function\n\nMove the code that actually parses the filehandle and looks up the\ndentry and export to a separate function.  This simplifies the reference\ncounting a little and moves fh_verify() a little closer to the kernel\nideal of small, minimally-indentended functions.  Clean up a few other\nminor style sins along the way.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "b663c6fd98c9cf586279db03cec3257c413efd00",
      "tree": "f268ae9e706044f48d2f95fcb4841ce89c70cf4b",
      "parents": [
        "9b89ca7a3847c0d5b1e86e83f4860a866f28a89b"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Mar 14 19:37:11 2008 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 14 16:49:15 2008 -0700"
      },
      "message": "nfsd: fix oops on access from high-numbered ports\n\nThis bug was always here, but before my commit 6fa02839bf9412e18e77\n(\"recheck for secure ports in fh_verify\"), it could only be triggered by\nfailure of a kmalloc().  After that commit it could be triggered by a\nclient making a request from a non-reserved port for access to an export\nmarked \"secure\".  (Exports are \"secure\" by default.)\n\nThe result is a struct svc_export with a reference count one too low,\nresulting in likely oopses next time the export is accessed.\n\nThe reference counting here is not straightforward; a later patch will\nclean up fh_verify().\n\nThanks to Lukas Hejtmanek for the bug report and followup.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nCc: Lukas Hejtmanek \u003cxhejtman@ics.muni.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5216a8e70e25b01cbd2915cd0442fb96deb2c262",
      "tree": "f372bd3cb3fc2f4a2d3e4ad303e6c4d3f8f48865",
      "parents": [
        "90dc7d2796edf94a9eaa838321a9734c8513e717"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Feb 21 10:57:45 2008 +0300"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Feb 21 18:42:29 2008 -0500"
      },
      "message": "Wrap buffers used for rpc debug printks into RPC_IFDEBUG\n\nSorry for the noise, but here\u0027s the v3 of this compilation fix :)\n\nThere are some places, which declare the char buf[...] on the stack\nto push it later into dprintk(). Since the dprintk sometimes (if the\nCONFIG_SYSCTL\u003dn) becomes an empty do { } while (0) stub, these buffers\ncause gcc to produce appropriate warnings.\n\nWrap these buffers with RPC_IFDEBUG macro, as Trond proposed, to\ncompile them out when not needed.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5477549161480432d053565d2720f08626baf9e3",
      "tree": "0993666627a6f53f5c7cc9277a329760ccc1002d",
      "parents": [
        "448678a0f3cdd0157f00e98bd337e32030273637"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Thu Feb 14 19:38:39 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:17:08 2008 -0800"
      },
      "message": "Use struct path in struct svc_export\n\nI\u0027m embedding struct path into struct svc_export.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[ezk@cs.sunysb.edu: NFSD: fix wrong mnt_writer count in rename]\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nAcked-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Erez Zadok \u003cezk@cs.sunysb.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2e8138a274d81d87591db0803b1e81f4284ff935",
      "tree": "3243d448d11cdee1ec4ff2b190509ef70887b566",
      "parents": [
        "dbf847ecb6318d3a22c6758fe39696d00f39063a"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Thu Nov 15 17:05:43 2007 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Feb 01 16:42:05 2008 -0500"
      },
      "message": "nfsd: move nfsd/auth.h into fs/nfsd\n\nThis header is used only in a few places in fs/nfsd, so there seems to\nbe little point to having it in include/.  (Thanks to Robert Day for\npointing this out.)\n\nCc: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nAcked-by: NeilBrown \u003cneilb@suse.de\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "6fa02839bf9412e18e773d04e96182b4cd0b5d57",
      "tree": "063ee35d4da2bd1289ae9e9a64b5f02c825ef5f2",
      "parents": [
        "ac8587dcb58e40dd336d99d60f852041e06cc3dd"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Nov 12 16:05:03 2007 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Nov 12 14:28:08 2007 -0800"
      },
      "message": "nfsd4: recheck for secure ports in fh_verify\n\nAs with commit 7fc90ec93a5eb71f4b08403baf5ba7176b3ec6b1 (\"knfsd: nfsd:\ncall nfsd_setuser() on fh_compose(), fix nfsd4 permissions problem\")\nthis is a case where we need to redo a security check in fh_verify()\neven though the filehandle already has an associated dentry--if the\nfilehandle was created by fh_compose() in an earlier operation of the\nnfsv4 compound, then we may not have done these checks yet.\n\nWithout this fix it is possible, for example, to traverse from an export\nwithout the secure ports requirement to one with it in a single\ncompound, and bypass the secure port check on the new export.\n\nWhile we\u0027re here, fix up some minor style problems and change a printk()\nto a dprintk(), to make it harder for random unprivileged users to spam\nthe logs.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nReviewed-By: NeilBrown \u003cneilb@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6e91ea2bb0b6a3ddf6d4faeb54a9c20d4e20bc42",
      "tree": "3f20a72d6c36620d071c485206b39e2e32546fc6",
      "parents": [
        "00bf4098beb15ca174b54f3af1f1e1908d7d18a3"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Oct 21 16:42:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 22 08:13:19 2007 -0700"
      },
      "message": "exportfs: add fid type\n\nThis patchset is a medium scale rewrite of the export operations interface.\nThe goal is to make the interface less complex, and easier to understand from\nthe filesystem side, aswell as preparing generic support for exporting of\n64bit inode numbers.\n\nThis touches all nfs exporting filesystems, and I\u0027ve done testing on all of\nthe filesystems I have here locally (xfs, ext2, ext3, reiserfs, jfs)\n\nThis patch:\n\nAdd a structured fid type so that we don\u0027t have to pass an array of u32 values\naround everywhere.  It\u0027s a union of possible layouts.\n\nAs a start there\u0027s only the u32 array and the traditional 32bit inode format,\nbut there will be more in one of my next patchset when I start to document the\nvarious filehandle formats we have in lowlevel filesystems better.\n\nAlso add an enum that gives the various filehandle types human- readable\nnames.\n\nNote: Some people might think the struct containing an anonymous union is\nugly, but I didn\u0027t want to pass around a raw union type.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Anton Altaparmakov \u003caia21@cantab.net\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: Timothy Shimmin \u003ctes@sgi.com\u003e\nCc: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Chris Mason \u003cmason@suse.com\u003e\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: \"Vladimir V. Saveliev\" \u003cvs@namesys.com\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b8da0d1c27f144bce999c653467106f3f0d5a308",
      "tree": "eedc2f54d8dd6768b953b4d9e1b6075b62fc21ad",
      "parents": [
        "a1033be72cdb053e182bb41e302a1c11e72b68bb"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@suse.de",
        "time": "Wed Sep 05 17:22:13 2007 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Sep 10 18:57:47 2007 -0700"
      },
      "message": "knfsd: Validate filehandle type in fsid_source\n\nfsid_source decided where to get the \u0027fsid\u0027 number to\nreturn for a GETATTR based on the type of filehandle.\nIt can be from the device, from the fsid, or from the\nUUID.\n\nIt is possible for the filehandle to be inconsistent\nwith the export information, so make sure the export information\nactually has the info implied by the value returned by\nfsid_source.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"Luiz Fernando N. Capitulino\" \u003clcapitulino@gmail.com\u003e\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9091224f3cff4721f295df29e8a99705a63bc4c7",
      "tree": "a3fdc31dc0697003029a06b8088a8a81f54e41c4",
      "parents": [
        "4796f45740bc6f2e3e6cc14e7ed481b38bd0bd39"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd: allow auth_sys nlm on rpcsec_gss exports\n\nOur clients (like other clients, as far as I know) use only auth_sys for nlm,\neven when using rpcsec_gss for the main nfs operations.\n\nAdministrators that want to deny non-kerberos-authenticated locking requests\nwill need to turn off NFS protocol versions less than 4....\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ec757df9743025f14190d6034d8bd2bf37c2dd1",
      "tree": "77436cbdc8c241aceab2daed243606e17e126771",
      "parents": [
        "32c1eb0cd7ee00b5eb7b6f7059c635fbc1052966"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd4: make readonly access depend on pseudoflavor\n\nAllow readonly access to vary depending on the pseudoflavor, using the flag\npassed with each pseudoflavor in the export downcall.  The rest of the flags\nare ignored for now, though some day we might also allow id squashing to vary\nbased on the flavor.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "32c1eb0cd7ee00b5eb7b6f7059c635fbc1052966",
      "tree": "c1a15e47d2dd93417b38d374346332809d461bda",
      "parents": [
        "6c0a654dceaa4342270306de77eadb0173dfb58a"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@citi.umich.edu",
        "time": "Tue Jul 17 04:04:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd4: return nfserr_wrongsec\n\nMake the first actual use of the secinfo information by using it to return\nnfserr_wrongsec when an export is found that doesn\u0027t allow the flavor used on\nthis request.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Andy Adamson \u003candros@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ab4d8b1215d61736e2a9a26bea7cc2e6b029e3d",
      "tree": "6b256e44c4ed5295dfd55eef8641093b91692559",
      "parents": [
        "0989a7889695831e49e2c53c1884f52645516a90"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:46 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd: set rq_client to ip-address-determined-domain\n\nWe want it to be possible for users to restrict exports both by IP address and\nby pseudoflavor.  The pseudoflavor information has previously been passed\nusing special auth_domains stored in the rq_client field.  After the preceding\npatch that stored the pseudoflavor in rq_pflavor, that\u0027s now superfluous; so\nnow we use rq_client for the ip information, as auth_null and auth_unix do.\n\nHowever, we keep around the special auth_domain in the rq_gssclient field for\nbackwards compatibility purposes, so we can still do upcalls using the old\n\"gss/pseudoflavor\" auth_domain if upcalls using the unix domain to give us an\nappropriate export.  This allows us to continue supporting old mountd.\n\nIn fact, for this first patch, we always use the \"gss/pseudoflavor\"\nauth_domain (and only it) if it is available; thus rq_client is ignored in the\nauth_gss case, and this patch on its own makes no change in behavior; that\nwill be left to later patches.\n\nNote on idmap: I\u0027m almost tempted to just replace the auth_domain in the idmap\nupcall by a dummy value--no version of idmapd has ever used it, and it\u0027s\nunlikely anyone really wants to perform idmapping differently depending on the\nwhere the client is (they may want to perform *credential* mapping\ndifferently, but that\u0027s a different matter--the idmapper just handles id\u0027s\nused in getattr and setattr).  But I\u0027m updating the idmapd code anyway, just\nout of general backwards-compatibility paranoia.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0989a7889695831e49e2c53c1884f52645516a90",
      "tree": "f2548a7ebdedbe89121c40c0157f5554093fb0d7",
      "parents": [
        "87548c37c8bdbf98aea002c9c04e4dc8aa27fe1b"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd: provide export lookup wrappers which take a svc_rqst\n\nSplit the callers of exp_get_by_name(), exp_find(), and exp_parent() into\nthose that are processing requests and those that are doing other stuff (like\nlooking up filehandles for mountd).\n\nNo change in behavior, just a (fairly pointless, on its own) cleanup.\n\n(Note this has the effect of making nfsd_cross_mnt() pass rqstp-\u003erq_client\ninstead of exp-\u003eex_client into exp_find_by_name().  However, the two should\nhave the same value at this point.)\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2d3bb25209c1f9a27ea9535c7fd2f6729a5e7db1",
      "tree": "487ccec9aaf60298d4cb7b2fc5f4d76072bcc60b",
      "parents": [
        "47f9940c55c0bdc65188749cae4e841601f513bb"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@puzzle.fieldses.org",
        "time": "Tue Jul 17 04:04:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd: make all exp_finding functions return -errno\u0027s on err\n\nCurrently exp_find(), exp_get_by_name(), and friends, return an export on\nsuccess, and on failure return:\n\n\terrors -EAGAIN (drop this request pending an upcall) or\n\t\t-ETIMEDOUT (an upcall has timed out), or\n\treturn NULL, which can mean either that there was a memory allocation\n\t\tfailure, or that an export was not found, or that a passed-in\n\t\texport lacks an auth_domain.\n\nMany callers seem to assume that NULL means that an export was not found,\nwhich may lead to bugs in the case of a memory allocation failure.\n\nModify these functions to distinguish between the two NULL cases by returning\neither -ENOENT or -ENOMEM.  They now never return NULL.  We get to simplify\nsome code in the process.\n\nWe return -ENOENT in the case of a missing auth_domain.  This case should\nprobably be removed (or converted to a bug) after confirming that it can never\nhappen.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d37065cd6d6bbe98fd4be14d6c9e64c0bfa124c5",
      "tree": "03a996d3d93a4d5ebd737519f7a6f959ecdbce0d",
      "parents": [
        "5ca29607331fe37980dc3b488793ef8b1409b722"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Jul 17 04:04:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:06 2007 -0700"
      },
      "message": "knfsd: exportfs: add procedural interface for NFSD\n\nCurrently NFSD calls directly into filesystems through the export_operations\nstructure.  I plan to change this interface in various ways in later patches,\nand want to avoid the export of the default operations to NFSD, so this patch\nadds two simple exportfs_encode_fh/exportfs_decode_fh helpers for NFSD to call\ninstead of poking into exportfs guts.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a569425512253992cc64ebf8b6d00a62f986db3e",
      "tree": "7ea72c75c54697bddbad807af89cc549d7426a69",
      "parents": [
        "6dd4ac3b30b81b5bd0d628af1c89b7da689a38ea"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Jul 17 04:04:28 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:06 2007 -0700"
      },
      "message": "knfsd: exportfs: add exportfs.h header\n\ncurrently the export_operation structure and helpers related to it are in\nfs.h.  fs.h is already far too large and there are very few places needing the\nexport bits, so split them off into a separate header.\n\n[akpm@linux-foundation.org: fix cifs build]\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: Steven French \u003csfrench@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b41eeef14d7c73af6d16c7d02b7a939082a137ff",
      "tree": "eafe41b86a825f7effc4ba596c56507451c60367",
      "parents": [
        "072f62ed85a71bbb3429a52678500ec9f9441e0d"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed May 09 02:34:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:54 2007 -0700"
      },
      "message": "knfsd: avoid Oops if buggy userspace performs confusing filehandle-\u003edentry mapping\n\nWhen a lookup request arrives, nfsd uses information provided by userspace\n(mountd) to find the right filesystem.\n\nIt then assumes that the same filehandle type as the incoming filehandle can\nbe used to create an outgoing filehandle.\n\nHowever if mountd is buggy, or maybe just being creative, the filesystem may\nnot support that filesystem type, and the kernel could oops, particularly if\n\u0027ex_uuid\u0027 is NULL but a FSID_UUID* filehandle type is used.\n\nSo add some proper checking that the fsid version/type from the incoming\nfilehandle is actually supportable, and ignore that information if it isn\u0027t\nsupportable.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e63340ae6b6205fef26b40a75673d1c9c0c8bb90",
      "tree": "8d3212705515edec73c3936bb9e23c71d34a7b41",
      "parents": [
        "04c9167f91e309c9c4ea982992aa08e83b2eb42e"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue May 08 00:28:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:07 2007 -0700"
      },
      "message": "header cleaning: don\u0027t include smp_lock.h when not used\n\nRemove includes of \u003clinux/smp_lock.h\u003e where it is not used/needed.\nSuggested by Al Viro.\n\nBuilds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,\nsparc64, and arm (all 59 defconfigs).\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a033f35a2206e28af8109c62b403d940ba89d2b9",
      "tree": "b3e66110c5d7ed1470d11cb6004a67af74999f8a",
      "parents": [
        "24b29dbcf382b12b58bc33fb4d0abb13d6ddc073"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Wed Mar 14 09:16:24 2007 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Mar 14 15:27:49 2007 -0700"
      },
      "message": "[PATCH] include of asm/pgtable.h in nfsfh is bogus\n\nnot needed and actually breaks build on frv, while we are at it\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd354f1ae75e6466a7e31b727faede57a1f89ca5",
      "tree": "09a2da1672465fefbc7fe06ff4e6084f1dd14c6b",
      "parents": [
        "3fc605a2aa38899c12180ca311f1eeb61a6d867e"
      ],
      "author": {
        "name": "Tim Schmielau",
        "email": "tim@physik3.uni-rostock.de",
        "time": "Wed Feb 14 00:33:14 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:54 2007 -0800"
      },
      "message": "[PATCH] remove many unneeded #includes of sched.h\n\nAfter Al Viro (finally) succeeded in removing the sched.h #include in module.h\nrecently, it makes sense again to remove other superfluous sched.h includes.\nThere are quite a lot of files which include it but don\u0027t actually need\nanything defined in there.  Presumably these includes were once needed for\nmacros that used to live in sched.h, but moved to other header files in the\ncourse of cleaning it up.\n\nTo ease the pain, this time I did not fiddle with any header files and only\nremoved #includes from .c-files, which tend to cause less trouble.\n\nCompile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,\narm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,\nallmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all\nconfigs in arch/arm/configs on arm.  I also checked that no new warnings were\nintroduced by the patch (actually, some warnings are removed that were emitted\nby unnecessarily included header files).\n\nSigned-off-by: Tim Schmielau \u003ctim@physik3.uni-rostock.de\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "af6a4e280e3ff453653f39190b57b345ff0bec16",
      "tree": "4895c90613737db7354f43431ed10a55dc0c98f0",
      "parents": [
        "982aedfd091e6d9831216f8519f12242091be4fd"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed Feb 14 00:33:12 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:53 2007 -0800"
      },
      "message": "[PATCH] knfsd: add some new fsid types\n\nAdd support for using a filesystem UUID to identify and export point in the\nfilehandle.\n\nFor NFSv2, this UUID is xor-ed down to 4 or 8 bytes so that it doesn\u0027t take up\ntoo much room.  For NFSv3+, we use the full 16 bytes, and possibly also a\n64bit inode number for exports beneath the root of a filesystem.\n\nWhen generating an fsid to return in \u0027stat\u0027 information, use the UUID (hashed\ndown to size) if it is available and a small \u0027fsid\u0027 was not specifically\nprovided.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "982aedfd091e6d9831216f8519f12242091be4fd",
      "tree": "88dd7b785c86f29ad68d6a116d39a037d64929d0",
      "parents": [
        "8971a1016b9db4164c3c1b47ae1fde2818becf91"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed Feb 14 00:33:11 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:53 2007 -0800"
      },
      "message": "[PATCH] knfsd: tidy up choice of filesystem-identifier when creating a filehandle\n\nIf we are using the same version/fsid as a current filehandle, then there is\nno need to verify the the numbers are valid for this export, and they must be\n(we used them to find this export).\n\nThis allows us to simplify the fsid selection code.\n\nAlso change \"ref_fh_version\" and \"ref_fh_fsid_type\" to \"version\" and\n\"fsid_type\", as the important thing isn\u0027t that they are the version/type of\nthe reference filehandle, but they are the chosen type for the new filehandle.\n\nAnd tidy up some indenting.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ad06e4bd62351bc569cca0f25d68c58dbd298146",
      "tree": "82024c01e61de32af17d3b67eac0bb93138a2954",
      "parents": [
        "1ba951053f07187f6e77be664a4b6f8bf0ba7ae4"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:32 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Add a function to format the address in an svc_rqst for printing\n\nThere are loads of places where the RPC server assumes that the rq_addr fields\ncontains an IPv4 address.  Top among these are error and debugging messages\nthat display the server\u0027s IP address.\n\nLet\u0027s refactor the address printing into a separate function that\u0027s smart\nenough to figure out the difference between IPv4 and IPv6 addresses.\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": "fc2dd2e51a1940acac665696e6a70a1a73dc90a4",
      "tree": "2d93ca70d56c3409360377dad5c5c2fb5cde7bfe",
      "parents": [
        "eb7972271720bfc64dc8bacc5b15f874c0bcc859"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Feb 01 13:52:43 2007 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 01 16:17:06 2007 -0800"
      },
      "message": "[PATCH] endianness bug: ntohl() misspelled as \u003e\u003e 24 in fh_verify().\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "34e9a63b4f3e169b583f6ba2e26356ecbf932fba",
      "tree": "445562aa7159ef7ec3d29f8e1cc18d578d9bfcae",
      "parents": [
        "d019bcf0eb9a55c51f1c57659f923d356b4675e1"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jan 29 13:19:52 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jan 30 08:26:45 2007 -0800"
      },
      "message": "[PATCH] knfsd: ratelimit some nfsd messages that are triggered by external events\n\nAlso remove {NFSD,RPC}_PARANOIA as having the defines doesn\u0027t really add\nanything.\n\nThe printks covered by RPC_PARANOIA were triggered by badly formatted\npackets and so should be ratelimited.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e0bb89ef031f76dcb9c9d920d18b13948f1418da",
      "tree": "6016032b160db2cf697eea19cd0f12ace946c7cc",
      "parents": [
        "021d3a72459191a76e8e482ee4937ba6bc9fd712"
      ],
      "author": {
        "name": "J.Bruce Fields",
        "email": "bfields@fieldses.org",
        "time": "Wed Dec 13 00:35:25 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:05:54 2006 -0800"
      },
      "message": "[PATCH] knfsd: nfsd: don\u0027t drop silently on upcall deferral\n\nTo avoid tying up server threads when nfsd makes an upcall (to mountd, to get\nexport options, to idmapd, for nfsv4 name\u003c-\u003eid mapping, etc.), we temporarily\n\"drop\" the request and save enough information so that we can revisit it\nlater.\n\nCertain failures during the deferral process can cause us to really drop the\nrequest and never revisit it.\n\nThis is often less than ideal, and is unacceptable in the NFSv4 case--rfc 3530\nforbids the server from dropping a request without also closing the\nconnection.\n\nAs a first step, we modify the deferral code to return -ETIMEDOUT (which is\ntranslated to nfserr_jukebox in the v3 and v4 cases, and remains a drop in the\nv2 case).\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": "83b11340d683a67a77e35a5ffb5ad4afbf0be4e5",
      "tree": "3290de0b43b4e2190ad91be70ebf9472f7ae6c36",
      "parents": [
        "63f103111fdfc3cba00e4c94921d32362f375d93"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Oct 19 23:28:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 20 10:26:41 2006 -0700"
      },
      "message": "[PATCH] nfsfh simple 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": "d1bbf14f37261c2c0dba71404602e1ddcec069d2",
      "tree": "7b01141c31b73f277079cbcdb88be6ac8da2add1",
      "parents": [
        "a5ca63cb60892c1703998daf80d2d1b04cb70103"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Sun Jul 30 03:03:16 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 31 13:28:37 2006 -0700"
      },
      "message": "[PATCH] knfsd: Fix stale file handle problem with subtree_checking.\n\nA recent commit (7fc90ec93a5eb71f4b08403baf5ba7176b3ec6b1) moved the\ncall to nfsd_setuser out of the \u0027find a dentry for a filehandle\u0027 branch\nof fh_verify so that it would always be called.\n\nThis had the unfortunately side-effect of moving *after* the call to\ndecode_fh, so the prober fsuid was not set when nfsd_acceptable was called,\nthe \u0027permission\u0027 check did the wrong thing.\n\nThis patch moves the nfsd_setuser call back where it was, and add as call\nin the other branch of the if.\n\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\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": "7fc90ec93a5eb71f4b08403baf5ba7176b3ec6b1",
      "tree": "4fc33145b741f153a49d3623b77de82251b7316a",
      "parents": [
        "a8cddc5dfc1d03a91885ef27eb91418e665577ce"
      ],
      "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: nfsd: call nfsd_setuser() on fh_compose(), fix nfsd4 permissions problem\n\nIn the typical v2/v3 case the only new filehandles used as arguments to\noperations are filehandles taken directly off the wire, which don\u0027t get\ndentries until fh_verify() is called.\n\nBut in v4 the filehandles that are arguments to operations were often created\nby previous operations (putrootfh, lookup, etc.) using fh_compose, which sets\nthe dentry in the filehandle without calling nfsd_setuser().\n\nThis also means that, for example, if filesystem B is mounted on filesystem A,\nand filesystem A is exported without root-squashing, then a client can bypass\nthe rootsquashing on B using a compound that starts at a filehandle in A,\ncrosses into B using lookups, and then does stuff in B.\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": "7e4053645a67097fa9bec2794d685b1d3928757a",
      "tree": "17efce223986ff09650ba2cb3acf8ab348424880",
      "parents": [
        "4c9608b2f2f51e84eba72f4bf061d360259ce656"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Jun 30 01:56:12 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:40 2006 -0700"
      },
      "message": "[PATCH] knfsd: ignore ref_fh when crossing a mountpoint\n\nnfsd tries to return to a client the same sort of filehandle as was used by\nthe client.  This removes some filehandle aliasing issues and means that a\nserver upgrade followed by a downgrade will not confused clients not restarted\nduring that time.\n\nHowever when crossing a mountpoint, the filehandle used for one filesystem\ndoesn\u0027t provide any useful information on what sort of filehandle should be\nused on the other, and can provide misleading information.  So if the\nreference filehandle is on a different filesystem to the one being generated,\nignore it.\n\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": "4c9608b2f2f51e84eba72f4bf061d360259ce656",
      "tree": "e77a19f0dfd21b2d6a67542ef032f3aa69cf8e4a",
      "parents": [
        "4bdff8c0950afa6a3f2efec6cd15159d97fac1e6"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Jun 30 01:56:11 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:40 2006 -0700"
      },
      "message": "[PATCH] knfsd: remove noise about filehandle being uptodate\n\nThere is a perfectly valid situation where fh_update gets called on an already\nuptodate filehandle - in nfsd_create_v3 where a CREATE_UNCHECKED finds an\nexisting file and wants to just set the size.\n\nWe could possible optimise out the call in that case, but the only harm\ninvolved is that fh_update prints a warning, so it is easier to remove the\nwarning.\n\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": "baab935ff3bdac20c558809da0d8e8f761840219",
      "tree": "a22c3189505fe8e7ab3820c988ffd771c0b64fa6",
      "parents": [
        "ebd0cb1af3be2729cc1f574681dfba01fcf458d9"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Mar 27 01:15:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:43 2006 -0800"
      },
      "message": "[PATCH] knfsd: Convert sunrpc_cache to use krefs\n\n.. it makes some of the code nicer.\n\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": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
