)]}'
{
  "log": [
    {
      "commit": "cd3758e37ddea66fccca7d93c4b601e8a2e51926",
      "tree": "07566d3ee457524a97b534a4f214b9178b1278c8",
      "parents": [
        "c03025d55540bd648f2546659090140ecc835572"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Aug 10 17:44:32 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:18:31 2007 -0400"
      },
      "message": "NFS: Replace file-\u003eprivate_data with calls to nfs_file_open_context()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c03025d55540bd648f2546659090140ecc835572",
      "tree": "14038137eaa080f1118777207e4c2a1359e44b94",
      "parents": [
        "8fb559f87fee7f71dbf9a595095ad7d8e84c55e7"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Aug 10 17:44:28 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:18:29 2007 -0400"
      },
      "message": "NFS: Add a helper to extract the nfs_open_context from a struct file\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8fb559f87fee7f71dbf9a595095ad7d8e84c55e7",
      "tree": "1d38a0d8b750f7515390c9741b12364f6f3426c7",
      "parents": [
        "77a55a1fe8f26f7d022986a599b68002e21d968a"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Sep 24 15:40:16 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:18:26 2007 -0400"
      },
      "message": "NFS: Eliminate nfs_refresh_verifier()\n\nnfs_set_verifier() and nfs_refresh_verifier() do exactly the same thing, so\nreplace one with the other.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "77a55a1fe8f26f7d022986a599b68002e21d968a",
      "tree": "63e804b1105d535149e0fd558c96a8c3efcc8dce",
      "parents": [
        "92f6c178250170222f6d80c8ae725400765aa7a4"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Sep 24 15:40:11 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:18:24 2007 -0400"
      },
      "message": "NFS: Eliminate nfs_renew_times()\n\nThe nfs_renew_times() function plants the current time in jiffies in\ndentry-\u003ed_time.  But a call to nfs_renew_times() is always followed by\nanother call that overwrites dentry-\u003ed_time.  Get rid of the\nnfs_renew_times() calls.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "92f6c178250170222f6d80c8ae725400765aa7a4",
      "tree": "f0da7a93122db0ed40cb5175294e8492082144ba",
      "parents": [
        "1321d8d971028e796978f6a48d195c09158b3bcd"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Sep 24 15:40:06 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:18:22 2007 -0400"
      },
      "message": "NFS: Don\u0027t call nfs_renew_times() in nfs_dentry_iput()\n\nNegative dentries need to be reverified after an asynchronous unlink.\n\nQuoth Trond:\n\n\"Unfortunately I don\u0027t think that we can avoid revalidating the\nresulting negative dentry since the UNLINK call is asynchronous,\nand so the new verifier on the directory will only be known a\nposteriori.\"\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1321d8d971028e796978f6a48d195c09158b3bcd",
      "tree": "6a778f7b7f829d1155a1d62fb04cff732f613a08",
      "parents": [
        "bcf35617a7c3474ad12892dfbb089a572e5c06d2"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Sep 24 15:40:00 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:18:19 2007 -0400"
      },
      "message": "SUNRPC: Fix bytes-per-op accounting for RPC over UDP\n\nNFS performance metrics reported zero bytes sent per op when mounting with\nUDP.  The UDP socket transport wasn\u0027t properly counting the number of bytes\nsent.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bcf35617a7c3474ad12892dfbb089a572e5c06d2",
      "tree": "f7fdd239743614ff8c1b00dc44b34565617689b8",
      "parents": [
        "6e88e0618cb1e354a44cc49a996df4dd89511039"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Sep 24 15:39:55 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:18:17 2007 -0400"
      },
      "message": "NFS: Show \"nointr\" mount option\n\nThe default \"intr\" setting is different for NFS and NFSv4.  To avoid\nconfusion on this issue, don\u0027t hide the \"nointr\" option in /proc/mounts.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6e88e0618cb1e354a44cc49a996df4dd89511039",
      "tree": "e5da37374d186cf3b6bd91ba2349675abe9d0a6d",
      "parents": [
        "113632d00acb569420b14eb7575833ac7e2eb311"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Sep 24 15:39:50 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:18:14 2007 -0400"
      },
      "message": "NFS: Verify server address before invoking in-kernel mount client\n\nRe-order mount option sanity checking slightly to ensure we have a valid\nserver address *before* trying to do the mountd RPC call.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "113632d00acb569420b14eb7575833ac7e2eb311",
      "tree": "ced98505cd004b89fb9569f64b7e9024b8c817a4",
      "parents": [
        "c56c65fb67d6461f6059dd83b1750a1973a91185"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Thu Sep 20 17:37:58 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:18:11 2007 -0400"
      },
      "message": "SUNRPC: Add RDMA dependency to SUNRPC_XPRT_RDMA\n\nAdd a dependency on RDMA before enabling SUNRPC_XPRT_RDMA\nYes, \"INFINIBAND\" also turns on iWARP and other RDMA support.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c56c65fb67d6461f6059dd83b1750a1973a91185",
      "tree": "c31d98a8ad814166f9cac2b196b746cf609c4d28",
      "parents": [
        "e96018280cb36210f4c69663561825114a57e7e1"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:51:18 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:18:08 2007 -0400"
      },
      "message": "RPCRDMA: rpc rdma verbs interface implementation\n\nThis implements the interface from rpcrdma to the RDMA verbs interface\nsupported by Infniband and iWARP.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: James Lentini \u003cjlentini@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e96018280cb36210f4c69663561825114a57e7e1",
      "tree": "59a303368b9aaf005f5dc97448b1b7dc9789faee",
      "parents": [
        "f58851e6b0f148fb4b2a1c6f70beb2f125863c0f"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:50:42 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:18:06 2007 -0400"
      },
      "message": "RPCRDMA: rpc rdma protocol implementation\n\nThis implements the marshaling and unmarshaling of the rpcrdma transport\nheaders. Connection management is also addressed.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "f58851e6b0f148fb4b2a1c6f70beb2f125863c0f",
      "tree": "816604d59b5de0ee19ca69b19a6f34548dbb82c5",
      "parents": [
        "2cf7ff7a37cc149bd59c4f3bad432f686a4619c8"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:50:12 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:18:03 2007 -0400"
      },
      "message": "RPCRDMA: rpc rdma transport switch\n\nThis implements the configuration and building of the core transport\nswitch implementation of the rpcrdma transport. Stubs are provided for\nthe rpcrdma protocol handling, and the infiniband/iwarp verbs interface.\nThese are provided in following patches.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2cf7ff7a37cc149bd59c4f3bad432f686a4619c8",
      "tree": "9752290f4a0cb00d10a1fae24db8ef85b85b84e7",
      "parents": [
        "c3a57ed7471a17b07844d531534d970b84b69faf"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:49:41 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:18:00 2007 -0400"
      },
      "message": "NFS: support RDMA mounts\n\nAdds hooks to the string-based NFS mount to support an \"rdma\" protocol option.\n\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c3a57ed7471a17b07844d531534d970b84b69faf",
      "tree": "6457a4dfea6a849ec821c1e013f97f211713fe93",
      "parents": [
        "56928edd5afb51d684c38c0bed56594e93ffe4c7"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:49:15 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:57 2007 -0400"
      },
      "message": "RPCRDMA: Kconfig and header file with rpcrdma protocol definitions\n\nThis file implements the configuration target, protocol template and\nconstants for the rpcrdma transport framing, for use by the xprtrdma\nrpc transport implementation.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "56928edd5afb51d684c38c0bed56594e93ffe4c7",
      "tree": "f4b48628286f923c68727feba78b2b51a6502352",
      "parents": [
        "0896a725a1c5fdc8773a4d1ab0b73059507f5925"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:48:47 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:55 2007 -0400"
      },
      "message": "NFS - print accurate transport protocol\n\nUse the per-transport strings to display the transport protocol accurately.\n\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0896a725a1c5fdc8773a4d1ab0b73059507f5925",
      "tree": "e8a44eecc411f0d117358752d8a2b80895d81bc0",
      "parents": [
        "4fa016eb248cac875541fa199af550a8aefa0e90"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:48:23 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:53 2007 -0400"
      },
      "message": "NFS/SUNRPC: use transport protocol naming\n\nInstead of an { address family, raw IP protocol number }-tuple, use the\nnewly-defined RPC identifier when creating clients in the upper layers.\n\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4fa016eb248cac875541fa199af550a8aefa0e90",
      "tree": "2a8aad2ebc1a05174d0eacaceb671bca6b24850c",
      "parents": [
        "49c36fcc441baf6a4d698e3645d1adf28edaf57b"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:47:57 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:50 2007 -0400"
      },
      "message": "NFS/SUNRPC: support transport protocol naming\n\nTo prepare for including non-sockets-based RPC transports, select\nRPC transports by an identifier (to be used in following patches).\n\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "49c36fcc441baf6a4d698e3645d1adf28edaf57b",
      "tree": "b5e51e610e67ffd8fbdffd7d2e7d49a91ad4a1fc",
      "parents": [
        "3c341b0b925eee01daae2c594b81e673f659d7cd"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:47:31 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:48 2007 -0400"
      },
      "message": "SUNRPC: rearrange RPC sockets definitions\n\nTo prepare for including non-sockets-based RPC transports, move the\nsockets-dependent definitions into their own file.\n\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3c341b0b925eee01daae2c594b81e673f659d7cd",
      "tree": "029db06dc895097b88c6765d349ce254db333bfd",
      "parents": [
        "bc25571e21e8bd053554209f5b1b228ad71e6b99"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:47:07 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:45 2007 -0400"
      },
      "message": "SUNRPC: rename the rpc_xprtsock_create structure\n\nTo prepare for including non-sockets-based RPC transports, change the\noverly suggestive name of the transport creation arguments struct.\n\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bc25571e21e8bd053554209f5b1b228ad71e6b99",
      "tree": "4c008cc445f24c6b5501b2867b8ba7a752b5d710",
      "parents": [
        "81c098af3da7981902e9f8163aeccc2467c4ba6d"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:46:39 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:42 2007 -0400"
      },
      "message": "SUNRPC: Finish API to load RPC transport implementations dynamically\n\nAllow RPC client transport implementations to be loaded as needed, or\nas they become available from distributors or third-party vendors.\n\nNote that we leave the IP sockets implementation in sunrpc.o\npermanently, as IP functionality is always available in any\nkernel that runs NFS.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "81c098af3da7981902e9f8163aeccc2467c4ba6d",
      "tree": "b98e3c8c9e519e34abf721410de70373cedb4a9f",
      "parents": [
        "1244480976d357447aeddd3f44977586bfa0462b"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:46:00 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:40 2007 -0400"
      },
      "message": "SUNRPC: Provide a new API for registering transport implementations\n\nTo allow transport capabilities to be loaded dynamically, provide an API\nfor registering and unregistering the transports with the RPC client.\nEventually xprt_create_transport() will be changed to search the list of\nregistered transports when initializing a fresh transport.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1244480976d357447aeddd3f44977586bfa0462b",
      "tree": "4933d4c352e9e1b9d72f01f4968dd116244b96f6",
      "parents": [
        "4f22ccc3460ef65e9899ec271d36fc4ef795c68d"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:45:36 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:36 2007 -0400"
      },
      "message": "SUNRPC: add EXPORT_SYMBOL_GPL for generic transport functions\n\nSUNRPC: add EXPORT_SYMBOL_GPL for generic transport functions\n\nAs a preface to allowing arbitrary transport modules to be loaded\ndynamically, add EXPORT_SYMBOL_GPL for all generic transport functions\nthat a transport implementation might want to use.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nAcked-by: Tom Talpey \u003ctmt@netapp.com\u003e\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4f22ccc3460ef65e9899ec271d36fc4ef795c68d",
      "tree": "613a7a135cd11e5254362e41ab2b05f707901c19",
      "parents": [
        "20c71f5e0f954b00d75009542db2c1f844d94a1e"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:44:58 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:34 2007 -0400"
      },
      "message": "SUNRPC: mark bulk read/write data in xdrbuf\n\nAdds a flag word to the xdrbuf struct which indicates any bulk\ndisposition of the data. This enables RPC transport providers to\nmarshal it efficiently/appropriately, and may enable other\noptimizations.\n\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "20c71f5e0f954b00d75009542db2c1f844d94a1e",
      "tree": "0ff5e7212188238735757dd72ec746ab673ef1fd",
      "parents": [
        "91ea40b9c6303ddab5c84f078f96b29084b45817"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Sep 20 20:23:51 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:31 2007 -0400"
      },
      "message": "NFSv4: Fix a bug in nfs4_validate_mount_data()\n\nThe previous patch introduced a bug when copying the server address.\n\nAlso clarify a copy into the auth_flavours array: currently the two\nsize calculations are equivalent, but we may decide to change the size\nof auth_flavors[] at some point.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "91ea40b9c6303ddab5c84f078f96b29084b45817",
      "tree": "b7f48effc5adbb1b9c36a7e16ce9133d7152aad9",
      "parents": [
        "2283f8d6ed21ea2221df4cc329314b93f35351b0"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:44:33 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:28 2007 -0400"
      },
      "message": "NFS: use in-kernel mount argument structure for nfsv4 mounts\n\nThe user-visible nfs4_mount_data does not contain sufficient data to\ndescribe new mount options, and also is now a legacy structure. Replace\nit with the internal nfs_parsed_mount_data for nfsv4 in-kernel use.\n\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nAcked-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2283f8d6ed21ea2221df4cc329314b93f35351b0",
      "tree": "dbf8b87e45b4fa76d50c0fd7ec0b3d4f1afd94ca",
      "parents": [
        "6b18eaa0821a559c5e2b7ed4b90f8aca5a8e6228"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:43:56 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:26 2007 -0400"
      },
      "message": "NFS: use in-kernel mount argument structure for nfsv[23] mounts\n\nThe user-visible nfs_mount_data does not contain sufficient data to\ndescribe new mount options, and also is now a legacy structure. Replace\nit with the internal nfs_parsed_mount_data for nfsv[23] in-kernel use.\n\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nAcked-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6b18eaa0821a559c5e2b7ed4b90f8aca5a8e6228",
      "tree": "25f02ce2813cf7bc37b73b5a14a9a037c187eab7",
      "parents": [
        "4417c8c41a51a2ae95b2a2fa2811640b368c4151"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:43:29 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:23 2007 -0400"
      },
      "message": "NFS: move nfs_parsed_mount_data structure definition\n\nIn preparation for rearranging the nfs mount argument passing, make the\nnfs_parsed_mount_data struct visible across nfs kernel files.\n\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nAcked-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4417c8c41a51a2ae95b2a2fa2811640b368c4151",
      "tree": "40b585df4a75d86c3c97ca69f94508a020ced64d",
      "parents": [
        "4f40ee4a02a2d017b714d5b2faaf5c25bf9eae47"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:43:05 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:20 2007 -0400"
      },
      "message": "SUNRPC: export per-transport rpcbind netid\u0027s\n\nThe rpcbind (v3+) netid is provided by each RPC client transport. This fixes\nan omission in IPv6 rpcbind client support, and enables future extension.\n\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4f40ee4a02a2d017b714d5b2faaf5c25bf9eae47",
      "tree": "b5de8ba7983428f3764e24664a4ae790efb2b596",
      "parents": [
        "817cb9d43d4c330f9fc023d96e5beaa1abe8c4b7"
      ],
      "author": {
        "name": "\\\"Talpey, Thomas\\",
        "email": "Thomas.Talpey@netapp.com",
        "time": "Mon Sep 10 13:42:38 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:18 2007 -0400"
      },
      "message": "SUNRPC: move per-transport rpcbind netid\u0027s\n\nMove the TCP/UDP rpcbind netid\u0027s from the rpcbind client to a global header.\n\nSigned-off-by: Tom Talpey \u003ctmt@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "817cb9d43d4c330f9fc023d96e5beaa1abe8c4b7",
      "tree": "bf1337ed1d37a9408aa07c3b7ebfa3c376d79070",
      "parents": [
        "e159a08b6ab14e255536fddae75d448395295c6f"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:01:20 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:14 2007 -0400"
      },
      "message": "NFSD: Convert printk\u0027s to dprintk\u0027s in NFSD\u0027s nfs4xdr\n\nDue to recent edict to remove or replace printk\u0027s that can flood the system\nlog.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e159a08b6ab14e255536fddae75d448395295c6f",
      "tree": "ed707db605ce1f47fc0f6dbe26b07556589b0f01",
      "parents": [
        "fe82a183ca3c9188945c4ebeebc2ca45abfa24e5"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:01:15 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:12 2007 -0400"
      },
      "message": "LOCKD: Convert printk\u0027s to dprintk\u0027s in lockd XDR routines\n\nDue to recent edict to remove or replace printk\u0027s that might flood the\nsystem log.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fe82a183ca3c9188945c4ebeebc2ca45abfa24e5",
      "tree": "414f292cf5e9808359796af5d6b7c900a0aaefab",
      "parents": [
        "0ac83779fa5bffb90e32a97abc61f1840af31ee9"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:01:10 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:09 2007 -0400"
      },
      "message": "NFS: Convert printk\u0027s to dprintk\u0027s in fs/nfs/nfs?xdr.c\n\nDue to recent edict to replace or remove printk\u0027s that can be triggered en\nmasse by remote misbehavior.  Left a few that only occur just before a BUG.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0ac83779fa5bffb90e32a97abc61f1840af31ee9",
      "tree": "330ecddbeaaf2ba5980bf4377c6726682751fdc8",
      "parents": [
        "aad700073557c7932ef9f81c19a5e0647f8a6850"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:01:04 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:06 2007 -0400"
      },
      "message": "NFS: Add new \u0027mountaddr\u003d\u0027 mount option\n\nI got the \u0027mounthost\u003d\u0027 option wrong - it shouldn\u0027t look for an address\nvalue, but rather a hostname value.  However, the in-kernel mount client\nand NFS client cannot resolve a hostname by themselves; they rely on\nuser-land to pass in the resolved address.\n\nCreate a new mount option that does take an address so that the mount\nprogram\u0027s address can be passed in.  The mount hostname is now ignored\nby the kernel.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "aad700073557c7932ef9f81c19a5e0647f8a6850",
      "tree": "16fdf949b3c35468805e04b9b970da116bb9d220",
      "parents": [
        "efd8340bb19c26a43e77c92fee9283b1f5777204"
      ],
      "author": {
        "name": "James Lentini",
        "email": "jlentini@netapp.com",
        "time": "Mon Sep 24 17:32:49 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:04 2007 -0400"
      },
      "message": "[NFS] [PATCH] NFS: initialize default port in kernel mount client\n\nIf no mount server port number is specified, the previous change to the\nkernel mount client inadvertently allows the NFS server\u0027s port number to be\nthe used as the mount server\u0027s port number. If the user specifies an NFS\nserver port (-o port\u003dx), the mount will fail.\n\nThe fix below sets the mount server\u0027s port to 0 if no mount server\nport is specified by the user.\n\nSigned-off-by: James Lentini \u003cjlentini@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "efd8340bb19c26a43e77c92fee9283b1f5777204",
      "tree": "86cdb3fde61d900f0ba350db7c9d9586d7d2dcec",
      "parents": [
        "b79dc8ced1412e7056f3969bef40a30cc75ee530"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:58 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:17:01 2007 -0400"
      },
      "message": "NFS: Kernel mount client should use async bind\n\nSimplify the in-kernel mount client by using autobind instead of an\nexplicit call to rpc_getport_sync.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b79dc8ced1412e7056f3969bef40a30cc75ee530",
      "tree": "2a21fd59b9c4a38e7d3effad185db40ae60ceb3b",
      "parents": [
        "906462af4c707ba0238f3579fdb2b594c4ea29c3"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:52 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:58 2007 -0400"
      },
      "message": "SUNRPC: RPC bind failures should be permanent for NULL requests\n\nThe purpose of an RPC ping (a NULL request) is to determine whether the\nremote end is operating and supports the RPC program and version of the\nrequest.\n\nIf we do an RPC bind and the remote\u0027s rpcbind service says \"this\nprogram or service isn\u0027t supported\" then we have our answer already,\nand we should give up immediately.\n\nThis is good for the kernel mount client, as it will cause the request\nto fail, and then allow an immediate retry with different options.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "906462af4c707ba0238f3579fdb2b594c4ea29c3",
      "tree": "f3c15855aaef2353700f1bc91c56108c50ca4150",
      "parents": [
        "2429cbf6a1566b8e92436d615387e4250feab46b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:47 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:56 2007 -0400"
      },
      "message": "SUNRPC: Split another new rpcbind retry error code from EACCES\n\nAdd more new error code processing to the kernel\u0027s rpcbind client\nand to call_bind_status() to distinguish two cases:\n\nCase 1: the remote has replied that the program/version tuple is not\nregistered (returns EACCES)\n\nCase 2: retry with a lesser rpcbind version (rpcb now returns EPFNOSUPPORT)\n\nThis change allows more specific error processing for each of these two\ncases.  We now fail case 2 instead of retrying... it\u0027s a server\nconfiguration error not to support even rpcbind version 2.  And don\u0027t\nexpose this new error code to user land -- convert it to EIO before\nfailing the RPC.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2429cbf6a1566b8e92436d615387e4250feab46b",
      "tree": "e3d4906948d68a3d9bcb546b6eb6563f1cffaa60",
      "parents": [
        "4784cb51a3f66d401f8a08810231aa7dc8f44e43"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:41 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:53 2007 -0400"
      },
      "message": "SUNRPC: Add a new error code for retry waiting for another binder\n\nAdd new error code processing to the kernel\u0027s rpcbind client and to\ncall_bind_status() to distinguish two cases:\n\nCase 1: the remote has replied that the program/version tuple is not\nregistered (returns -EACCES)\n\nCase 2: another process is already in the middle of binding on this\ntransport (now returns -EAGAIN)\n\nThis change allows more specific retry processing for each of these two\ncases.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4784cb51a3f66d401f8a08810231aa7dc8f44e43",
      "tree": "a04a91b851bba89b0507a72e31cdee716d31bbf4",
      "parents": [
        "e65fe3976f594603ed7b1b4a99d3e9b867f573ea"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:36 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:51 2007 -0400"
      },
      "message": "SUNRPC: Retry bad rpcbind replies\n\nWhen a server returns a bad rpcbind reply, make rpcbind client recovery logic\nretry with an older protocol version.  Older versions are more likely to work\ncorrectly.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e65fe3976f594603ed7b1b4a99d3e9b867f573ea",
      "tree": "bacc7a15719862f3d9dd9441451dc80edad57afb",
      "parents": [
        "d66968f207b6402fd12c20145cb31dbe3608979c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:31 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:48 2007 -0400"
      },
      "message": "SUNRPC: Make rpcb_decode_getaddr more picky about universal addresses\n\nAdd better sanity checking of server replies to the GETVERSADDR reply\ndecoder.  Change the error return code: EIO is what other XDR decoding\nroutines return if there is a failure while decoding.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d66968f207b6402fd12c20145cb31dbe3608979c",
      "tree": "693fd189a2d9b414edfc9139db784ba6e48a1999",
      "parents": [
        "06b8d2552d50f802a3277137a565febcd59ef037"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:25 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:45 2007 -0400"
      },
      "message": "SUNRPC: Clean up in rpc_show_tasks\n\n/home/cel/linux/net/sunrpc/clnt.c: In function ‘rpc_show_tasks’:\n/home/cel/linux/net/sunrpc/clnt.c:1538: warning:\n\tsigned and unsigned type in conditional expression\n\nThis points out another case where a conditional expression returns a\nsigned value in one arm and an unsigned value in the other.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "06b8d2552d50f802a3277137a565febcd59ef037",
      "tree": "7b3b5d92e4a7a1bd8eff9e994a4c1899a8c35670",
      "parents": [
        "6d0aa06afd62a868d83c6021335622a316469527"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:20 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:42 2007 -0400"
      },
      "message": "SUNRPC: Make sure server name is reasonable before trying to print it\n\nCheck the length of the passed-in server name before trying to print it in\nthe log.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6d0aa06afd62a868d83c6021335622a316469527",
      "tree": "e14b13b31361295a91a37146f42f43a244224edf",
      "parents": [
        "89eb21c35b61b5157940e1b78c2c6d0529d11c63"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:15 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:40 2007 -0400"
      },
      "message": "SUNRPC: Use correct argument type in memcpy()\n\nNoticed by Tom Talpey \u003ctmt@netapp.com\u003e:\n\nOBTW, there\u0027s a nit on that memcpy, too. The r_addr is an array, so\n\nmemcpy(\u0026map-\u003er_addr\n\nis passing the address of the array as a char **. It\u0027s the same as\nmap-\u003er_addr, but technically the wrong type.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "89eb21c35b61b5157940e1b78c2c6d0529d11c63",
      "tree": "d276c10faa1370ab09ce711f87fe299a24995b03",
      "parents": [
        "5d34da3af923e0f950a89f160540d2506ca046ce"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:09 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:37 2007 -0400"
      },
      "message": "SUNRPC: fix a signed v. unsigned comparison nit in rpc_bind_new_program\n\n/home/cel/linux/net/sunrpc/clnt.c: In function ‘rpc_bind_new_program’:\n/home/cel/linux/net/sunrpc/clnt.c:445: warning:\n\tcomparison between signed and unsigned\n\nRPC version numbers are u32, not int.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5d34da3af923e0f950a89f160540d2506ca046ce",
      "tree": "5a8352adba55039f81824dbc80a3d025a9b342b3",
      "parents": [
        "143b6c4008a7928de7e139c3a77a90e4cad8db2c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:03 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:34 2007 -0400"
      },
      "message": "SUNRPC: Only one dprintk is needed during client creation\n\nRemove one of two identical dprintk\u0027s that occur when an RPC client is\ncreated.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "143b6c4008a7928de7e139c3a77a90e4cad8db2c",
      "tree": "339ee78286645d5e3704772cdf542ff2bc6aedc2",
      "parents": [
        "756805e7a76bcd2aae07fe31786fe453375e60b1"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Aug 16 16:03:31 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:32 2007 -0400"
      },
      "message": "SUNRPC: Fix generation of universal addresses for\n\nFix some problems with rpcbind v3 and v4 queries from the in-kernel rpcbind\nclient:\n\n1.  The r_addr argument must be a full universal address, not just an IP\naddress, and\n\n2.  The universal address in r_addr is the address of the remote rpcbind\nserver, not the RPC service being requested\n\nThis addresses bugzilla.kernel.org report 8891 for 2.6.23-rc and greater.\n\nIn addition, if the rpcbind client is unable to start the rpcbind request,\nmake sure not to leak the xprt.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\n"
    },
    {
      "commit": "756805e7a76bcd2aae07fe31786fe453375e60b1",
      "tree": "f741760cde49f5f9f433d6996300f44a916a743c",
      "parents": [
        "8945ee5e27156ef9708bc3a11da87ba689aa38b6"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Aug 16 16:03:26 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:29 2007 -0400"
      },
      "message": "SUNRPC: Add support for formatted universal addresses\n\n\"Universal addresses\" are a string representation of an IP address and\nport.  They are described fully in RFC 3530, section 2.2.  Add support\nfor generating them in the RPC client\u0027s socket transport module.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\n"
    },
    {
      "commit": "8945ee5e27156ef9708bc3a11da87ba689aa38b6",
      "tree": "ac6d0a0fd27b3d7f2acd2d50ab5d9e0941a4ff91",
      "parents": [
        "95392c593e13fa7546857425971f87e4ded6e0c1"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:58:04 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:26 2007 -0400"
      },
      "message": "SUNRPC: Split xs_reclassify_socket into an IPv4 and IPv6 version\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "95392c593e13fa7546857425971f87e4ded6e0c1",
      "tree": "d14037b40128187fb33c3c667331a5877cadd2a9",
      "parents": [
        "8f9d5b1a2e717fb9e0c4d2c60a224ecce905bd23"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:57:58 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:24 2007 -0400"
      },
      "message": "SUNRPC: Add a helper for extracting the address using the correct type\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8f9d5b1a2e717fb9e0c4d2c60a224ecce905bd23",
      "tree": "b72df915b34688c3b20b7b622b1eb738852259f6",
      "parents": [
        "68e220bd5c9fc52d8029275cd42e08f573ce3600"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:57:53 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:21 2007 -0400"
      },
      "message": "SUNRPC: Add IPv6 address support to net/sunrpc/xprtsock.c\n\nFinalize support for setting up RPC client transports to remote RPC\nservices addressed via IPv6.\n\nBased on work done by Gilles Quillard at Bull Open Source.\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": "68e220bd5c9fc52d8029275cd42e08f573ce3600",
      "tree": "57ecf6ca21530662ea1a857cd467964f2eaf219e",
      "parents": [
        "9c3d72de28eed3e882becd7054da2118f8a73131"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:57:48 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:18 2007 -0400"
      },
      "message": "SUNRPC: create connect workers for IPv6\n\nClone separate connect worker functions for connecting AF_INET6 sockets.\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": "9c3d72de28eed3e882becd7054da2118f8a73131",
      "tree": "0e96f484f5cd6f4f64c0af566e345c700c433089",
      "parents": [
        "16be2d20d999cb65daebfdaf0e560225e28fcb9d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:57:43 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:15 2007 -0400"
      },
      "message": "SUNRPC: Rename IPv4 connect workers\n\nPrepare for introduction of IPv6 versions of same.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "16be2d20d999cb65daebfdaf0e560225e28fcb9d",
      "tree": "215bfb914eca687419a5013dceadba746278c45f",
      "parents": [
        "90058d37c30ffce0e033ea3dcc6a539111483a58"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:57:38 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:13 2007 -0400"
      },
      "message": "SUNRPC: Refactor a part of socket connect logic into a helper function\n\nFinishing a socket connect is the same for IPv4 and IPv6, so split it out\ninto a helper.\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": "90058d37c30ffce0e033ea3dcc6a539111483a58",
      "tree": "baed7764ac3c00bc27244aa58bb1465c6dd87989",
      "parents": [
        "7dc753f0391ad94868609376f37be4833671b57d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:57:33 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:10 2007 -0400"
      },
      "message": "SUNRPC: create an IPv6-savvy mechanism for binding to a reserved port\n\nClone xs_bindresvport into two functions, one that can handle IPv4\naddresses, and one that can handle 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": "7dc753f0391ad94868609376f37be4833671b57d",
      "tree": "7b34dcdb70b2377b5f8e2d6160be9adda2df0ac3",
      "parents": [
        "20612005c51a5ba1bb17902276b9216825958724"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:57:28 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:08 2007 -0400"
      },
      "message": "SUNRPC: Rename xs_bind() to prepare for IPv6-specific bind method\n\nPrepare for introduction of IPv6-specific socket bind function.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "20612005c51a5ba1bb17902276b9216825958724",
      "tree": "c9b2cba06b859b7fc2ec029dbad0e4f2164fad65",
      "parents": [
        "d5b6443014940eb83788161c69b17cb7a1ffaaed"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:57:23 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:05 2007 -0400"
      },
      "message": "SUNRPC: Introduce support for setting the port number in IPv6 addresses\n\nWe could clone xs_set_port, but this is easier overall.\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": "d5b6443014940eb83788161c69b17cb7a1ffaaed",
      "tree": "36ff07511b2c5548bb1e76298aa6050b7515ccee",
      "parents": [
        "4b6473fba4e832ee1d15737bc38779501c349a61"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:57:18 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:02 2007 -0400"
      },
      "message": "SUNRPC: add support for IPv6 to the kernel\u0027s rpcbind client\n\nPrepare for adding IPv6 support to the RPC client by adding IPv6\ncapabilities to rpcbind.  Note that this is support on the query side\nonly; registering IPv6 addresses with the local portmapper will come\nlater.\n\nNote we have to take care not to fall back to using version 2 of the\nrpcbind protocol if we\u0027re dealing with IPv6 address.  Version 2 doesn\u0027t\nsupport IPv6 at all.\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": "4b6473fba4e832ee1d15737bc38779501c349a61",
      "tree": "df83058dc748253d66e57ffd600a9858d8af5678",
      "parents": [
        "ba10f2c23471b2ef106eb0c71ead4e9862766b8d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:57:12 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:59 2007 -0400"
      },
      "message": "SUNRPC: add a function to format IPv6 addresses\n\nClone xs_format_ipv4_peer_addresses into an IPv6 version.\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": "ba10f2c23471b2ef106eb0c71ead4e9862766b8d",
      "tree": "9c29bd7f858bda3cdbcd65dfa4df8e703fa469cc",
      "parents": [
        "fbfe3cc677c1a62ca6472abf24d03d4bf9f03a55"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:57:07 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:55 2007 -0400"
      },
      "message": "SUNRPC: Rename xs_format_peer_addresses\n\nPrepare to add an IPv6 version of xs_format_peer_addresses by renaming it\nto xs_format_ipv4_peer_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": "fbfe3cc677c1a62ca6472abf24d03d4bf9f03a55",
      "tree": "65c5f2138ba7d8ce51c4fa2f983c25827502416b",
      "parents": [
        "0c43b3d81cca46ab2469f8802f8bd68b49f1b2a5"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:57:02 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:52 2007 -0400"
      },
      "message": "SUNRPC: Add hex-formatted address support to rpc_peeraddr2str()\n\nAdd support for the NFS client\u0027s need to export volume information\nwith IP addresses formatted in hex instead of decimal.\n\nThis isn\u0027t used yet, but subsequent patches (not in this series) will\nchange the NFS client to use this functionality.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0c43b3d81cca46ab2469f8802f8bd68b49f1b2a5",
      "tree": "b8233aba6352474e8e440a6228e97875aa2e7728",
      "parents": [
        "bda243df2f5beebce92bae22bc01960544783984"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:56:57 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:49 2007 -0400"
      },
      "message": "SUNRPC: Free address buffers in a loop\n\nUse more generic logic to free buffers holding formatted addresses.  This\nmakes it less likely a bug will be introduced when adding additional buffer\ntypes in xs_format_peer_address().\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bda243df2f5beebce92bae22bc01960544783984",
      "tree": "5d1ff91bf110deb5577431cddd91457f1c86d372",
      "parents": [
        "b595bb15061567441546be1af883b256bcdfff9c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:56:52 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:46 2007 -0400"
      },
      "message": "SUNRPC: Use standard macros for printing IP addresses\n\ninclude/linux/kernel.h gives us some nice macros for formatting IP\naddresses.  Use them.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b595bb15061567441546be1af883b256bcdfff9c",
      "tree": "d20c54300e582f41650254ad769909125a6b3b7c",
      "parents": [
        "adc24df81d6903d2d6280d77e936aa5e1670d7a1"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:56:42 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:44 2007 -0400"
      },
      "message": "SUNRPC: Fix a signed v. unsigned comparison in net/sunrpc/xprtsock.c\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "adc24df81d6903d2d6280d77e936aa5e1670d7a1",
      "tree": "95f4cc417815e4cba7c3016e0d77aea5f1bc0fdd",
      "parents": [
        "ddc01c0813dc07ca7a2bd32c143a9b54a64915ce"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Aug 06 11:56:31 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:41 2007 -0400"
      },
      "message": "SUNRPC: Fix a signed v. unsigned comparison in rpcbind\u0027s XDR routines\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ddc01c0813dc07ca7a2bd32c143a9b54a64915ce",
      "tree": "19bd2ac9bd5f3148879384a9017a077582de1bc6",
      "parents": [
        "f8cf3678f4885d66475b19b10ec2e9918ff2ca1c"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Jul 30 08:47:38 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:39 2007 -0400"
      },
      "message": "[NFS] [PATCH] NFS: show addr\u003dipaddr in /proc/mounts rather than\n\nA minor thing, but useful when working with a server with multiple\naddrs. This looks like it might also be necessary if Miklos\u0027 effort\nto eliminate /etc/mtab ever comes to fruition.\n\nWhen displaying mount options in /proc/mounts, the kernel prints\n\"addr\u003dhostname\". This info is redundant since we already have the\nhostname displayed as part of the \"device\" section of the mount. This\npatch changes it to display the IP address to which the socket is\nconnected.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "f8cf3678f4885d66475b19b10ec2e9918ff2ca1c",
      "tree": "12d25b7a715dcf68ea98edb50291bca20ae3943a",
      "parents": [
        "c7e15961115028b99f6142266b5fb08acca0e8dd"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Aug 03 16:20:32 2007 +0200"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:36 2007 -0400"
      },
      "message": "[NFS] [PATCH] nfs: tiny makefile cleanup\n\nno need to set up foo-objs these days.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c7e15961115028b99f6142266b5fb08acca0e8dd",
      "tree": "21d6ca8d97234664f242e35430ba4f0dbf61df8e",
      "parents": [
        "4e769b934e7638038e232c05b64f644e7269a90f"
      ],
      "author": {
        "name": "Fabio Olive Leite",
        "email": "fleite@redhat.com",
        "time": "Thu Jul 26 22:59:00 2007 -0300"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:33 2007 -0400"
      },
      "message": "Re: [NFS] [PATCH] Attribute timeout handling and wrapping u32 jiffies\n\nI would like to discuss the idea that the current checks for attribute\ntimeout using time_after are inadequate for 32bit architectures, since\ntime_after works correctly only when the two timestamps being compared\nare within 2^31 jiffies of each other. The signed overflow caused by\ncomparing values more than 2^31 jiffies apart will flip the result,\ncausing incorrect assumptions of validity.\n\n2^31 jiffies is a fairly large period of time (~25 days) when compared\nto the lifetime of most kernel data structures, but for long lived NFS\nmounts that can sit idle for months (think that for some reason autofs\ncannot be used), it is easy to compare inode attribute timestamps with\nvery disparate or even bogus values (as in when jiffies have wrapped\nmany times, where the comparison doesn\u0027t even make sense).\n\nCurrently the code tests for attribute timeout by simply adding the\ndesired amount of jiffies to the stored timestamp and comparing that\nwith the current timestamp of obtained attribute data with time_after.\nThis is incorrect, as it returns true for the desired timeout period\nand another full 2^31 range of jiffies.\n\nIn testing with artificial jumps (several small jumps, not one big\ncrank) of the jiffies I was able to reproduce a problem found in a\nserver with very long lived NFS mounts, where attributes would not be\nrefreshed even after touching files and directories in the server:\n\nInitial uptime:\n03:42:01 up 6 min, 0 users, load average: 0.01, 0.12, 0.07\n\nNFS volume is mounted and time is advanced:\n03:38:09 up 25 days, 2 min, 0 users, load average: 1.22, 1.05, 1.08\n\n# ls -l /local/A/foo/bar /nfs/A/foo/bar\n-rw-r--r--  1 root root 0 Dec 17 03:38 /local/A/foo/bar\n-rw-r--r--  1 root root 0 Nov 22 00:36 /nfs/A/foo/bar\n\n# touch /local/A/foo/bar\n\n# ls -l /local/A/foo/bar /nfs/A/foo/bar\n-rw-r--r--  1 root root 0 Dec 17 03:47 /local/A/foo/bar\n-rw-r--r--  1 root root 0 Nov 22 00:36 /nfs/A/foo/bar\n\nWe can see the local mtime is updated, but the NFS mount still shows\nthe old value. The patch below makes it work:\n\nInitial setup...\n07:11:02 up 25 days, 1 min,  0 users,  load average: 0.15, 0.03, 0.04\n\n# ls -l /local/A/foo/bar /nfs/A/foo/bar\n-rw-r--r--  1 root root 0 Jan 11 07:11 /local/A/foo/bar\n-rw-r--r--  1 root root 0 Jan 11 07:11 /nfs/A/foo/bar\n\n# touch /local/A/foo/bar\n\n# ls -l /local/A/foo/bar /nfs/A/foo/bar\n-rw-r--r--  1 root root 0 Jan 11 07:14 /local/A/foo/bar\n-rw-r--r--  1 root root 0 Jan 11 07:14 /nfs/A/foo/bar\n\nSigned-off-by: Fabio Olive Leite \u003cfleite@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4e769b934e7638038e232c05b64f644e7269a90f",
      "tree": "6508c1d273f22d3704eb849fb90404bade7cb4a7",
      "parents": [
        "50e437d522a6cc34a882b2f740297f1b6b4c3af3"
      ],
      "author": {
        "name": "Peter Staubach",
        "email": "staubach@redhat.com",
        "time": "Fri Aug 03 15:07:10 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:29 2007 -0400"
      },
      "message": "64 bit ino support for NFS client\n\nHi.\n\nAttached is a patch to modify the NFS client code to support\n64 bit ino\u0027s, as appropriate for the system and the NFS\nprotocol version.\n\nThe code basically just expand the NFS interfaces for routines\nwhich handle ino\u0027s from using ino_t to u64 and then uses the\nfileid in the nfs_inode instead of i_ino in the inode.  The\ncode paths that were updated are in the getattr method and\nthe readdir methods.\n\nThis should be no real change on 64 bit platforms.  Since\nthe ino_t is an unsigned long, it would already be 64 bits\nwide.\n\n    Thanx...\n\n           ps\n\nSigned-off-by: Peter Staubach \u003cstaubach@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "50e437d522a6cc34a882b2f740297f1b6b4c3af3",
      "tree": "6026dbb5014495aa9f847a342b8f96c87aabd4ef",
      "parents": [
        "7b159fc18d417980f57aef64cab3417ee6af70f8"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jun 07 22:44:34 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:26 2007 -0400"
      },
      "message": "SUNRPC: Convert rpc_pipefs to use the generic filesystem notification hooks\n\nThis will allow rpc.gssd to use inotify instead of dnotify in order to\nlocate new rpc upcall pipes.\n\nThis also requires the exporting of __audit_inode_child(), which is used by\nfsnotify_create() and fsnotify_mkdir(). Ccing David Woodhouse.\n\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "7b159fc18d417980f57aef64cab3417ee6af70f8",
      "tree": "880f31179a9836ad9cd63b91dd6d77b61b01017c",
      "parents": [
        "34901f70d119d88126e7390351b8c780646628e1"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 25 14:09:54 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:23 2007 -0400"
      },
      "message": "NFS: Fall back to synchronous writes when a background write errors...\n\nThis helps prevent huge queues of background writes from building up\nwhenever the server runs out of disk or quota space, or if someone changes\nthe file access modes behind our backs.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "34901f70d119d88126e7390351b8c780646628e1",
      "tree": "e7dbbc44377adfcdbf4f09331428ad4c90fc3032",
      "parents": [
        "ed90ef51a33f572fa7d00c8b05f7457be727e74f"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 25 14:09:54 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:21 2007 -0400"
      },
      "message": "NFS: Writeback optimisation\n\nSchedule writes using WB_SYNC_NONE first, then come back for a second pass\nusing WB_SYNC_ALL.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ed90ef51a33f572fa7d00c8b05f7457be727e74f",
      "tree": "4c41336dd045cd9a857454a5d8a595288d64d6e1",
      "parents": [
        "90e9a3f9b0a14198a8ae5a0a5c13ad30f0b8b40d"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jul 20 13:13:28 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:18 2007 -0400"
      },
      "message": "NFS: Clean up NFS writeback flush code\n\nThe only user of nfs_sync_mapping_range() is nfs_getattr(), which uses it\nto flush out the entire inode without sending a commit. We therefore\nreplace nfs_sync_mapping_range with a more appropriate helper.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "90e9a3f9b0a14198a8ae5a0a5c13ad30f0b8b40d",
      "tree": "7d7a39b929bc07c7a339d316df654858829e7cce",
      "parents": [
        "f758c885199611504ff681e3ba66c410b4e9e995"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jul 22 19:27:46 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:16 2007 -0400"
      },
      "message": "VFS: Remove writeback_control-\u003efs_private\n\nThe only user of this field was NFS.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "f758c885199611504ff681e3ba66c410b4e9e995",
      "tree": "8e68116aec5f0d99ce721d45f5ee299e52940284",
      "parents": [
        "9cccef95052c7169040c3577e17d4f6fa230cc28"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jul 22 19:27:32 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:13 2007 -0400"
      },
      "message": "NFS: Clean up nfs_writepages()\n\nJust call write_cache_pages directly instead of hacking the writeback\ncontrol structure in order to find out if we were called from writepages()\nor directly from the VM.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "9cccef95052c7169040c3577e17d4f6fa230cc28",
      "tree": "56d0cfc610272f67bde429565d3b23b83d2df6af",
      "parents": [
        "94387fb1aa16ee853d00f959373132a181b0196b"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jul 22 17:09:05 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:11 2007 -0400"
      },
      "message": "NFS: Clean up write code...\n\nThe addition of nfs_page_mkwrite means that We should no longer need to\ncreate requests inside nfs_writepage()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "94387fb1aa16ee853d00f959373132a181b0196b",
      "tree": "e41d802c5f6aa8f1d9077b6e15337e2d143098e6",
      "parents": [
        "bbf25010f1a6b761914430f5fca081ec8c7accd1"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jul 22 17:09:05 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:15:08 2007 -0400"
      },
      "message": "NFS: Add the helper nfs_vm_page_mkwrite\n\nThis is needed in order to set up a proper nfs_page request for mmapped\nfiles.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bbf25010f1a6b761914430f5fca081ec8c7accd1",
      "tree": "b612e5257611ef33196aacc00fba813c943384d5",
      "parents": [
        "5df3e0d953c8af6f5b96aa090824b929cb5ab599"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 09 13:31:38 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 09 13:31:38 2007 -0700"
      },
      "message": "Linux 2.6.23\n"
    },
    {
      "commit": "5df3e0d953c8af6f5b96aa090824b929cb5ab599",
      "tree": "5ec703d42ebd1fa92150d110d4ce47d7891bf2cd",
      "parents": [
        "a6d85430424d44e946e0946bfaad607115510989",
        "2da23247935526da567e18caddb4533cfa194aa9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 09 12:38:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 09 12:38:44 2007 -0700"
      },
      "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:\n  [MIPS] Au1000: set the PCI controller IO base\n  [MIPS] Alchemy: Fix USB initialization.\n  [MIPS] IP32: Fix fatal typo in address computation.\n"
    },
    {
      "commit": "a6d85430424d44e946e0946bfaad607115510989",
      "tree": "f324085c0d92fb8ebae928bab3a5f0b480a3bb4a",
      "parents": [
        "baf14aa14efcfdb5a74d5cf804691086c6bec743"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 11:04:57 2007 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 09 12:38:26 2007 -0700"
      },
      "message": "NLM: Fix a memory leak in nlmsvc_testlock\n\nThe recent fix for a circular lock dependency unfortunately introduced a\npotential memory leak in the event where the call to nlmsvc_lookup_host\nfails for some reason.\n\nThanks to Roel Kluin for spotting this.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "baf14aa14efcfdb5a74d5cf804691086c6bec743",
      "tree": "3c8cb3e429253cea3c5e474892efb722834e9378",
      "parents": [
        "e2a57a815933b2d2e375f9de6be223098024ab90"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Oct 09 13:51:57 2007 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 09 12:38:26 2007 -0700"
      },
      "message": "sata_mv: correct S/G table limits\n\nThe recent mv_fill_sg() rewrite, to fix a data corruption problem\nrelated to IOMMU virtual merging, forgot to account for the\npotentially-increased size of the scatter/gather table after its run.\n\nAdditionally, the DMA boundary is reduced from 0xffffffff to 0xffff\nto more closely match the needs of mv_fill_sg().\n\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2da23247935526da567e18caddb4533cfa194aa9",
      "tree": "0c10f270d4be38c1af5330f90a8ea9572915db2a",
      "parents": [
        "f708631ac75c901b20c7622be9abdbc29d4d2dd7"
      ],
      "author": {
        "name": "Florian Fainelli",
        "email": "florian.fainelli@telecomint.eu",
        "time": "Tue Sep 25 17:07:30 2007 +0200"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Oct 09 12:47:48 2007 +0100"
      },
      "message": "[MIPS] Au1000: set the PCI controller IO base\n\nThe PCI controller IO base was not set in the au1000 pci code.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John Crispin \u003cblogic@openwrt.org\u003e\nSigned-off-by: Florian Fainelli \u003cflorian.fainelli@telecomint.eu\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "f708631ac75c901b20c7622be9abdbc29d4d2dd7",
      "tree": "5738ad6272a715fbe5db5b3bcc3be8b62aa2d113",
      "parents": [
        "378a545954abfec1c9499203206e0ffb5c2118d2"
      ],
      "author": {
        "name": "Florian Fainelli",
        "email": "florian.fainelli@telecomint.eu",
        "time": "Tue Sep 25 17:07:24 2007 +0200"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Oct 09 12:47:48 2007 +0100"
      },
      "message": "[MIPS] Alchemy: Fix USB initialization.\n\nThis patch fixes a wrong ifdef in the board setup code, leading to the GPIO\npin not being pulled high, and thus the USB switch not being powered at all.\n\nThis finishes the rename of CONFIG_USB_OHCI to CONFIG_USB_OHCI_HCD, which\nstarted in 2005 (before 2.6.12-rc2), then probably because things were\nworking anyway for most people got forgotten.\n\n[Ralf: Paolo\u0027s original patch didn\u0027t fix the module case, Florian\u0027s patch\nonly fixed MTX1 etc. so this is a combined patch plus some cleanups.]\n\nCc: Giuseppe Patanè \u003cgiuseppe.patane@tvblob.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John Crispin \u003cblogic@openwrt.org\u003e\nSigned-off-by: Florian Fainelli \u003cflorian.fainelli@telecomint.eu\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "378a545954abfec1c9499203206e0ffb5c2118d2",
      "tree": "3d11cf69f7a49b06edcbc580a1e0b3561d64c6e6",
      "parents": [
        "e2a57a815933b2d2e375f9de6be223098024ab90"
      ],
      "author": {
        "name": "Giuseppe Sacco",
        "email": "giuseppe@eppesuigoccas.homedns.org",
        "time": "Sat Oct 06 19:55:03 2007 +0200"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Oct 09 12:47:48 2007 +0100"
      },
      "message": "[MIPS] IP32: Fix fatal typo in address computation.\n\nSigned-off-by: Giuseppe Sacco \u003ceppesuig@debian.org\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "e2a57a815933b2d2e375f9de6be223098024ab90",
      "tree": "c455ea75a55dbd633a61c7e84fa3b8a3d9186a5e",
      "parents": [
        "d39d5ed97e2b8e089f85ffaf5909768d83147be0"
      ],
      "author": {
        "name": "Maarten Bressers",
        "email": "mbres@gentoo.org",
        "time": "Mon Oct 08 15:59:13 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 08 16:06:51 2007 -0700"
      },
      "message": "Correct Makefile rule for generating custom keymap\n\nWhen building a custom keymap, after setting GENERATE_KEYMAP :\u003d 1 in\ndrivers/char/Makefile, the kernel build fails like this:\n\n    CC      drivers/char/vt.o\n  make[2]: *** No rule to make target `drivers/char/%.map\u0027, needed by `drivers/char/defkeymap.c\u0027.  Stop.\n  make[1]: *** [drivers/char] Error 2\n  make: *** [drivers] Error 2\n\nThis was caused by commit af8b128719f5248e542036ea994610a29d0642a6, which\ndeleted a necessary colon from the Makefile rule that generates the keymap,\nsince that rule contains both a target and a target-pattern.  The following\npatch puts the colon back:\n\nSigned-off-by: Maarten Bressers \u003cmbres@gentoo.org\u003e\nCc: Yoichi Yuasa \u003cyoichi_yuasa@tripeaks.co.jp\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d39d5ed97e2b8e089f85ffaf5909768d83147be0",
      "tree": "9fd0a0aefec9e58f71ed343452242b2685dca9d1",
      "parents": [
        "e46dc1dab969550d4136e9be0e7919ca09e49573"
      ],
      "author": {
        "name": "Karsten Keil",
        "email": "kkeil@suse.de",
        "time": "Mon Oct 08 12:52:09 2007 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 08 13:01:21 2007 -0700"
      },
      "message": "ISDN: Fix data access out of array bounds\n\nFix against access random data bytes outside the dev-\u003echanmap array.\nThanks to Oliver Neukum for pointing me to this issue.\n\nSigned-off-by: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e46dc1dab969550d4136e9be0e7919ca09e49573",
      "tree": "86dbc21796b402c895fd96d5197bf38d8d060545",
      "parents": [
        "87e2831c3fa39cbf6f7ab676bb5aef039b9659e2",
        "bf0b48dfc368c07c42b5a3a5658c8ee81b4283ac"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 08 12:59:10 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 08 12:59:10 2007 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:\n  [IPv6]: Fix ICMPv6 redirect handling with target multicast address\n  [PKT_SCHED] cls_u32: error code isn\u0027t been propogated properly\n  [ROSE]: Fix rose.ko oops on unload\n  [TCP]: Fix fastpath_cnt_hint when GSO skb is partially ACKed\n"
    },
    {
      "commit": "87e2831c3fa39cbf6f7ab676bb5aef039b9659e2",
      "tree": "88e1a3fca607a0643a7f6e60aef80a2bc04323c3",
      "parents": [
        "745ad48e8cac47beec0b2f72dc3c64424bce1fec"
      ],
      "author": {
        "name": "Yan Zheng",
        "email": "yanzheng@21cn.com",
        "time": "Mon Oct 08 12:16:20 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 08 12:58:14 2007 -0700"
      },
      "message": "AIO: fix cleanup in io_submit_one(...)\n\nWhen IOCB_FLAG_RESFD flag is set and iocb-\u003eaio_resfd is incorrect,\nstatement \u0027goto out_put_req\u0027 is executed. At label \u0027out_put_req\u0027,\naio_put_req(..) is called, which requires \u0027req-\u003eki_filp\u0027 set.\n\nSigned-off-by: Yan Zheng\u003cyanzheng@21cn.com\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "745ad48e8cac47beec0b2f72dc3c64424bce1fec",
      "tree": "a16a8eedb7d6e27eaba86fd0cca8ea7bfd0cdcd8",
      "parents": [
        "dd204d63cd11509081b41d7ab305fdc173382039"
      ],
      "author": {
        "name": "Yan Zheng",
        "email": "yanzheng@21cn.com",
        "time": "Mon Oct 08 10:08:37 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 08 12:58:14 2007 -0700"
      },
      "message": "fix page release issue in filemap_fault\n\nfind_lock_page increases page\u0027s usage count, we should decrease it\nbefore return VM_FAULT_SIGBUS\n\nSigned-off-by: Yan Zheng\u003cyanzheng@21cn.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dd204d63cd11509081b41d7ab305fdc173382039",
      "tree": "12dcbf4b258de6962b960f4f5fdd46866d7bcdc3",
      "parents": [
        "a200ee182a016752464a12cb2e8762e48254bb09"
      ],
      "author": {
        "name": "Yan Zheng",
        "email": "yanzheng@21cn.com",
        "time": "Mon Oct 08 10:05:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 08 12:58:14 2007 -0700"
      },
      "message": "fix VM_CAN_NONLINEAR check in sys_remap_file_pages\n\nThe test for VM_CAN_NONLINEAR always fails\n\nSigned-off-by: Yan Zheng\u003cyanzheng@21cn.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a200ee182a016752464a12cb2e8762e48254bb09",
      "tree": "7b273f002625a4c368f7b20b144990f7f4f81df9",
      "parents": [
        "3eb215de26e6e94bf5fed9cb77230c383b30e53b"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Mon Oct 08 18:54:37 2007 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 08 12:58:14 2007 -0700"
      },
      "message": "mm: set_page_dirty_balance() vs -\u003epage_mkwrite()\n\nAll the current page_mkwrite() implementations also set the page dirty. Which\nresults in the set_page_dirty_balance() call to _not_ call balance, because the\npage is already found dirty.\n\nThis allows us to dirty a _lot_ of pages without ever hitting\nbalance_dirty_pages().  Not good (tm).\n\nForce a balance call if -\u003epage_mkwrite() was successful.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bf0b48dfc368c07c42b5a3a5658c8ee81b4283ac",
      "tree": "7174e3ce995d6deaefb76027bc1a6265ccd25d11",
      "parents": [
        "bf1b803b01b00c3801e0aa373ba0305f8278e260"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Mon Oct 08 00:12:05 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 08 00:12:05 2007 -0700"
      },
      "message": "[IPv6]: Fix ICMPv6 redirect handling with target multicast address\n\nWhen the ICMPv6 Target address is multicast, Linux processes the \nredirect instead of dropping it.  The problem is in this code in \nndisc_redirect_rcv():\n\n         if (ipv6_addr_equal(dest, target)) {\n                 on_link \u003d 1;\n         } else if (!(ipv6_addr_type(target) \u0026 IPV6_ADDR_LINKLOCAL)) {\n                 ND_PRINTK2(KERN_WARNING\n                            \"ICMPv6 Redirect: target address is not \nlink-local.\\n\");\n                 return;\n         }\n\nThis second check will succeed if the Target address is, for example, \nFF02::1 because it has link-local scope.  Instead, it should be checking \nif it\u0027s a unicast link-local address, as stated in RFC 2461/4861 Section \n8.1:\n\n       - The ICMP Target Address is either a link-local address (when\n         redirected to a router) or the same as the ICMP Destination\n         Address (when redirected to the on-link destination).\n\nI know this doesn\u0027t explicitly say unicast link-local address, but it\u0027s \nimplied.\n\nThis bug is preventing Linux kernels from achieving IPv6 Logo Phase II \ncertification because of a recent error that was found in the TAHI test \nsuite - Neighbor Disovery suite test 206 (v6LC.2.3.6_G) had the \nmulticast address in the Destination field instead of Target field, so \nwe were passing the test.  This won\u0027t be the case anymore.\n\nThe patch below fixes this problem, and also fixes ndisc_send_redirect() \nto not send an invalid redirect with a multicast address in the Target \nfield.  I re-ran the TAHI Neighbor Discovery section to make sure Linux \npasses all 245 tests now.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nAcked-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bf1b803b01b00c3801e0aa373ba0305f8278e260",
      "tree": "9a4e2f4a33009c168b7d22ce8c9fc32a44a5b132",
      "parents": [
        "891e6a931255238dddd08a7b306871240961a27f"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Sun Oct 07 23:57:45 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 07 23:57:45 2007 -0700"
      },
      "message": "[PKT_SCHED] cls_u32: error code isn\u0027t been propogated properly\n    \nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "891e6a931255238dddd08a7b306871240961a27f",
      "tree": "70cd2faf43bd7f306f3b7a758388e6b272ff1730",
      "parents": [
        "48611c47d09023d9356e78550d1cadb8d61da9c8"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Oct 07 23:44:17 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 07 23:44:17 2007 -0700"
      },
      "message": "[ROSE]: Fix rose.ko oops on unload\n\nCommit a3d384029aa304f8f3f5355d35f0ae274454f7cd aka\n\"[AX.25]: Fix unchecked rose_add_loopback_neigh uses\"\ntransformed rose_loopback_neigh var into statically allocated one.\nHowever, on unload it will be kfree\u0027s which can\u0027t work.\n\nSteps to reproduce:\n\n\tmodprobe rose\n\trmmod rose\n\nBUG: unable to handle kernel NULL pointer dereference at virtual address 00000008\n printing eip:\nc014c664\n*pde \u003d 00000000\nOops: 0000 [#1]\nPREEMPT DEBUG_PAGEALLOC\nModules linked in: rose ax25 fan ufs loop usbhid rtc snd_intel8x0 snd_ac97_codec ehci_hcd ac97_bus uhci_hcd thermal usbcore button processor evdev sr_mod cdrom\nCPU:    0\nEIP:    0060:[\u003cc014c664\u003e]    Not tainted VLI\nEFLAGS: 00210086   (2.6.23-rc9 #3)\nEIP is at kfree+0x48/0xa1\neax: 00000556   ebx: c1734aa0   ecx: f6a5e000   edx: f7082000\nesi: 00000000   edi: f9a55d20   ebp: 00200287   esp: f6a5ef28\nds: 007b   es: 007b   fs: 0000  gs: 0033  ss: 0068\nProcess rmmod (pid: 1823, ti\u003df6a5e000 task\u003df7082000 task.ti\u003df6a5e000)\nStack: f9a55d20 f9a5200c 00000000 00000000 00000000 f6a5e000 f9a5200c f9a55a00 \n       00000000 bf818cf0 f9a51f3f f9a55a00 00000000 c0132c60 65736f72 00000000 \n       f69f9630 f69f9528 c014244a f6a4e900 00200246 f7082000 c01025e6 00000000 \nCall Trace:\n [\u003cf9a5200c\u003e] rose_rt_free+0x1d/0x49 [rose]\n [\u003cf9a5200c\u003e] rose_rt_free+0x1d/0x49 [rose]\n [\u003cf9a51f3f\u003e] rose_exit+0x4c/0xd5 [rose]\n [\u003cc0132c60\u003e] sys_delete_module+0x15e/0x186\n [\u003cc014244a\u003e] remove_vma+0x40/0x45\n [\u003cc01025e6\u003e] sysenter_past_esp+0x8f/0x99\n [\u003cc012bacf\u003e] trace_hardirqs_on+0x118/0x13b\n [\u003cc01025b6\u003e] sysenter_past_esp+0x5f/0x99\n \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nCode: 05 03 1d 80 db 5b c0 8b 03 25 00 40 02 00 3d 00 40 02 00 75 03 8b 5b 0c 8b 73 10 8b 44 24 18 89 44 24 04 9c 5d fa e8 77 df fd ff \u003c8b\u003e 56 08 89 f8 e8 84 f4 fd ff e8 bd 32 06 00 3b 5c 86 60 75 0f \nEIP: [\u003cc014c664\u003e] kfree+0x48/0xa1 SS:ESP 0068:f6a5ef28\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "48611c47d09023d9356e78550d1cadb8d61da9c8",
      "tree": "1e118a43db7143f8091b5b0a95e6d6f85dc5b2f9",
      "parents": [
        "3eb215de26e6e94bf5fed9cb77230c383b30e53b"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Oct 07 23:43:10 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 07 23:43:10 2007 -0700"
      },
      "message": "[TCP]: Fix fastpath_cnt_hint when GSO skb is partially ACKed\n\nWhen only GSO skb was partially ACKed, no hints are reset,\ntherefore fastpath_cnt_hint must be tweaked too or else it can\ncorrupt fackets_out. The corruption to occur, one must have\nnon-trivial ACK/SACK sequence, so this bug is not very often\nthat harmful. There\u0027s a fackets_out state reset in TCP because\nfackets_out is known to be inaccurate and that fixes the issue\neventually anyway.\n\nIn case there was also at least one skb that got fully ACKed,\nthe fastpath_skb_hint is set to NULL which causes a recount for\nfastpath_cnt_hint (the old value won\u0027t be accessed anymore),\nthus it can safely be decremented without additional checking.\n\nReported by Cedric Le Goater \u003cclg@fr.ibm.com\u003e\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3eb215de26e6e94bf5fed9cb77230c383b30e53b",
      "tree": "3500a575ea6458bf9f256427abebfa69458db151",
      "parents": [
        "85923b124624eb49ebef4731bb6b5670e792ff57"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sun Oct 07 12:22:21 2007 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Oct 07 16:42:22 2007 -0700"
      },
      "message": "Driver core: fix SYSF_DEPRECATED breakage for nested classdevs\n\nWe should only reparent to a class former class devices that\nform the base of class hierarchy. Nested devices should still\ngrow from their real parents.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nTested-by: Andrey Borzenkov \u003carvidjaar@mail.ru\u003e\nTested-by: Anssi Hannula \u003canssi.hannula@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "85923b124624eb49ebef4731bb6b5670e792ff57",
      "tree": "fffb9af18c3639865552288210790000a63f666f",
      "parents": [
        "9d9b7ad717474636dc961e6c321970fd799e1cb3",
        "a1134dd48d59e532b801659163539bf01cae7673"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Oct 07 16:41:09 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Oct 07 16:41:09 2007 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:\n  firewire: point to migration document\n"
    },
    {
      "commit": "9d9b7ad717474636dc961e6c321970fd799e1cb3",
      "tree": "0bd51e2f828492747641624884f9a6cb3676d614",
      "parents": [
        "dfb0042d43d4e7664f7e3af1b51c9b08175483a6"
      ],
      "author": {
        "name": "Attila Kinali",
        "email": "attila@kinali.ch",
        "time": "Sun Oct 07 00:24:38 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Oct 07 16:28:43 2007 -0700"
      },
      "message": "Add manufacturer and card id of teltonica pcmcia modems\n\nAdd the manufacturer and card id of teltonica pcmcia modems to serial_cs.c\n\nSigned-off-by: Attila Kinali \u003cattila@kinali.ch\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dfb0042d43d4e7664f7e3af1b51c9b08175483a6",
      "tree": "f0cb7c713ce437681d5ba293cffd023957b1945d",
      "parents": [
        "291041e935e6d0513f2b7e4a300aa9f02ec1d925"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Sun Oct 07 00:24:37 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Oct 07 16:28:43 2007 -0700"
      },
      "message": "sysrq docs: document sequence that actually works\n\nDocument sequence of keypresses that actually works. Yes, this changed\nyear-or-so ago.\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "291041e935e6d0513f2b7e4a300aa9f02ec1d925",
      "tree": "626b06b52d5ce0a41c7bf21ce4314e2a9fbe79ff",
      "parents": [
        "7a5c5d5735e785a700a377a5fce913b8ad45a58f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Oct 07 00:24:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Oct 07 16:28:43 2007 -0700"
      },
      "message": "fix bogus reporting of signals by audit\n\nAsync signals should not be reported as sent by current in audit log.  As\nit is, we call audit_signal_info() too early in check_kill_permission().\nNote that check_kill_permission() has that test already - it needs to know\nif it should apply current-based permission checks.  So the solution is to\nmove the call of audit_signal_info() between those.\n\nBogosity in question is easily reproduced - add a rule watching for e.g.\nkill(2) from specific process (so that audit_signal_info() would not\nshort-circuit to nothing), say load_policy, watch the bogus OBJ_PID entry\nin audit logs claiming that write(2) on selinuxfs file issued by\nload_policy(8) had somehow managed to send a signal to syslogd...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Steve Grubb \u003csgrubb@redhat.com\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7a5c5d5735e785a700a377a5fce913b8ad45a58f",
      "tree": "ff138cfc90e67b1958e3806efc91211d9d309577",
      "parents": [
        "a560aa48eed66fdf78f2a2813ab7b4ca766a84ce"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Sun Oct 07 00:24:34 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Oct 07 16:28:43 2007 -0700"
      },
      "message": "Move kasprintf.o to obj-y\n\nModulat lguest started giving linking errors\n\nMODPOST 1 modules\nERROR: \"kasprintf\" [drivers/lguest/lg.ko] undefined!\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "a560aa48eed66fdf78f2a2813ab7b4ca766a84ce"
}
