)]}'
{
  "log": [
    {
      "commit": "dcecae0ff44dceea7adb6bef5c8eb660fe87a93c",
      "tree": "bd17c6708b58eb1f00be2057ed662a53eeb192cd",
      "parents": [
        "d7422c472bbaa419876b91e8823c6219c4a144cb"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:58:59 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:56 2008 -0500"
      },
      "message": "NFS: Change nfs4_set_client() to accept struct sockaddr *\n\nAdjust the arguments and callers of nfs4_set_client() to pass a \"struct\nsockaddr *\" instead of a \"struct sockaddr_in *\" to support non-IPv4\naddresses in the NFS client.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d7422c472bbaa419876b91e8823c6219c4a144cb",
      "tree": "930f354403bb67124c9b218e100cac707a9abc71",
      "parents": [
        "ff052645c939b2fd8d467105adf98fa621cc244b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:58:51 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:55 2008 -0500"
      },
      "message": "NFS: Change nfs_get_client() to take sockaddr *\n\nAdjust arguments and callers of nfs_get_client() to pass a\n\"struct sockaddr *\" instead of \"struct sockaddr_in *\" to support\nnon-IPv4 addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ff052645c939b2fd8d467105adf98fa621cc244b",
      "tree": "8f7a3030c8d052952dc08ade77da67395143cd8b",
      "parents": [
        "c1d35866566bc2b270a82445271fcce1e391c4b9"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:58:44 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:55 2008 -0500"
      },
      "message": "NFS: Change nfs_find_client() to take \"struct sockaddr *\"\n\nAdjust arguments and callers of nfs_find_client() to pass a\n\"struct sockaddr *\" instead of \"struct sockaddr_in *\" to support non-IPv4\naddresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\n\nTrond: Also fix up protocol version number argument in nfs_find_client() to\nuse the correct u32 type.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c1d35866566bc2b270a82445271fcce1e391c4b9",
      "tree": "598fd6c4f2ab29bb9ecd005c54bae53344392114",
      "parents": [
        "671beed7e28d9d27eef256862f6c1783a1da147e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:58:29 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:55 2008 -0500"
      },
      "message": "NFS: Change cb_recallargs to pass \"struct sockaddr *\" instead of sockaddr_in\n\nChange the addr field in the cb_recallargs struct to a \"struct sockaddr *\"\nto support non-IPv4 addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "671beed7e28d9d27eef256862f6c1783a1da147e",
      "tree": "425a6db6d29d6823d0247a98094dfac2ff8eb821",
      "parents": [
        "6e4cffd7b2cf86022dcf9cceeb63f16ff852caa1"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:58:22 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:54 2008 -0500"
      },
      "message": "NFS: Change cb_getattrargs to pass \"struct sockaddr *\" instead of sockaddr_in\n\nChange the addr field in the cb_getattrargs struct to a \"struct sockaddr *\"\nto support non-IPv4 addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6e4cffd7b2cf86022dcf9cceeb63f16ff852caa1",
      "tree": "9f92711937e876f2e2e143c612fcbfb7c1b7d03a",
      "parents": [
        "3b0d3f93d01bb013c3dcf9555d2d111c91ac6a1e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:58:15 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:54 2008 -0500"
      },
      "message": "NFS: Expand server address storage in nfs_client struct\n\nPrepare for managing larger addresses in the NFS client by widening the\nnfs_client struct\u0027s cl_addr field.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\n\n(Modified to work with the new parameters for nfs_alloc_client)\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3b0d3f93d01bb013c3dcf9555d2d111c91ac6a1e",
      "tree": "b59e7051ffad487d6c621ffe9526e3d9dd037a1d",
      "parents": [
        "0d0f0c192df0282600c6d11c8cc252e7e7a80afc"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jan 03 13:28:58 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:54 2008 -0500"
      },
      "message": "NFS: Add support for AF_INET6 addresses in __nfs_find_client()\n\nIntroduce AF_INET6-specific address checking to __nfs_find_client().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0d0f0c192df0282600c6d11c8cc252e7e7a80afc",
      "tree": "06b3e96d326d243c266f9e1ae3ed3798080ab904",
      "parents": [
        "04dcd6e3aceedff9fcc96ce3014688d5b642d627"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:58:00 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:54 2008 -0500"
      },
      "message": "NFS: Set default port for NFSv4, with support for AF_INET6\n\nCreate a helper function to set the default NFS port for NFSv4 mount\npoints.  The helper supports both AF_INET and AF_INET6 family addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "04dcd6e3aceedff9fcc96ce3014688d5b642d627",
      "tree": "814b5d9eab6f7c6600efc4d6b1553f5d346afd26",
      "parents": [
        "cdcd7f9abc8c95524376835fbe8e11c5f7bf588e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:57:53 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:53 2008 -0500"
      },
      "message": "NFS: Make setting a port number agostic\n\nWe\u0027ll need to set the port number of an AF_INET or AF_INET6 address in\nseveral places in fs/nfs/super.c, so introduce a helper that can manage\nthis for us.  We put this helper to immediate use.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cdcd7f9abc8c95524376835fbe8e11c5f7bf588e",
      "tree": "574eb3c74a70e7b872d971b262ca1f13abce2002",
      "parents": [
        "fd00a8ff8e37815c9df49f5cf09786e441e1396b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:57:45 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:53 2008 -0500"
      },
      "message": "NFS: Verify IPv6 addresses properly\n\nAdd support to nfs_verify_server_address for recognizing AF_INET6\naddresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fd00a8ff8e37815c9df49f5cf09786e441e1396b",
      "tree": "b6e4caf750834591c0991f9aa55b26f1f02b530d",
      "parents": [
        "3f43c6667acb4e02962b2829a4d4ebb6b6e6f70e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:57:38 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:53 2008 -0500"
      },
      "message": "NFS: Add support for AF_INET6 addresses in nfs_compare_super()\n\nRefactor nfs_compare_super() and add AF_INET6 support.\n\nReplace the generic memcmp() to document explicitly what parts of the\naddresses must match in this check, and make the comparison independent\nof the lengths of both addresses.\n\nA side benefit is both tests are more computationally efficient than a\nmemcmp().\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3f43c6667acb4e02962b2829a4d4ebb6b6e6f70e",
      "tree": "7aacec451f882c77d624d4486ac877bf48498674",
      "parents": [
        "1d98fe6717c5786394268da430a4354f6205da54"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:57:31 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:52 2008 -0500"
      },
      "message": "NFS: Address a couple of nits in nfs_follow_referral()\n\nClean up: fix an outdated block comment, and address a comparison\nbetween a signed and unsigned integer.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1d98fe6717c5786394268da430a4354f6205da54",
      "tree": "f2deab2462455562dae67c38ac19aa653c0ce544",
      "parents": [
        "5d8515caeb99940f5ed56d22a03aba20bbe7fdcb"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:57:23 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:52 2008 -0500"
      },
      "message": "NFS: Move dprintks from callback.c to callback_proc.c\n\nClean up: The client side peer address is available in callback_proc.c,\nso move a dprintk out of fs/nfs/callback.c and into\nfs/nfs/callback_proc.c.\n\nThis is more consistent with other debugging messages, and the proc\nroutines have more information about each request to display.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5d8515caeb99940f5ed56d22a03aba20bbe7fdcb",
      "tree": "b17ec1fc7bf34a73f65bf8c4b9f837beb54a64f9",
      "parents": [
        "d4d3c507493afd3c9d19fbe9762f44e790909dbe"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:57:16 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:52 2008 -0500"
      },
      "message": "NFS: eliminate NIPQUAD(clp-\u003ecl_addr.sin_addr)\n\nTo ensure the NFS client displays IPv6 addresses properly, replace\naddress family-specific NIPQUAD() invocations with a call to the RPC\nclient to get a formatted string representing the remote peer\u0027s\naddress.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d4d3c507493afd3c9d19fbe9762f44e790909dbe",
      "tree": "1ebbc2d84e3c058258701acf3e96aa5f6c309451",
      "parents": [
        "4392f2592297876967191238a341667a6d4fc456"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:57:09 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:51 2008 -0500"
      },
      "message": "NFS: Enable NFS client to generate CLIENTID strings with IPv6 addresses\n\nWe recently added methods to RPC transports that provide string versions of\nthe remote peer address information.  Convert the NFSv4 SETCLIENTID\nprocedure to use those methods instead of building the client ID out of\nwhole cloth.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4392f2592297876967191238a341667a6d4fc456",
      "tree": "752a74033c647bd659d17e57155d23418d6e333d",
      "parents": [
        "cc38bac3a0093b3b7928efc6ff8e9faf9e75f41d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:57:01 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:51 2008 -0500"
      },
      "message": "NFS: Increase size of cl_ipaddr field to hold IPv6 addresses\n\nThe nfs_client\u0027s cl_ipaddr field needs to be larger to hold strings that\nrepresent 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: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cc38bac3a0093b3b7928efc6ff8e9faf9e75f41d",
      "tree": "971f0653619e9068408d2938af37147f7448a53d",
      "parents": [
        "0fb2b7e945f55a8317e5f58db7c068aab5b825a1"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:56:54 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:51 2008 -0500"
      },
      "message": "NFS: Ensure NFSv4 SETCLIENTID send buffer is large enough\n\nEnsure that the RPC buffer size specified for NFSv4 SETCLIENTID procedures\nmatches what we are encoding into the buffer.  See the definition of\nstruct nfs4_setclientid {} and the encode_setclientid() function.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0fb2b7e945f55a8317e5f58db7c068aab5b825a1",
      "tree": "3463c1bfe730486292309d0851ad2dd94c081e23",
      "parents": [
        "0a48f5d70fa9e87269d076fe27f3563f4375c479"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:56:46 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:50 2008 -0500"
      },
      "message": "SUNRPC: Move universal address definitions to global header\n\nUniversal addresses are defined in RFC 1833 and clarified in RFC 3530.  We\nneed to use them in several places in the NFS and RPC clients, so move the\nrelevant definition and block comment to an appropriate global include\nfile.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0a48f5d70fa9e87269d076fe27f3563f4375c479",
      "tree": "07190661a43c9492d305c25a9615c2340b91b6a5",
      "parents": [
        "9f6ad26d2abfd9a2ec4a34b934ca75c4239ab8cf"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:56:38 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:50 2008 -0500"
      },
      "message": "SUNRPC: RPC version numbers are u32\n\nClean up: use correct type for RPC version numbers in rpcbind client.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "9f6ad26d2abfd9a2ec4a34b934ca75c4239ab8cf",
      "tree": "9b02d2180d4ff4bfce6db27f856aa119bbc1ac18",
      "parents": [
        "510deb0d7035d4fd465627deb3a119ca854f9e00"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:56:31 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:50 2008 -0500"
      },
      "message": "SUNRPC: Fix socket address handling in rpcb_clnt\n\nMake sure rpcb_clnt passes the correct address length to rpc_create().\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "510deb0d7035d4fd465627deb3a119ca854f9e00",
      "tree": "ffc7af675601c88ef8843ddb5a64db8b8da7ee91",
      "parents": [
        "40c553193df41920de659f0446e5d214c862e827"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:56:24 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:49 2008 -0500"
      },
      "message": "SUNRPC: rpc_create() default hostname should support AF_INET6 addresses\n\nIf the ULP doesn\u0027t pass a hostname string to rpc_create(), it manufactures\none based on the passed-in address.  Be smart enough to handle an AF_INET6\naddress properly in this case.\n\nMove the default servername logic before the xprt_create_transport() call\nto simplify error handling in rpc_create().\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "40c553193df41920de659f0446e5d214c862e827",
      "tree": "4ee62a79fae0ebba26d119a1aae89bfd1a552c10",
      "parents": [
        "c81468a1a766921f11ae44e8a99816ac8dc7b015"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Dec 14 14:56:07 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:49 2008 -0500"
      },
      "message": "NFS: Remove the redundant nfs_client-\u003ecl_nfsversion\n\nWe can get the same information from the rpc_ops structure instead.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c81468a1a766921f11ae44e8a99816ac8dc7b015",
      "tree": "8a336f5246f92be261cfc85fa8eedeef0922614b",
      "parents": [
        "3a498026eef9603c14037e73a4a94cfdb2fa44eb"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Dec 14 14:56:05 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:48 2008 -0500"
      },
      "message": "NFS: Clean up the nfs_find_client function.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3a498026eef9603c14037e73a4a94cfdb2fa44eb",
      "tree": "995ef695dd329242073915cc82be8c95987c036c",
      "parents": [
        "bfc69a456642a51c89dfd8e5184468857cb44f32"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Dec 14 14:56:04 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:48 2008 -0500"
      },
      "message": "NFS: Clean up the nfs_client initialisation\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bfc69a456642a51c89dfd8e5184468857cb44f32",
      "tree": "0853b31afcc2c8bd24a0e94e9280d1c1083501de",
      "parents": [
        "5cce428d953cc3843b100e078dbc3c01c6411b85"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Oct 15 18:18:29 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:47 2008 -0500"
      },
      "message": "NFS: define a function to update nfsi-\u003ecache_change_attribute\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5cce428d953cc3843b100e078dbc3c01c6411b85",
      "tree": "29a61ee7ae3dff46c240cd7c45ed22aa69c44064",
      "parents": [
        "d45273ed6f4613e81701c3e896d9db200c288fff"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:33:01 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:46 2008 -0500"
      },
      "message": "NFS: Remove an unneeded check in decode_compound_header_arg()\n\nClean up:  The header tag length is unsigned, so checking that it is less\nthan zero is unnecessary.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d45273ed6f4613e81701c3e896d9db200c288fff",
      "tree": "5108c42f43de3098fe6192e192b872899c8060c1",
      "parents": [
        "6a0ed1de8ecee0cde21ea667891a03f6c84ecd66"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:32:45 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:46 2008 -0500"
      },
      "message": "NFS: Clean up address comparison in __nfs_find_client()\n\nThe address comparison in the __nfs_find_client() function is deceptive.\nIt uses a memcmp() to check a pair of u32 fields for equality.  Not only is\nthis inefficient, but usually memcmp() is used for comparing two *whole*\nsockaddr_in\u0027s (which includes comparisons of the address family and port\nnumber), so it\u0027s easy to mistake the comparison here for a whole sockaddr\ncomparison, which it isn\u0027t.\n\nSo for clarity and efficiency, we replace the memcmp() with a simple test\nfor equality between the two s_addr fields.  This should have no\nbehavioral effect.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6a0ed1de8ecee0cde21ea667891a03f6c84ecd66",
      "tree": "898a769a98459e55d1ccd957c09d8cc3f0311833",
      "parents": [
        "e887cbcf911b2d16742832b38411559273ce5d77"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:32:40 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:46 2008 -0500"
      },
      "message": "NFS: Clean up: copy hostname with kstrndup during mount processing\n\nClean up: mount option parsing uses kstrndup in several places, rather than\nusing kzalloc.  Replace the few remaining uses of kzalloc with kstrndup,\nfor consistency.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e887cbcf911b2d16742832b38411559273ce5d77",
      "tree": "9a5bf1afb685ada914e441cedcc7285cccecd86b",
      "parents": [
        "ad879cef8554e20f9b5ca356c878712eb671228c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:32:29 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:46 2008 -0500"
      },
      "message": "NFS: Remove support for the \u0027mountprog\u0027 option\n\nRemove the mount option that allows users to specify an alternate mountd\nprogram number.  The client hasn\u0027t support setting an alternate mountd\nprogram number for a very long time.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ad879cef8554e20f9b5ca356c878712eb671228c",
      "tree": "a4ced497cfe4223ec84a7bcf292931c9b240ffdb",
      "parents": [
        "0eb2574121ef0ffbebe5335c66c227d1b987fa25"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:32:24 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:45 2008 -0500"
      },
      "message": "NFS: Remove support for the \u0027nfsprog\u0027 option\n\nRemove the mount option that allows users to specify an alternate NFS\nprogram number.  The client hasn\u0027t support setting an alternate NFS\nprogram number for a very long time.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0eb2574121ef0ffbebe5335c66c227d1b987fa25",
      "tree": "ff60c92740377b50e27a879b4155394dcd32844d",
      "parents": [
        "28c494c5c8d425e15b7b82571e4df6d6bc34594d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:32:19 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:45 2008 -0500"
      },
      "message": "NFS: Ensure that NFS version 4 mounts use NFS_PORT if nfsport wasn\u0027t set\n\nText-based mount option parsing introduced a minor regression in the\nbehavior of NFS version 4 mounts.  NFS version 4 is not supposed to require\na running rpcbind service on the server in order for a mount to succeed.\n\nIn other words, if the mount options don\u0027t specify a port number, the port\nnumber is supposed to default to 2049.  For earlier versions of NFS, the\ndefault port number was zero in order to cause the RPC client to autobind\nto the server\u0027s NFS service.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "28c494c5c8d425e15b7b82571e4df6d6bc34594d",
      "tree": "cbd7902da8f467182b1d5faed90349329cb8d042",
      "parents": [
        "464ad6b1ade186b53a1dae863361853326b85694"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:32:13 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:45 2008 -0500"
      },
      "message": "NFS: Prevent nfs_getattr() hang during heavy write workloads\n\nPOSIX requires that ctime and mtime, as reported by the stat(2) call,\nreflect the activity of the most recent write(2).  To that end, nfs_getattr()\nflushes pending dirty writes to a file before doing a GETATTR to allow the\nNFS server to set the file\u0027s size, ctime, and mtime properly.\n\nHowever, nfs_getattr() can be starved when a constant stream of application\nwrites to a file prevents nfs_wb_nocommit() from completing.  This usually\nresults in hangs of programs doing a stat against an NFS file that is being\nwritten.  \"ls -l\" is a common victim of this behavior.\n\nTo prevent starvation, hold the file\u0027s i_mutex in nfs_getattr() to\nfreeze applications writes temporarily so the client can more quickly obtain\nclean values for a file\u0027s size, mtime, and ctime.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "464ad6b1ade186b53a1dae863361853326b85694",
      "tree": "a8c7df2464050a6dffb5e1750355815d2336e82c",
      "parents": [
        "bcecff77a9c743ff67fdddeabc30ef76a6877886"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:32:08 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:44 2008 -0500"
      },
      "message": "NFS: Change sign of some loop indices in nfs4xdr.c\n\nNit: Eliminate some mixed sign comparisons in loop indices.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bcecff77a9c743ff67fdddeabc30ef76a6877886",
      "tree": "0e7a30f308501f87fbdad6fe65321b8bc35d89f9",
      "parents": [
        "c957c526ef86e472359dadb4204dab8a503b687d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:32:03 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:44 2008 -0500"
      },
      "message": "NFS: Use unsigned intermediates for manipulating header lengths (NFSv4 XDR)\n\nClean up: prevent length underflow and mixed sign comparison when\nunmarshalling NFS version 4 getacl, readdir, and readlink replies.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c957c526ef86e472359dadb4204dab8a503b687d",
      "tree": "1db0a284fdf0d0182432a66c7532ce7cf03aa7e2",
      "parents": [
        "6232dbbcffc617a5a47596b2ec347b24dc2dd2fd"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:31:57 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:44 2008 -0500"
      },
      "message": "NFS: Use unsigned intermediates for manipulating header lengths (NFSv3 XDR)\n\nClean up: prevent length underflow and mixed sign comparisons when\nunmarshalling NFS version 3 read, readdir, and readlink replies.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6232dbbcffc617a5a47596b2ec347b24dc2dd2fd",
      "tree": "2ebfdeaef4df7751a47dfaa4b200efd61303198b",
      "parents": [
        "8a8c74bf94fcdec058062d331b3d9777910778ab"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:31:52 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:44 2008 -0500"
      },
      "message": "NFS: Use unsigned intermediates for manipulating header lengths (NFSv2 XDR)\n\nClean up: prevent length underflow and mixed sign comparisons when\nunmarshalling NFS version 2 read, readdir, and readlink replies.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8a8c74bf94fcdec058062d331b3d9777910778ab",
      "tree": "66dd009e6d11a1bfa15d294aa2458086f80c963f",
      "parents": [
        "9b45b74ce2234ca15131ec0725010c1da818df05"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:31:47 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:43 2008 -0500"
      },
      "message": "NFS: Ensure nfs_wcc_update_inode always converts file size to loff_t\n\nThe nfs_wcc_update_inode() function omits logic to convert the type of\nthe NFS on-the-wire value of a file\u0027s size (__u64) to the type of file\nsize value stored in struct inode (loff_t, which is signed).\n\nEverywhere else in the NFS client I checked already correctly converts the\nfile size type.\n\nThis effects only very large files.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "9b45b74ce2234ca15131ec0725010c1da818df05",
      "tree": "715268c53fc427fd4684fb9885a814b73b8d835c",
      "parents": [
        "322e2efe6224be5de2852a7fddfac5cf11317af3"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:31:04 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:43 2008 -0500"
      },
      "message": "SUNRPC: Remove an unneeded implicit type cast when calling rpc_depopulate()\n\nThe two arguments of rpc_depopulate() that pass in inode numbers should use\nthe same type as inode-\u003ei_ino: unsigned long.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "322e2efe6224be5de2852a7fddfac5cf11317af3",
      "tree": "e050d9041351e49266f89869f7af63573632eade",
      "parents": [
        "5d40a8a525c8165bafed233cf0f137e8d10d7e92"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:30:59 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:43 2008 -0500"
      },
      "message": "SUNRPC: temp var should match return type of xdr_skb_read_actor\n\nThe return type of xdr_skb_read_actor functions is size_t.  This fixes a\nnit I unwittingly overlooked in commit dd456471.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5d40a8a525c8165bafed233cf0f137e8d10d7e92",
      "tree": "57e7117c055bbd48ceabae0ec6c8b6b0e8df3ea8",
      "parents": [
        "d4b37ff73540ab90bee57b882a10b21e2f97939f"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:30:54 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:42 2008 -0500"
      },
      "message": "SUNRPC: Check a return result\n\nMinor: Replace an empty if statement with a debugging dprintk.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Thomas Talpey \u003cThomas.Talpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d4b37ff73540ab90bee57b882a10b21e2f97939f",
      "tree": "d14a9bec8726721015ea4e50b2c479730fc75725",
      "parents": [
        "2a428b2b8fe2c270a5889086ebe3ab914e3ea7d8"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:30:49 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:42 2008 -0500"
      },
      "message": "SUNRPC: Fix an unnecessary implicit type cast in rpcrdma_count_chunks()\n\nNit: rl_nchunks is an unsigned integer, so pass it into\nrpcrdma_count_chunks() via an unsigned integer argument.  This eliminates\na harmless mixed sign comparison in rpcrdma_count_chunks()\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Thomas Talpey \u003cThomas.Talpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2a428b2b8fe2c270a5889086ebe3ab914e3ea7d8",
      "tree": "cdd7494963b363fd71bd9c804db24b28bf7c5232",
      "parents": [
        "c087567d3ffb2c7c61e091982e6ca45478394f1a"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 26 13:30:43 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:41 2008 -0500"
      },
      "message": "SUNRPC: Prevent mixed sign comparisons in rpcrdma_convert_iovs()\n\nKeep the type of the buffer position the same during iovec conversion to\nreduce the likelihood of unexpected results from comparisons and length\ncomputations.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Thomas Talpey \u003cThomas.Talpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c087567d3ffb2c7c61e091982e6ca45478394f1a",
      "tree": "39350f856b53101f98fb789d9afefb89f7b80802",
      "parents": [
        "a4a874990cbc1bc5df6f357c4f2d043cd1923e15"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 18 18:32:38 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:41 2008 -0500"
      },
      "message": "SUNRPC: Remove the obsolete RPC_WAITQ macro\n\nNow that we\u0027ve killed off all the users.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a4a874990cbc1bc5df6f357c4f2d043cd1923e15",
      "tree": "b7a0bcc477fc277f8062e08151acccfbf527c6f6",
      "parents": [
        "47fe064831a2a949f6c1e0086f61a105e99ea867"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 18 13:24:19 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:41 2008 -0500"
      },
      "message": "SUNRPC: Cleanup to remove the last users of the RPC_WAITQ declaration\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "47fe064831a2a949f6c1e0086f61a105e99ea867",
      "tree": "e5a7d80ef3e3ab936257253de9c25f3dad62a2f9",
      "parents": [
        "0773769191d943358a8392fa86abd756d004c4b6"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:42:55 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:40 2008 -0500"
      },
      "message": "SUNRPC: Unexport rpc_init_task() and rpc_execute()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0773769191d943358a8392fa86abd756d004c4b6",
      "tree": "2eeba848f7c1e6ba90696190f05db26c2f31655e",
      "parents": [
        "e8f5d77c8029ff8f5dcd1dfc133aac0bbbffd92b"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:42:54 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:39 2008 -0500"
      },
      "message": "NFS/SUNRPC: Convert users of rpc_init_task+rpc_execute to rpc_run_task()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e8f5d77c8029ff8f5dcd1dfc133aac0bbbffd92b",
      "tree": "590563991cc37325ef6c346745f0163c329e3e2c",
      "parents": [
        "b5627943ab6fabbc13a45d92683363a3d08a249f"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:42:53 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:38 2008 -0500"
      },
      "message": "SUNRPC: allow the caller of rpc_run_task to preallocate the struct rpc_task\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b5627943ab6fabbc13a45d92683363a3d08a249f",
      "tree": "2b422b80ed83d5f1df823070815792eba4e0d286",
      "parents": [
        "5138fde01161cd7976fdc51f6a17da73adaa6baf"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:42:21 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:35 2008 -0500"
      },
      "message": "SUNRPC: Remove the now unused function rpc_call_setup()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5138fde01161cd7976fdc51f6a17da73adaa6baf",
      "tree": "57dea902155fc4c31667ffbc412782edf2593b01",
      "parents": [
        "bdc7f021f3a1fade77adf3c2d7f65690566fddfe"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:40:01 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:32 2008 -0500"
      },
      "message": "NFS/SUNRPC: Convert all users of rpc_call_setup()\n\nReplace use of rpc_call_setup() with rpc_init_task(), and in cases where we\nneed to initialise task-\u003etk_action, with rpc_call_start().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bdc7f021f3a1fade77adf3c2d7f65690566fddfe",
      "tree": "c076431ac83fc75cde00dc3d3a218fabae449980",
      "parents": [
        "b3ef8b3bb93300e58a4c4806207de3de4eb76f48"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:40:00 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:32 2008 -0500"
      },
      "message": "NFS: Clean up the (commit|read|write)_setup() callback routines\n\nMove the common code for setting up the nfs_write_data and nfs_read_data\nstructures into fs/nfs/read.c, fs/nfs/write.c and fs/nfs/direct.c.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b3ef8b3bb93300e58a4c4806207de3de4eb76f48",
      "tree": "d02db9d538477b5a98abcb7945dbf81fa9b8e4ec",
      "parents": [
        "77de2c590ec72828156d85fa13a96db87301cc68"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:32:34 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:31 2008 -0500"
      },
      "message": "SUNRPC: Allow rpc_init_task() to initialise the rpc_task-\u003etk_msg\n\nIn preparation for the removal of rpc_call_setup().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "77de2c590ec72828156d85fa13a96db87301cc68",
      "tree": "9e14b6c75df046d406f0652f98eb520db64d3675",
      "parents": [
        "5085925902cc4d93b9a4992936edd2aee70a5e15"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:40:21 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:31 2008 -0500"
      },
      "message": "SUNRPC: Add a helper rpc_call_start() that initialises task-\u003etk_action\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5085925902cc4d93b9a4992936edd2aee70a5e15",
      "tree": "4d938ccdf4a32ef9c66d005d96dacb4cfb744216",
      "parents": [
        "3ff7576ddac06c3d07089e241b40826d24bbf1ac"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:19:37 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:31 2008 -0500"
      },
      "message": "SUNRPC: Mask signals across the call to rpc_call_setup() in rpc_run_task\n\nTo ensure that the RPCSEC_GSS upcall is performed with the correct sigmask.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3ff7576ddac06c3d07089e241b40826d24bbf1ac",
      "tree": "7f5998434b7d0dd1f08ff7ee65c93fab4861a6d3",
      "parents": [
        "c970aa85e71bd581726c42df843f6f129db275ac"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:40:00 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:30 2008 -0500"
      },
      "message": "SUNRPC: Clean up the initialisation of priority queue scheduling info.\n\nWe want the default scheduling priority (priority \u003d\u003d 0) to remain\nRPC_PRIORITY_NORMAL.\n\nAlso ensure that the priority wait queue scheduling is per process id\ninstead of sometimes being per thread, and sometimes being per inode.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c970aa85e71bd581726c42df843f6f129db275ac",
      "tree": "e7fc90ee4064196d357045fd173764e0b8fc8ca8",
      "parents": [
        "84115e1cd4a3614c4e566d4cce31381dce3dbef9"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:39:59 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:30 2008 -0500"
      },
      "message": "SUNRPC: Clean up rpc_run_task\n\nMake it use the new task initialiser structure instead of acting as a\nwrapper.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "84115e1cd4a3614c4e566d4cce31381dce3dbef9",
      "tree": "01b2de7163deb6b3a789811183d8b8c1329b900c",
      "parents": [
        "e8914c65f7f8d4e8701b8e78a12b714872ea0402"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:39:59 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:30 2008 -0500"
      },
      "message": "SUNRPC: Cleanup of rpc_task initialisation\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e8914c65f7f8d4e8701b8e78a12b714872ea0402",
      "tree": "54e0834fce6e8b834ad400e010e76215e7eb76e4",
      "parents": [
        "a6eaf8bdf9308b51ec84e358915fc65400029519"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:39:59 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:28 2008 -0500"
      },
      "message": "SUNRPC: Restrict sunrpc client exports\n\nThe sunrpc client exports are not meant to be part of any official kernel\nAPI: they can change at the drop of a hat. Mark them as internal functions\nusing EXPORT_SYMBOL_GPL.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a6eaf8bdf9308b51ec84e358915fc65400029519",
      "tree": "f704135c09272357d9e9bf2d2a39636006518c3e",
      "parents": [
        "93a44a75b97b9d8a03dd3d3f3247c3d0ec46aa4c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:39:58 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:28 2008 -0500"
      },
      "message": "SUNRPC: Move exported declarations to the function declarations\n\nDo this for all RPC client related functions and XDR functions.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "93a44a75b97b9d8a03dd3d3f3247c3d0ec46aa4c",
      "tree": "3505ffe3bac317ddae2298b30f639d819370babb",
      "parents": [
        "663b8858dddbc8e634476960cc1c5f69dadba9b0"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Nov 06 13:06:03 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:27 2008 -0500"
      },
      "message": "sunrpc: document the rpc_pipefs kernel api\n\nAdd kerneldoc comments for the rpc_pipefs.c functions that are exported.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "663b8858dddbc8e634476960cc1c5f69dadba9b0",
      "tree": "9e6b9408cd9483dea7553bd8eba58fa449ec9d85",
      "parents": [
        "62da3b24880bccd4ffc32cf8d9a7e23fab475bdd"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 01 18:42:12 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:27 2008 -0500"
      },
      "message": "SUNRPC: Reconnect immediately whenever the server isn\u0027t refusing it.\n\nIf we\u0027ve disconnected from the server, rather than the other way round,\nthen it makes little sense to wait 3 seconds before reconnecting.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "62da3b24880bccd4ffc32cf8d9a7e23fab475bdd",
      "tree": "334804c6eb817bd7827f58dbe86ced455160052d",
      "parents": [
        "3ebb067d92ebe5bcfd282acf12bade891d334d07"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Nov 06 18:44:20 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:27 2008 -0500"
      },
      "message": "SUNRPC: Rename xprt_disconnect()\n\nxprt_disconnect() should really only be called when the transport shutdown\nis completed, and it is time to wake up any pending tasks. Rename it to\nxprt_disconnect_done() in order to reflect the semantical change.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3ebb067d92ebe5bcfd282acf12bade891d334d07",
      "tree": "99da8250d23887b8573dbeddae76ceb392c0663b",
      "parents": [
        "7272dcd31d56580dee7693c21e369fd167e137fe"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Nov 06 18:40:12 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:26 2008 -0500"
      },
      "message": "SUNRPC: Make call_status()/call_decode() call xprt_force_disconnect()\n\nMove the calls to xprt_disconnect() over to xprt_force_disconnect() in\norder to enable the transport layer to manage the state of the\nXPRT_CONNECTED flag.\nDitto in xs_tcp_read_fraghdr().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "7272dcd31d56580dee7693c21e369fd167e137fe",
      "tree": "a69f10501069ec89d8fb7188f89e7d1d19929488",
      "parents": [
        "e06799f958bf7f9f8fae15f0c6f519953fb0257c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Nov 06 18:28:53 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:26 2008 -0500"
      },
      "message": "SUNRPC: xprt_autoclose() should not call xprt_disconnect()\n\nThe transport layer should do that itself whenever appropriate.\n\nNote that the RDMA transport already assumes that it needs to call\nxprt_disconnect in xprt_rdma_close().\nFor TCP sockets, we want to call xprt_disconnect() only after the\nconnection has been closed by both ends.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e06799f958bf7f9f8fae15f0c6f519953fb0257c",
      "tree": "b1dd5c6bee1d7fa3ecd45f85b20b001c4af2dcdd",
      "parents": [
        "ef80367071dce7d2533e79ae8f3c84ec42708dc8"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Nov 05 15:44:12 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:26 2008 -0500"
      },
      "message": "SUNRPC: Use shutdown() instead of close() when disconnecting a TCP socket\n\nBy using shutdown() rather than close() we allow the RPC client to wait\nfor the TCP close handshake to complete before we start trying to reconnect\nusing the same port.\nWe use shutdown(SHUT_WR) only instead of shutting down both directions,\nhowever we wait until the server has closed the connection on its side.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ef80367071dce7d2533e79ae8f3c84ec42708dc8",
      "tree": "48246449698c55b40791a98713005b55682849b2",
      "parents": [
        "3b948ae5be5e22532584113e2e02029519bbad8f"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Dec 31 16:19:17 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:25 2008 -0500"
      },
      "message": "SUNRPC: TCP clear XPRT_CLOSE_WAIT when the socket is closed for writes\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3b948ae5be5e22532584113e2e02029519bbad8f",
      "tree": "3bfa346bfbc9808c164d3d36af29a2090a5a0628",
      "parents": [
        "67a391d72ca7efb387c30ec761a487e50a3ff085"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Nov 05 17:42:39 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:25 2008 -0500"
      },
      "message": "SUNRPC: Allow the client to detect if the TCP connection is closed\n\nAdd an xprt-\u003estate bit to enable the TCP -\u003estate_change() method to signal\nwhether or not the TCP connection is in the process of closing down.\nThis will to be used by the reconnection logic in a separate patch.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "67a391d72ca7efb387c30ec761a487e50a3ff085",
      "tree": "a3594508502769d56e838c20b5b094bcc1906b16",
      "parents": [
        "66af1e558538137080615e7ad6d1f2f80862de01"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Nov 05 17:40:58 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:25 2008 -0500"
      },
      "message": "SUNRPC: Fix TCP rebinding logic\n\nCurrently the TCP rebinding logic assumes that if we\u0027re not using a\nreserved port, then we don\u0027t need to reconnect on the same port if a\ndisconnection event occurs. This breaks most RPC duplicate reply cache\nimplementations.\n\nAlso take into account the fact that xprt_min_resvport and\nxprt_max_resvport may change while we\u0027re reconnecting, since the user may\nchange them at any time via the sysctls. Ensure that we check the port\nboundaries every time we loop in xs_bind4/xs_bind6. Also ensure that if the\nboundaries change, we only scan the ports a maximum of 2 times.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "66af1e558538137080615e7ad6d1f2f80862de01",
      "tree": "f5f9680b86846d4df8312cd9bd729d6e10c7b5e8",
      "parents": [
        "ef818a28fac9bd214e676986d8301db0582b92a9"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Nov 06 10:18:36 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:24 2008 -0500"
      },
      "message": "SUNRPC: Fix a race in xs_tcp_state_change()\n\nWhen scheduling the autoclose RPC call, we want to ensure that we don\u0027t\nrace against the test_bit() call in xprt_clear_locked().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ef818a28fac9bd214e676986d8301db0582b92a9",
      "tree": "b1825d1ecdfa6b35951a61f6bc54363236c12cd0",
      "parents": [
        "2f74c0a05612b9c2014b5b67833dba9b9f523948"
      ],
      "author": {
        "name": "Steve Dickson",
        "email": "SteveD@redhat.com",
        "time": "Thu Nov 08 04:05:04 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:24 2008 -0500"
      },
      "message": "NFS: Stop sillyname renames and unmounts from racing\n\nAdded an active/deactive mechanism to the nfs_server structure\nallowing async operations to hold off umount until the\noperations are done.\n\nSigned-off-by: Steve Dickson \u003csteved@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2f74c0a05612b9c2014b5b67833dba9b9f523948",
      "tree": "59bb49bd9a393774b65e3d39e53edfe7bab4613e",
      "parents": [
        "acee478afc6ff7e1b8852d9a4dca1ff36021414d"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 08 17:56:07 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:24 2008 -0500"
      },
      "message": "NFSv4: Clean up the OPEN/CLOSE serialisation code\n\nReduce the time spent locking the rpc_sequence structure by queuing the\nnfs_seqid only when we are ready to take the lock (when calling\nnfs_wait_on_sequence).\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "acee478afc6ff7e1b8852d9a4dca1ff36021414d",
      "tree": "94aa75336122b4914af0cfa91eaf1329b2c519d3",
      "parents": [
        "8b1f9ee56e21e505a3d5d3e33f823006d1abdbaf"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 22 17:13:07 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:24 2008 -0500"
      },
      "message": "NFS: Clean up the write request locking.\n\nEnsure that we set/clear NFS_PAGE_TAG_LOCKED when the nfs_page is hashed.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8b1f9ee56e21e505a3d5d3e33f823006d1abdbaf",
      "tree": "4f26bf0ceb4f834040e02cefc6385087a25ad6ba",
      "parents": [
        "77f111929d024165e736e919187cff017279bebe"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 22 17:13:06 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:23 2008 -0500"
      },
      "message": "NFS: Optimise nfs_vm_page_mkwrite()\n\nThe current model locks the page twice for no good reason. Optimise by\ninlining the parts of nfs_write_begin()/nfs_write_end() that we care about.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "77f111929d024165e736e919187cff017279bebe",
      "tree": "fb03b66823f8c60e8efcdb40f93fadd2fc283e80",
      "parents": [
        "d45b9d8baf41acb177abbbe6746b1dea094b8a28"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jan 28 19:43:19 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:22 2008 -0500"
      },
      "message": "NFS: Ensure that we eject stale inodes as soon as possible\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d45b9d8baf41acb177abbbe6746b1dea094b8a28",
      "tree": "2bb90613fb21865b6b23c676c00073d3c4729929",
      "parents": [
        "609005c319bc6062b95ed82e132884ed7e22cdb9"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jan 28 19:43:18 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:22 2008 -0500"
      },
      "message": "NFS: Handle -ENOENT errors in unlink()/rmdir()/rename()\n\nIf the server returns an ENOENT error, we still need to do a d_delete() in\norder to ensure that the dentry is deleted.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "609005c319bc6062b95ed82e132884ed7e22cdb9",
      "tree": "ed798efb3dde26d9072fb44af743db638f76157e",
      "parents": [
        "fccca7fc6aab4e6b519e2d606ef34632e4f50e33"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jan 28 19:42:59 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:22 2008 -0500"
      },
      "message": "NFS: Sillyrename: in the case of a race, check aliases are really positive\n\nIn nfs_do_call_unlink() we check that we haven\u0027t raced, and that lookup()\nhasn\u0027t created an aliased dentry to our sillydeleted dentry. If somebody\nhas deleted the file on the server and the lookup() resulted in a negative\ndentry, then ignore...\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fccca7fc6aab4e6b519e2d606ef34632e4f50e33",
      "tree": "4d12d88039d229263a610647df6c751585f714dc",
      "parents": [
        "5b10ca19ea4859d3884d10a3eb8495de92089792"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jan 26 17:37:47 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:21 2008 -0500"
      },
      "message": "NFS: Fix a sillyrename race...\n\nEnsure that readdir revalidates its data cache after blocking on\nsillyrename.\n\nAlso fix a typo in nfs_do_call_unlink(): swap the ^\u003d for an |\u003d. The result\nis the same, since we\u0027ve already checked that the flag is unset, but it\nmakes the code more readable.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5b10ca19ea4859d3884d10a3eb8495de92089792",
      "tree": "3b3ed5d5f28bbecef15266d0e0854e0b9b351a33",
      "parents": [
        "9e97198dbf318be7958b57900d05b37c7e09ad7c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 30 09:54:54 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 30 09:54:54 2008 +1100"
      },
      "message": "Mostly revert \"e1000/e1000e: Move PCI-Express device IDs over to e1000e\"\n\nThe new e1000e driver is apparently not yet suitable for general use, so\nmark it experimental, and re-instate all the PCI-Express device IDs in\nthe old and stable e1000 driver so that people (namely me) can continue\nto use a driver that actually works.\n\nAuke \u0026 co have been appraised of the situation.\n\nCc: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9e97198dbf318be7958b57900d05b37c7e09ad7c",
      "tree": "f74fdf942c1b4c09c59d7f2b8ac4a48e8a471a71",
      "parents": [
        "12f32bb31772e72d8cf52a29f961561bccc54c37"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:05:57 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:55:20 2008 +0100"
      },
      "message": "splice: fix problem with atime not being updated\n\nA bug report on nfsd that states that since it was switched to use\nsplice instead of sendfile, the atime was no longer being updated\non the input file. do_generic_mapping_read() does this when accessing\nthe file, make splice do it for the direct splice handler.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "12f32bb31772e72d8cf52a29f961561bccc54c37",
      "tree": "461dc5d9008e4799fe78eed4d2c0d29096a60345",
      "parents": [
        "e7d9dc9cfd9bcc9ca688fe7f94c0da7d0700bfe6"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Tue Jan 29 20:57:51 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:55:19 2008 +0100"
      },
      "message": "block: constify function pointer tables\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e7d9dc9cfd9bcc9ca688fe7f94c0da7d0700bfe6",
      "tree": "04e1603796da2ba16f7b882562454ead33d3ad39",
      "parents": [
        "e68b903c6b2b88c60050675b056648468f33ab54"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 19:46:02 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:55:18 2008 +0100"
      },
      "message": "cciss: fix bug in overriding -\u003edata_len before completion\n\nFor BLOCK_PC requests, we need that length for completing the request.\nAndrew Vasquez \u003candrew.vasquez@qlogic.com\u003e reported the following\noops\n\nHitting a consistent BUG() with recent Linus\u0027 linux-2.6.git:\n\n\t[   12.941428] ------------[ cut here ]------------\n\t[   12.944874] kernel BUG at drivers/block/cciss.c:1260!\n\t[   12.944874] invalid opcode: 0000 [1] SMP\n\t[   12.944874] CPU 0\n\t[   12.944874] Modules linked in:\n\t[   12.944874] Pid: 0, comm: swapper Not tainted 2.6.24 #43\n\t[   12.944874] RIP: 0010:[\u003cffffffff8039e43d\u003e]  [\u003cffffffff8039e43d\u003e] cciss_softirq_done+0xbc/0x1bf\n\t[   12.944874] RSP: 0018:ffffffff8063aed0  EFLAGS: 00010202\n\t[   12.944874] RAX: 0000000000000001 RBX: ffff8100cf800010 RCX: ffff81042f1253b0\n\t[   12.944874] RDX: ffff81042de398f0 RSI: ffff81042de398f0 RDI: 0000000000000001\n\t[   12.944874] RBP: ffff81042daa0000 R08: ffff81042f1253b0 R09: 0000000000000001\n\t[   12.944874] R10: 00000000000000fe R11: 0000000000000000 R12: 0000000000000002\n\t[   12.944874] R13: 0000000000000001 R14: ffff8100cf800000 R15: ffff81042de398f0\n\t[   12.944874] FS:  0000000000000000(0000) GS:ffffffff805bb000(0000) knlGS:0000000000000000\n\t[   12.944874] CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b\n\t[   12.944874] CR2: 00002afed7eea340 CR3: 000000042dbba000 CR4: 00000000000006e0\n\t[   12.944874] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n\t[   12.944874] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n\t[   12.944874] Process swapper (pid: 0, threadinfo ffffffff805f4000, task ffffffff805624a0)\n\t[   12.944874] Stack:  0000000000000000 ffffffff8063af10 0000000000000001 ffffffff80632d60\n\t[   12.944874]  0000000000000000 000000000000000a ffffffff805bb900 ffffffff8032038f\n\t[   12.944874]  ffffffff8063af10 ffffffff8063af10 ffffffff805bb940 ffffffff802346b4\n\t[   12.944874] Call Trace:\n\t[   12.944874]  \u003cIRQ\u003e  [\u003cffffffff8032038f\u003e] blk_done_softirq+0x69/0x78\n\t[   12.944874]  [\u003cffffffff802346b4\u003e] __do_softirq+0x6f/0xd8\n\t[   12.944874]  [\u003cffffffff8020c45c\u003e] call_softirq+0x1c/0x30\n\t[   12.944874]  [\u003cffffffff8020e347\u003e] do_softirq+0x30/0x80\n\t[   12.944874]  [\u003cffffffff8020e409\u003e] do_IRQ+0x72/0xd9\n\t[   12.944874]  [\u003cffffffff8020a50a\u003e] mwait_idle+0x0/0x46\n\t[   12.944874]  [\u003cffffffff8020a3da\u003e] default_idle+0x0/0x3d\n\t[   12.944874]  [\u003cffffffff8020b7e1\u003e] ret_from_intr+0x0/0xa\n\t[   12.944874]  \u003cEOI\u003e  [\u003cffffffff8020a54c\u003e] mwait_idle+0x42/0x46\n\t[   12.944874]  [\u003cffffffff8020a481\u003e] cpu_idle+0x6a/0xae\n\t[   12.944874]\n\t[   12.944874]\n\t[   12.944874] Code: 0f 0b eb fe 48 8d 85 d8 c0 00 00 48 89 04 24 48 89 c7 e8 e5\n\t[   12.944874] RIP  [\u003cffffffff8039e43d\u003e] cciss_softirq_done+0xbc/0x1bf\n\t[   12.944874]  RSP \u003cffffffff8063aed0\u003e\n\t[   12.944903] ---[ end trace e9c631603f90d22f ]---\n\nwhich is caused by blk_end_request() returning \u0027not done\u0027 for a request,\nsince it gets asked to complete zero bytes.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e68b903c6b2b88c60050675b056648468f33ab54",
      "tree": "6622d232adae87af15a9e42e024b513012e59d2b",
      "parents": [
        "7da975a231ae8c11593fd79d1083215321be213a"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Tue Jan 29 19:14:08 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:55:17 2008 +0100"
      },
      "message": "Expose hardware sector size\n\nExpose hardware sector size in sysfs queue directory.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "7da975a231ae8c11593fd79d1083215321be213a",
      "tree": "5d18bdf4713d1140bb08b3f7ca00938f37b32af7",
      "parents": [
        "023ccde109b995bb99862bf9c87efd006b1d1885"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Tue Jan 29 19:12:06 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:55:15 2008 +0100"
      },
      "message": "Fix blktrace compile warning\n\nrequest_queue_t is deprecated\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "023ccde109b995bb99862bf9c87efd006b1d1885",
      "tree": "c1a889bde7f895441bbec792f94641d4716b2887",
      "parents": [
        "d6d48196961729b79509dcaeeb0f0fb4fbb47d29"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 14:08:06 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:55:14 2008 +0100"
      },
      "message": "block: fix warning on compile with CONFIG_BLOCK\n\nstruct io_context was not defined, just add an empty forward decl.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "d6d48196961729b79509dcaeeb0f0fb4fbb47d29",
      "tree": "e80f5cdc7f0d682a46b816f5a489357f7d622d62",
      "parents": [
        "db1d08c646e47f3c7835ecdabb51a906ec311f69"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 14:04:06 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:55:12 2008 +0100"
      },
      "message": "block: ll_rw_blk.c split, add blk-merge.c\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "db1d08c646e47f3c7835ecdabb51a906ec311f69",
      "tree": "3760cfe0f210d072d8750dfa7c29a43f1673604e",
      "parents": [
        "26b8256e2bb930a8e4d4d10aa74950d8921376b8"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 13:55:40 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:55:11 2008 +0100"
      },
      "message": "block: remove dated (and wrong) comment in blk-core.c\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "26b8256e2bb930a8e4d4d10aa74950d8921376b8",
      "tree": "36fc1011aa68526dc1fb5b237e330ca2c27c9939",
      "parents": [
        "86db1e29772372155db08ff48a9ceb76e11a2ad1"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 13:54:41 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:55:09 2008 +0100"
      },
      "message": "block: get rid of unnecessary forward declarations in blk-core.c\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "86db1e29772372155db08ff48a9ceb76e11a2ad1",
      "tree": "312f38eb3245873c476c50f816b85610fef9615a",
      "parents": [
        "8324aa91d1e11a1fc25f209687a0b2e6c2ed47d0"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 14:53:40 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:55:08 2008 +0100"
      },
      "message": "block: continue ll_rw_blk.c splitup\n\nAdds files for barrier handling, rq execution, io context handling,\nmapping data to requests, and queue settings.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "8324aa91d1e11a1fc25f209687a0b2e6c2ed47d0",
      "tree": "c63753df94b741d328840edabde74462591ca0b3",
      "parents": [
        "a168ee84c90b39ece357da127ab388f2f64db19c"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 14:51:59 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:55:07 2008 +0100"
      },
      "message": "block: split tag and sysfs handling from blk-core.c\n\nSeperates the tag and sysfs handling from ll_rw_blk.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a168ee84c90b39ece357da127ab388f2f64db19c",
      "tree": "acb5527d9835c06e4eb2c308850e74db857f7d64",
      "parents": [
        "9bf722598fcd51073974850ae026b44389430ecc"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 14:49:21 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:55:05 2008 +0100"
      },
      "message": "block: first step of splitting ll_rw_blk, rename it\n\nThen we retain history in blk-core.c\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9bf722598fcd51073974850ae026b44389430ecc",
      "tree": "c1fcb8ac5b1d75ce5c6b6530f874d9a796859cb7",
      "parents": [
        "0ba6c33bcddc64a54b5f1c25a696c4767dc76292"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:54:53 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 29 21:54:53 2008 +0100"
      },
      "message": "xsysace: end request handling fix\n\nIn ace_fsm_dostate(), the variable \u0027i\u0027 was used only for passing\nsector size of the request to end_that_request_first().\nSo I removed it and changed the code to pass the size in bytes\ndirectly to __blk_end_request()\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0ba6c33bcddc64a54b5f1c25a696c4767dc76292",
      "tree": "62e616f97a4762d8e75bf732e4827af2d15d52c5",
      "parents": [
        "21af0297c7e56024a5ccc4d8ad2a590f9ec371ba",
        "85040bcb4643cba578839e953f25e2d1965d83d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:54:01 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:54:01 2008 +1100"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.25\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.25: (1470 commits)\n  [IPV6] ADDRLABEL: Fix double free on label deletion.\n  [PPP]: Sparse warning fixes.\n  [IPV4] fib_trie: remove unneeded NULL check\n  [IPV4] fib_trie: More whitespace cleanup.\n  [NET_SCHED]: Use nla_policy for attribute validation in ematches\n  [NET_SCHED]: Use nla_policy for attribute validation in actions\n  [NET_SCHED]: Use nla_policy for attribute validation in classifiers\n  [NET_SCHED]: Use nla_policy for attribute validation in packet schedulers\n  [NET_SCHED]: sch_api: introduce constant for rate table size\n  [NET_SCHED]: Use typeful attribute parsing helpers\n  [NET_SCHED]: Use typeful attribute construction helpers\n  [NET_SCHED]: Use NLA_PUT_STRING for string dumping\n  [NET_SCHED]: Use nla_nest_start/nla_nest_end\n  [NET_SCHED]: Propagate nla_parse return value\n  [NET_SCHED]: act_api: use PTR_ERR in tcf_action_init/tcf_action_get\n  [NET_SCHED]: act_api: use nlmsg_parse\n  [NET_SCHED]: act_api: fix netlink API conversion bug\n  [NET_SCHED]: sch_netem: use nla_parse_nested_compat\n  [NET_SCHED]: sch_atm: fix format string warning\n  [NETNS]: Add namespace for ICMP replying code.\n  ...\n"
    },
    {
      "commit": "21af0297c7e56024a5ccc4d8ad2a590f9ec371ba",
      "tree": "5d288c1877b1ae9fbe24aa7fabd79565e73d3d2f",
      "parents": [
        "5ea293a9048d3a58cb0c840fa719d85ad14cba47",
        "a9d2517c7a5c8028fbc5296d3af3c75597d3d180"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:48:03 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:48:03 2008 +1100"
      },
      "message": "Merge branch \u0027upstream\u0027 of git://ftp.linux-mips.org/pub/scm/upstream-linus\n\n* \u0027upstream\u0027 of git://ftp.linux-mips.org/pub/scm/upstream-linus: (68 commits)\n  [MIPS] remove Documentation/mips/GT64120.README\n  [MIPS] Malta: remaining bits of the board support code cleanup\n  [MIPS] Malta: make the helper function static\n  [MIPS] Malta: fix braces at single statement blocks\n  [MIPS] Malta, Atlas: move an extern function declaration to the header file\n  [MIPS] Malta: Use C89 style for comments\n  [MIPS] Malta: else should follow close brace in malta_int.c\n  [MIPS] Malta: remove a superfluous comment\n  [MIPS] Malta: include \u003clinux/cpu.h\u003e instead of \u003casm/cpu.h\u003e\n  [MIPS] Malta, Atlas, Sead: remove an extern from .c files\n  [MIPS] Malta: fix oversized lines in malta_int.c\n  [MIPS] Malta: remove a dead function declaration\n  [MIPS] Malta: use tabs not spaces\n  [MIPS] Malta: set up the screen info in a separate function\n  [MIPS] Malta: check the PCI clock frequency in a separate function\n  [MIPS] Malta: use the KERN_ facility level in printk()\n  [MIPS] Malta: use Linux kernel style for structure initialization\n  [MIPS]: constify function pointer tables\n  [MIPS] compat: handle argument endianess of sys32_(f)truncate64 with merge_64\n  [MIPS] Cobalt 64-bits kernels can be safely unmarked experimental\n  ...\n"
    },
    {
      "commit": "5ea293a9048d3a58cb0c840fa719d85ad14cba47",
      "tree": "88d1dd1eece2cfcbd858ff2c00fb0240dcfab3c7",
      "parents": [
        "03bc26cfefd6db756e6bc7fcda11dc17ada7be16",
        "d3883ecebbf9e095b9e379dabbbe8b2c1ee7a41c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:46:14 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:46:14 2008 +1100"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild: (79 commits)\n  Remove references to \"make dep\"\n  kconfig: document use of HAVE_*\n  Introduce new section reference annotations tags: __ref, __refdata, __refconst\n  kbuild: warn about ld added unique sections\n  kbuild: add verbose option to Section mismatch reporting in modpost\n  kconfig: tristate choices with mixed tristate and boolean values\n  asm-generic/vmlix.lds.h: simplify __mem{init,exit}* dependencies\n  remove __attribute_used__\n  kbuild: support ARCH\u003dx86 in buildtar\n  kconfig: remove \"enable\"\n  kbuild: simplified warning report in modpost\n  kbuild: introduce a few helpers in modpost\n  kbuild: use simpler section mismatch warnings in modpost\n  kbuild: link vmlinux.o before kallsyms passes\n  kbuild: introduce new option to enhance section mismatch analysis\n  Use separate sections for __dev/__cpu/__mem code/data\n  compiler.h: introduce __section()\n  all archs: consolidate init and exit sections in vmlinux.lds.h\n  kbuild: check section names consistently in modpost\n  kbuild: introduce blacklisting in modpost\n  ...\n"
    },
    {
      "commit": "03bc26cfefd6db756e6bc7fcda11dc17ada7be16",
      "tree": "36b4cdbd02e464a016d78e4b520595922d803e68",
      "parents": [
        "8cd226ca3f64f28c8123ebfaa6afe8dc8c18b174",
        "6494a93d55fad586238cc1940e846c6d03e1aaf6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:45:39 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:45:39 2008 +1100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  Module: check to see if we have a built in module with the same name\n  module: add module taint on ndiswrapper\n  module: fix the module name length in param_sysfs_builtin\n  module: make module_address_lookup safe\n  module: better OOPS and lockdep coverage for loading modules\n  module: Fix gratuitous sprintf in module.c\n  module: wait for dependent modules doing init.\n  module: Don\u0027t report discarded init pages as kernel text.\n"
    },
    {
      "commit": "8cd226ca3f64f28c8123ebfaa6afe8dc8c18b174",
      "tree": "6a668a8e899dca090ded0d3b8d6badda8f97d1b0",
      "parents": [
        "6b11d8179d1c6e560edc02c40a53b65fde83bf3f",
        "4019191be7316ed4a39e1c1c2b623baa7dc6c843"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:43:38 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:43:38 2008 +1100"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (50 commits)\n  jbd2: sparse pointer use of zero as null\n  jbd2: Use round-jiffies() function for the \"5 second\" ext4/jbd2 wakeup\n  jbd2: Mark jbd2 slabs as SLAB_TEMPORARY\n  jbd2: add lockdep support\n  ext4: Use the ext4_ext_actual_len() helper function\n  ext4: fix uniniatilized extent splitting error\n  ext4: Check for return value from sb_set_blocksize\n  ext4: Add stripe\u003d option to /proc/mounts\n  ext4: Enable the multiblock allocator by default\n  ext4: Add multi block allocator for ext4\n  ext4: Add new functions for searching extent tree\n  ext4: Add ext4_find_next_bit()\n  ext4: fix up EXT4FS_DEBUG builds\n  ext4: Fix ext4_show_options to show the correct mount options.\n  ext4: Add EXT4_IOC_MIGRATE ioctl\n  ext4: Add inode version support in ext4\n  vfs: Add 64 bit i_version support\n  ext4: Add the journal checksum feature\n  jbd2: jbd2 stats through procfs\n  ext4: Take read lock during overwrite case.\n  ...\n"
    },
    {
      "commit": "a9d2517c7a5c8028fbc5296d3af3c75597d3d180",
      "tree": "ff624a9cc9894a1c06f1c633c1c1975b3d700741",
      "parents": [
        "750dc31c480e5062b526134f090a029afd7e17fd"
      ],
      "author": {
        "name": "Dmitri Vorobiev",
        "email": "dmitri.vorobiev@gmail.com",
        "time": "Thu Jan 24 19:52:57 2008 +0300"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 29 10:15:05 2008 +0000"
      },
      "message": "[MIPS] remove Documentation/mips/GT64120.README\n\nBased upon the 2.4 kernel, the information presented in the\nDocumentation/mips/GT64120.README file is outdated. Worse,\nthe document contents are plain misleading nowadays because\nthe text mentions files and directories, which have been\ndeleted, moved or restructured for 2.6.\n\nThis patch removes the documentation, which is no more valid.\n\nSigned-off-by: Dmitri Vorobiev \u003cdmitri.vorobiev@gmail.com\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "750dc31c480e5062b526134f090a029afd7e17fd",
      "tree": "605e2e9cb72232fbd50954fdaaf1bec2b8d0bb97",
      "parents": [
        "ef7645cfe6f785de3bdc2ae6016924f46f614d61"
      ],
      "author": {
        "name": "Dmitri Vorobiev",
        "email": "dmitri.vorobiev@gmail.com",
        "time": "Thu Jan 24 19:52:56 2008 +0300"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 29 10:15:05 2008 +0000"
      },
      "message": "[MIPS] Malta: remaining bits of the board support code cleanup\n\nThis patch factors out the code, which handles the Bonito system\ncontroller. The case of not supporting the DMA coherency is handled\nseparately to make the logic obvious. Besides, a couple of empty\nlines added to beautify the code even further.\n\nNo functional changes introduced.\n\nSigned-off-by: Dmitri Vorobiev \u003cdmitri.vorobiev@gmail.com\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "ef7645cfe6f785de3bdc2ae6016924f46f614d61",
      "tree": "196e06a345b269c1806259c3b7fb4795303f220d",
      "parents": [
        "cd80d548594aae0ee915e01050279399cb14943b"
      ],
      "author": {
        "name": "Dmitri Vorobiev",
        "email": "dmitri.vorobiev@gmail.com",
        "time": "Thu Jan 24 19:52:55 2008 +0300"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 29 10:15:05 2008 +0000"
      },
      "message": "[MIPS] Malta: make the helper function static\n\nOne helper function can become static. This patch adds the needed\nkeyword.\n\nNo functional changes introduced.\n\nSigned-off-by: Dmitri Vorobiev \u003cdmitri.vorobiev@gmail.com\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "cd80d548594aae0ee915e01050279399cb14943b",
      "tree": "070b429488257dccfb8b2990744f9af948baf810",
      "parents": [
        "bbdda5e1fe9c1a5b34a2b552910f5f4c0dc24485"
      ],
      "author": {
        "name": "Dmitri Vorobiev",
        "email": "dmitri.vorobiev@gmail.com",
        "time": "Thu Jan 24 19:52:54 2008 +0300"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 29 10:15:05 2008 +0000"
      },
      "message": "[MIPS] Malta: fix braces at single statement blocks\n\nThis patch fixes a couple of warnings reported by checkpatch.pl.\n\nNo functional changes introduced.\n\nSigned-off-by: Dmitri Vorobiev \u003cdmitri.vorobiev@gmail.com\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "bbdda5e1fe9c1a5b34a2b552910f5f4c0dc24485",
      "tree": "a78542754115d4d40de321b187c15a192ff17e97",
      "parents": [
        "ae9cef0b7949c0d528962127f2bccf7c753949df"
      ],
      "author": {
        "name": "Dmitri Vorobiev",
        "email": "dmitri.vorobiev@gmail.com",
        "time": "Thu Jan 24 19:52:53 2008 +0300"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 29 10:15:05 2008 +0000"
      },
      "message": "[MIPS] Malta, Atlas: move an extern function declaration to the header file\n\nThis was compile-tested using default configs for the boards\naffected by this change.\n\nThis patch does not introduce any functional changes.\n\nSigned-off-by: Dmitri Vorobiev \u003cdmitri.vorobiev@gmail.com\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    }
  ],
  "next": "ae9cef0b7949c0d528962127f2bccf7c753949df"
}
