)]}'
{
  "log": [
    {
      "commit": "75659ca0c10992dcb39258518368a0f6f56e935d",
      "tree": "5d014ceb2f10158061a23d0d976f9a613d85e659",
      "parents": [
        "fbdde7bd274d74729954190f99afcb1e3d9bbfba",
        "2dfe485a2c8afa54cb069fcf48476f6c90ea3fdf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 01 11:45:47 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 01 11:45:47 2008 +1100"
      },
      "message": "Merge branch \u0027task_killable\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc\n\n* \u0027task_killable\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc: (22 commits)\n  Remove commented-out code copied from NFS\n  NFS: Switch from intr mount option to TASK_KILLABLE\n  Add wait_for_completion_killable\n  Add wait_event_killable\n  Add schedule_timeout_killable\n  Use mutex_lock_killable in vfs_readdir\n  Add mutex_lock_killable\n  Use lock_page_killable\n  Add lock_page_killable\n  Add fatal_signal_pending\n  Add TASK_WAKEKILL\n  exit: Use task_is_*\n  signal: Use task_is_*\n  sched: Use task_contributes_to_load, TASK_ALL and TASK_NORMAL\n  ptrace: Use task_is_*\n  power: Use task_is_*\n  wait: Use TASK_NORMAL\n  proc/base.c: Use task_is_*\n  proc/array.c: Use TASK_REPORT\n  perfmon: Use task_is_*\n  ...\n\nFixed up conflicts in NFS/sunrpc manually..\n"
    },
    {
      "commit": "f1ec08cb9492cab579f85f9d937c79788b1dfde3",
      "tree": "d43da0c7d36c547f562b678bb725f688a9be470f",
      "parents": [
        "b91e101fca70319f9ca839311bceff5f44dfc1ed"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Jan 14 15:11:53 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:06:09 2008 -0500"
      },
      "message": "SUNRPC: Use appropriate argument types in rpcb client\n\nClean up: Follow recommendations of Chapter 5 of Documentation/CodingStyle\nand use \"u32\" instead of \"__u32\" for types in definitions that are not\nshared with user space.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b454ae906085cf7774fb4756746680c9b03b6f84",
      "tree": "c5f84a9524dd7a9c7470ef0782e2d79df94d3f5e",
      "parents": [
        "cab6fc1b77c3ec4471d7d54ff6db9ad2dd59c2f5"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Jan 07 18:34:48 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:06:04 2008 -0500"
      },
      "message": "SUNRPC: fewer conditionals in the format_ip_address routines\n\nClean up: have the set up routines explicitly pass the strings to be used\nfor the transport name and NETID.  This removes a number of conditionals\nand dependencies on rpc_xprt.prot, which is overloaded.\n\nTighten up type checking on the address_strings array while we\u0027re at it.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ba7392bb37cb12781890f45d7ddee1618e33a036",
      "tree": "4c9a6cb3b22cae407f810c214275ab107ee3fc77",
      "parents": [
        "2881ae74e68ecfe3b32a90936e5d93a9ba598c3a"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Dec 20 16:03:55 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:59 2008 -0500"
      },
      "message": "SUNRPC: Add support for per-client timeout values\n\nIn order to be able to support setting the timeo and retrans parameters on\na per-mountpoint basis, we move the rpc_timeout structure into the\nrpc_clnt.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2881ae74e68ecfe3b32a90936e5d93a9ba598c3a",
      "tree": "d454fdf3b5da159935ca268648d45b5d1a29027d",
      "parents": [
        "698b6d088e8a5d907596c689d5ae9109611c5b59"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Dec 20 16:03:54 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:58 2008 -0500"
      },
      "message": "SUNRPC: Clean up the transport timeout initialisation\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0fb2b7e945f55a8317e5f58db7c068aab5b825a1",
      "tree": "3463c1bfe730486292309d0851ad2dd94c081e23",
      "parents": [
        "0a48f5d70fa9e87269d076fe27f3563f4375c479"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:56:46 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:50 2008 -0500"
      },
      "message": "SUNRPC: Move universal address definitions to global header\n\nUniversal addresses are defined in RFC 1833 and clarified in RFC 3530.  We\nneed to use them in several places in the NFS and RPC clients, so move the\nrelevant definition and block comment to an appropriate global include\nfile.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c087567d3ffb2c7c61e091982e6ca45478394f1a",
      "tree": "39350f856b53101f98fb789d9afefb89f7b80802",
      "parents": [
        "a4a874990cbc1bc5df6f357c4f2d043cd1923e15"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 18 18:32:38 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:41 2008 -0500"
      },
      "message": "SUNRPC: Remove the obsolete RPC_WAITQ macro\n\nNow that we\u0027ve killed off all the users.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "47fe064831a2a949f6c1e0086f61a105e99ea867",
      "tree": "e5a7d80ef3e3ab936257253de9c25f3dad62a2f9",
      "parents": [
        "0773769191d943358a8392fa86abd756d004c4b6"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:42:55 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:40 2008 -0500"
      },
      "message": "SUNRPC: Unexport rpc_init_task() and rpc_execute()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e8f5d77c8029ff8f5dcd1dfc133aac0bbbffd92b",
      "tree": "590563991cc37325ef6c346745f0163c329e3e2c",
      "parents": [
        "b5627943ab6fabbc13a45d92683363a3d08a249f"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:42:53 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:38 2008 -0500"
      },
      "message": "SUNRPC: allow the caller of rpc_run_task to preallocate the struct rpc_task\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b5627943ab6fabbc13a45d92683363a3d08a249f",
      "tree": "2b422b80ed83d5f1df823070815792eba4e0d286",
      "parents": [
        "5138fde01161cd7976fdc51f6a17da73adaa6baf"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:42:21 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:35 2008 -0500"
      },
      "message": "SUNRPC: Remove the now unused function rpc_call_setup()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "77de2c590ec72828156d85fa13a96db87301cc68",
      "tree": "9e14b6c75df046d406f0652f98eb520db64d3675",
      "parents": [
        "5085925902cc4d93b9a4992936edd2aee70a5e15"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:40:21 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:31 2008 -0500"
      },
      "message": "SUNRPC: Add a helper rpc_call_start() that initialises task-\u003etk_action\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3ff7576ddac06c3d07089e241b40826d24bbf1ac",
      "tree": "7f5998434b7d0dd1f08ff7ee65c93fab4861a6d3",
      "parents": [
        "c970aa85e71bd581726c42df843f6f129db275ac"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:40:00 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:30 2008 -0500"
      },
      "message": "SUNRPC: Clean up the initialisation of priority queue scheduling info.\n\nWe want the default scheduling priority (priority \u003d\u003d 0) to remain\nRPC_PRIORITY_NORMAL.\n\nAlso ensure that the priority wait queue scheduling is per process id\ninstead of sometimes being per thread, and sometimes being per inode.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c970aa85e71bd581726c42df843f6f129db275ac",
      "tree": "e7fc90ee4064196d357045fd173764e0b8fc8ca8",
      "parents": [
        "84115e1cd4a3614c4e566d4cce31381dce3dbef9"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:39:59 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:30 2008 -0500"
      },
      "message": "SUNRPC: Clean up rpc_run_task\n\nMake it use the new task initialiser structure instead of acting as a\nwrapper.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "84115e1cd4a3614c4e566d4cce31381dce3dbef9",
      "tree": "01b2de7163deb6b3a789811183d8b8c1329b900c",
      "parents": [
        "e8914c65f7f8d4e8701b8e78a12b714872ea0402"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:39:59 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:30 2008 -0500"
      },
      "message": "SUNRPC: Cleanup of rpc_task initialisation\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "62da3b24880bccd4ffc32cf8d9a7e23fab475bdd",
      "tree": "334804c6eb817bd7827f58dbe86ced455160052d",
      "parents": [
        "3ebb067d92ebe5bcfd282acf12bade891d334d07"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Nov 06 18:44:20 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:27 2008 -0500"
      },
      "message": "SUNRPC: Rename xprt_disconnect()\n\nxprt_disconnect() should really only be called when the transport shutdown\nis completed, and it is time to wake up any pending tasks. Rename it to\nxprt_disconnect_done() in order to reflect the semantical change.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3b948ae5be5e22532584113e2e02029519bbad8f",
      "tree": "3bfa346bfbc9808c164d3d36af29a2090a5a0628",
      "parents": [
        "67a391d72ca7efb387c30ec761a487e50a3ff085"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Nov 05 17:42:39 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:25 2008 -0500"
      },
      "message": "SUNRPC: Allow the client to detect if the TCP connection is closed\n\nAdd an xprt-\u003estate bit to enable the TCP -\u003estate_change() method to signal\nwhether or not the TCP connection is in the process of closing down.\nThis will to be used by the reconnection logic in a separate patch.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "66af1e558538137080615e7ad6d1f2f80862de01",
      "tree": "f5f9680b86846d4df8312cd9bd729d6e10c7b5e8",
      "parents": [
        "ef818a28fac9bd214e676986d8301db0582b92a9"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Nov 06 10:18:36 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:24 2008 -0500"
      },
      "message": "SUNRPC: Fix a race in xs_tcp_state_change()\n\nWhen scheduling the autoclose RPC call, we want to ensure that we don\u0027t\nrace against the test_bit() call in xprt_clear_locked().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "150030b78a454ba50d5e267b0dcf01b162809192",
      "tree": "4de766e7abbfd73a052f14f8efd3a26eb7b59d87",
      "parents": [
        "009e577e079656d51d0fe9b15e61e41b00816c29"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Thu Dec 06 16:24:39 2007 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Dec 06 17:40:25 2007 -0500"
      },
      "message": "NFS: Switch from intr mount option to TASK_KILLABLE\n\nBy using the TASK_KILLABLE infrastructure, we can get rid of the \u0027intr\u0027\nmount option.  We have to use _killable everywhere instead of _interruptible\nas we get rid of rpc_clnt_sigmask/sigunmask.\n\nSigned-off-by: Liam R. Howlett \u003chowlett@gmail.com\u003e\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "483066d62ec583fb6379377a9bfa8d5645b91c75",
      "tree": "c8750759402d7aa9f62714ef550d7d9516db6676",
      "parents": [
        "4c30d56edcaaa0446370189e8ab5c5393dc20ca3"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Oct 24 18:24:02 2007 +0200"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Nov 26 16:24:50 2007 -0500"
      },
      "message": "SUNRPC: make sunrpc/xprtsock.c:xs_setup_{udp,tcp}() static\n\nxs_setup_{udp,tcp}() can now become static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cfcb43ff7ce28f347a39e1a7519e01850b588718",
      "tree": "3f21947e64316de5499c38d6c76a6ae3dd48996f",
      "parents": [
        "4c1fe2f78a08e2c514a39c91a0eb7b55bbd3c0d2"
      ],
      "author": {
        "name": "James Lentini",
        "email": "jlentini@netapp.com",
        "time": "Mon Nov 26 12:42:44 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Nov 26 16:21:19 2007 -0500"
      },
      "message": "SUNRPC: remove NFS/RDMA client\u0027s binary sysctls\n\nSupport for binary sysctls is being deprecated in 2.6.24. Since there\nare no applications using the NFS/RDMA client\u0027s binary sysctls, it\nmakes sense to remove them. The patch below does this while leaving\nthe /proc/sys interface unchanged.\n\nPlease consider this for 2.6.24.\n\nSigned-off-by: James Lentini \u003cjlentini@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2d8a972661832719931b0dd5b80e97215cb93d94",
      "tree": "07e45246c3eb29ac09aa728d87506b3daf75a924",
      "parents": [
        "7a78a1722380dd3cb5a009dbcd007f92b6b87743"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Mon Oct 29 04:37:58 2007 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 29 07:41:32 2007 -0700"
      },
      "message": "SUNRPC endianness annotations\n\nrpcrdma stuff lacks endianness annotations for on-the-wire data.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f4921aff5b174349bc36551f142a5dbac782ea3f",
      "tree": "bdff8ca1531977ad1d04ac8d70e10f8dfbb26c38",
      "parents": [
        "419217cb1d0266f62cbea6cdc6b1d1324350bc34",
        "05c88babab957dfd63bd351b25042d80bd854dd0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 10:46:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 15 10:47:35 2007 -0700"
      },
      "message": "Merge git://git.linux-nfs.org/pub/linux/nfs-2.6\n\n* git://git.linux-nfs.org/pub/linux/nfs-2.6: (131 commits)\n  NFSv4: Fix a typo in nfs_inode_reclaim_delegation\n  NFS: Add a boot parameter to disable 64 bit inode numbers\n  NFS: nfs_refresh_inode should clear cache_validity flags on success\n  NFS: Fix a connectathon regression in NFSv3 and NFSv4\n  NFS: Use nfs_refresh_inode() in ops that aren\u0027t expected to change the inode\n  SUNRPC: Don\u0027t call xprt_release in call refresh\n  SUNRPC: Don\u0027t call xprt_release() if call_allocate fails\n  SUNRPC: Fix buggy UDP transmission\n  [23/37] Clean up duplicate includes in\n  [2.6 patch] net/sunrpc/rpcb_clnt.c: make struct rpcb_program static\n  SUNRPC: Use correct type in buffer length calculations\n  SUNRPC: Fix default hostname created in rpc_create()\n  nfs: add server port to rpc_pipe info file\n  NFS: Get rid of some obsolete macros\n  NFS: Simplify filehandle revalidation\n  NFS: Ensure that nfs_link() returns a hashed dentry\n  NFS: Be strict about dentry revalidation when doing exclusive create\n  NFS: Don\u0027t zap the readdir caches upon error\n  NFS: Remove the redundant nfs_reval_fsid()\n  NFSv3: Always use directory post-op attributes in nfs3_proc_lookup\n  ...\n\nFix up trivial conflict due to sock_owned_by_user() cleanup manually in\nnet/sunrpc/xprtsock.c\n"
    },
    {
      "commit": "dca1dd30ce0a6234acc751bb90efba1b49079669",
      "tree": "397ddcb0d37b616a393135c9efc9e4a536fee318",
      "parents": [
        "45457e0916f8253691a44d3574949b6d3d5872b1"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Thu Jul 12 15:30:32 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Oct 09 18:31:55 2007 -0400"
      },
      "message": "nfsd: remove unused cache_for_each macro\n\nThis macro is unused.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nAcked-by:  Neil Brown \u003cneilb@suse.de\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": "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": "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": "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": "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": "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": "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": "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": "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": "be879c4e249a8875d7129f3b0c1bb62584dafbd8",
      "tree": "6d6d774ac4dd24ff280e83e1d6a65be29a6dc6f8",
      "parents": [
        "e3a535e1739a9da3cc316ccdfe5cd4bf84d745ac"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jul 11 18:39:02 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jul 19 15:21:39 2007 -0400"
      },
      "message": "SUNRPC: move bkl locking and xdr proc invocation into a common helper\n\nSince every invocation of xdr encode or decode functions takes the BKL now,\nthere\u0027s a lot of redundant lock_kernel/unlock_kernel pairs that we can pull\nout into a common function.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4796f45740bc6f2e3e6cc14e7ed481b38bd0bd39",
      "tree": "1f24645e86f87511350e149525245f2b215ba55a",
      "parents": [
        "dcb488a3b7ac3987e21148f44f641c9b2e734232"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:51 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:08 2007 -0700"
      },
      "message": "knfsd: nfsd4: secinfo handling without secinfo\u003d option\n\nWe could return some sort of error in the case where someone asks for secinfo\non an export without the secinfo\u003d option set--that\u0027d be no worse than what\nwe\u0027ve been doing.  But it\u0027s not really correct.  So, hack up an approximate\nsecinfo response in that case--it may not be complete, but it\u0027ll tell the\nclient at least one acceptable security flavor.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ab4d8b1215d61736e2a9a26bea7cc2e6b029e3d",
      "tree": "6b256e44c4ed5295dfd55eef8641093b91692559",
      "parents": [
        "0989a7889695831e49e2c53c1884f52645516a90"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jul 17 04:04:46 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd: set rq_client to ip-address-determined-domain\n\nWe want it to be possible for users to restrict exports both by IP address and\nby pseudoflavor.  The pseudoflavor information has previously been passed\nusing special auth_domains stored in the rq_client field.  After the preceding\npatch that stored the pseudoflavor in rq_pflavor, that\u0027s now superfluous; so\nnow we use rq_client for the ip information, as auth_null and auth_unix do.\n\nHowever, we keep around the special auth_domain in the rq_gssclient field for\nbackwards compatibility purposes, so we can still do upcalls using the old\n\"gss/pseudoflavor\" auth_domain if upcalls using the unix domain to give us an\nappropriate export.  This allows us to continue supporting old mountd.\n\nIn fact, for this first patch, we always use the \"gss/pseudoflavor\"\nauth_domain (and only it) if it is available; thus rq_client is ignored in the\nauth_gss case, and this patch on its own makes no change in behavior; that\nwill be left to later patches.\n\nNote on idmap: I\u0027m almost tempted to just replace the auth_domain in the idmap\nupcall by a dummy value--no version of idmapd has ever used it, and it\u0027s\nunlikely anyone really wants to perform idmapping differently depending on the\nwhere the client is (they may want to perform *credential* mapping\ndifferently, but that\u0027s a different matter--the idmapper just handles id\u0027s\nused in getattr and setattr).  But I\u0027m updating the idmapd code anyway, just\nout of general backwards-compatibility paranoia.\n\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c4170583f655dca5da32bd14173d6a93805fc48b",
      "tree": "6dbac34d8dd59af4a2f096a9c842405887c4f027",
      "parents": [
        "42ed95c4e7415714aaab604ae7b1602b87b27b73"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@citi.umich.edu",
        "time": "Tue Jul 17 04:04:42 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:07 2007 -0700"
      },
      "message": "knfsd: nfsd4: store pseudoflavor in request\n\nAdd a new field to the svc_rqst structure to record the pseudoflavor that the\nrequest was made with.  For now we record the pseudoflavor but don\u0027t use it\nfor anything.\n\nSigned-off-by: Andy Adamson \u003candros@citi.umich.edu\u003e\nSigned-off-by: \"J. Bruce Fields\" \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d3bc9a1deb8964d774af8535814cb91bf8f6def0",
      "tree": "c8ae19f3684b40a4c53d948adc3b0f688d373497",
      "parents": [
        "a97476926ec061f90b77da478620ea6dc71a3237"
      ],
      "author": {
        "name": "Frank van Maarseveen",
        "email": "frankvm@frankvm.com",
        "time": "Mon Jul 09 22:23:35 2007 +0200"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:49 2007 -0400"
      },
      "message": "SUNRPC client: add interface for binding to a local address\n\nIn addition to binding to a local privileged port the NFS client should\nallow binding to a specific local address. This is used by the server\nfor callbacks. The patch adds the necessary interface.\n\nSigned-off-by: Frank van Maarseveen \u003cfrankvm@frankvm.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a97476926ec061f90b77da478620ea6dc71a3237",
      "tree": "0b6ad42f5cca4484ce702cf3fcb016b52ec17cef",
      "parents": [
        "96802a095171f5b35cf0e1e0d4be943e6696a253"
      ],
      "author": {
        "name": "Frank van Maarseveen",
        "email": "frankvm@frankvm.com",
        "time": "Mon Jul 09 22:21:39 2007 +0200"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:49 2007 -0400"
      },
      "message": "SUNRPC server: record the destination address of a request\n\nSave the destination address of an incoming request over TCP like is\ndone already for UDP. It is necessary later for callbacks by the server.\n\nSigned-off-by: Frank van Maarseveen \u003cfrankvm@frankvm.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "96802a095171f5b35cf0e1e0d4be943e6696a253",
      "tree": "edad2ad27532dc7e380ec2fd3854d8c265a004c1",
      "parents": [
        "6f2e64d3e1f661095e274c9d9d47e3f39a6cf1c0"
      ],
      "author": {
        "name": "Frank van Maarseveen",
        "email": "frankvm@frankvm.com",
        "time": "Sun Jul 08 13:08:54 2007 +0200"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:49 2007 -0400"
      },
      "message": "SUNRPC: cleanup transport creation argument passing\n\nCleanup argument passing to functions for creating an RPC transport.\n\nSigned-off-by: Frank van Maarseveen \u003cfrankvm@frankvm.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "45160d6275814e0c86206e6981f0b92c61a50a21",
      "tree": "0f509c208db20833fb86e13fc0e1b12f49da0b58",
      "parents": [
        "cce63cd6374e6f1b4ea897ece1454feb13993d7c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Sun Jul 01 12:13:17 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:46 2007 -0400"
      },
      "message": "SUNRPC: Rename rpcb_getport to be consistent with new rpcb_getport_sync name\n\nClean up, for consistency.  Rename rpcb_getport as rpcb_getport_async, to\nmatch the naming scheme of rpcb_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": "cce63cd6374e6f1b4ea897ece1454feb13993d7c",
      "tree": "7e85088b49d36e8860fb3d5845e55bc8785efc3c",
      "parents": [
        "f7fb558e503dc80e100acaf116f7261cdd97f0ca"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Sun Jul 01 12:13:12 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:46 2007 -0400"
      },
      "message": "SUNRPC: Rename rpcb_getport_external routine\n\nIn preparation for handling NFS mount option parsing in the kernel,\nrename rpcb_getport_external as rpcb_get_port_sync, and make it available\nalways (instead of only when CONFIG_ROOT_NFS is enabled).\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1be27f36601973815171db684c711d30557cf50c",
      "tree": "37119def0079958b1ec444ee6a3b2ec3b15337b5",
      "parents": [
        "1dd17ec693bf4a08b666c2ef76b68ca08ce3c93d"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 27 14:29:04 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:37 2007 -0400"
      },
      "message": "SUNRPC: Remove the tk_auth macro...\n\nWe should almost always be deferencing the rpc_auth struct by means of the\ncredential\u0027s cr_auth field instead of the rpc_clnt-\u003ecl_auth anyway. Fix up\nthat historical mistake, and remove the macro that propagated it.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5d28dc82074f1e64b22c9424b161abc1f5d6bcdb",
      "tree": "4d45f38dfb681a376478def668db7a9cd4cdeee4",
      "parents": [
        "f5c2187cfef628784d8a09b6d0f77888246d0c0f"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jun 26 19:18:38 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:36 2007 -0400"
      },
      "message": "SUNRPC: Convert gss_ctx_lock to an RCU lock\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "f5c2187cfef628784d8a09b6d0f77888246d0c0f",
      "tree": "8c648bb9210ea3bd24e6c5fe278951e47ff15faa",
      "parents": [
        "9499b4341b56935f61af9e7e354e7d11e70f5258"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jun 25 17:11:20 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:36 2007 -0400"
      },
      "message": "SUNRPC: Convert the credential garbage collector into a shrinker callback\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "9499b4341b56935f61af9e7e354e7d11e70f5258",
      "tree": "d6ef7a4608e405aef3d270a641fa1f2cbaed6c7d",
      "parents": [
        "31be5bf15f3dafffce110eb1afadccbf2e3067b4"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jun 24 15:57:57 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:36 2007 -0400"
      },
      "message": "SUNRPC: Give credential cache a local spinlock\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "31be5bf15f3dafffce110eb1afadccbf2e3067b4",
      "tree": "6e680e926d79a1c5fe6a5a726c3f16cb3b86adfa",
      "parents": [
        "e092bdcd939416ef911090890096fe07d0281a5e"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jun 24 15:55:26 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:36 2007 -0400"
      },
      "message": "SUNRPC: Convert the credcache lookup code to use RCU\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e092bdcd939416ef911090890096fe07d0281a5e",
      "tree": "fdd6800427d470ea1a22d8b2245100277e38a64d",
      "parents": [
        "fc432dd90760a629c57026e57f65ff80a1a31d2f"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jun 23 19:45:36 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:35 2007 -0400"
      },
      "message": "SUNRPC: cleanup rpc credential cache garbage collection\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fc432dd90760a629c57026e57f65ff80a1a31d2f",
      "tree": "1df060f199effb8cfd52772e618c0bac7b8d0e9f",
      "parents": [
        "696e38df9d1b256e97b077ecde7afb8dd60364fd"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jun 25 10:15:15 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:35 2007 -0400"
      },
      "message": "SUNRPC: Enforce atomic updates of rpc_cred-\u003ecr_flags\n\nConvert to the use of atomic bitops...\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5fe4755e2526a2aa82b7ed8daeb3aed74a236925",
      "tree": "aceb993080fc6aac5861f04d8a8494becb4046eb",
      "parents": [
        "f1c0a8615090359d57e096157feb9f900cbb233c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jun 23 19:55:31 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:35 2007 -0400"
      },
      "message": "SUNRPC: Clean up rpc credential initialisation\n\nAdd a helper rpc_cred_init()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "f1c0a8615090359d57e096157feb9f900cbb233c",
      "tree": "2d76448a7c83a45944161a3d966a42f922c543dd",
      "parents": [
        "de7a8ce38aea529876db3890b61947bc4bc004da"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jun 23 20:17:58 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:34 2007 -0400"
      },
      "message": "SUNRPC: Mark auth and cred operation tables as constant.\n\nAlso do the same for gss_api operation tables.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "de7a8ce38aea529876db3890b61947bc4bc004da",
      "tree": "2067bae81ea0d39631d4caae9a8a092380f1932c",
      "parents": [
        "5e1550d6a2c2dd33ff0ca5febefd8e9c65c6ca1e"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jun 23 10:46:47 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:34 2007 -0400"
      },
      "message": "SUNRPC: Rename rpcauth_destroy() to rpcauth_release()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5e1550d6a2c2dd33ff0ca5febefd8e9c65c6ca1e",
      "tree": "719d24d2da4fb1c68edd9207436edb1fa40ccb09",
      "parents": [
        "64c91a1f1c8bc4295fd6b90df8adf911a7dd64f4"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jun 23 10:17:16 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:34 2007 -0400"
      },
      "message": "SUNRPC: Add the helper function \u0027rpc_call_null()\u0027\n\nDoes a NULL RPC call and returns a pointer to the resulting rpc_task. The\ncall may be either synchronous or asynchronous.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "64c91a1f1c8bc4295fd6b90df8adf911a7dd64f4",
      "tree": "62b8166a9638b6d349779fa2f77f3d7bd18e1aea",
      "parents": [
        "fc1b356f566fe05929ec2a88ce2c7b15f8b6279f"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jun 23 10:17:16 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:34 2007 -0400"
      },
      "message": "SUNRPC: Make rpc_ping() static\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3ab9bb7243489f9db3abf3d05521ddfc6b184c0a",
      "tree": "05476c58c87c5578354ab8a3befcb7316c9ef9bc",
      "parents": [
        "03a1256f06cf1f58e33971fb4a524479e75c200e"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jun 09 15:41:42 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:33 2007 -0400"
      },
      "message": "SUNRPC: Fix a memory leak in the auth credcache code\n\nThe leak only affects the RPCSEC_GSS caches, since they are the only ones\nthat are dynamically allocated...\nRename the existing rpcauth_free_credcache() to rpcauth_clear_credcache()\nin order to better describe its role, then add a new function\nrpcauth_destroy_credcache() that actually frees the cache in addition to\nclearing it out.\n\nAlso move the call to destroy the credcache in gss_destroy() to come before\nthe rpc upcall pipe is unlinked.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "03a1256f06cf1f58e33971fb4a524479e75c200e",
      "tree": "29da3d4cee02e06e17fcb5087081602f8475b2e5",
      "parents": [
        "62e1761ceff5dbb78c4b4b9486d8ca9fed11b660"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jun 08 14:14:53 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:33 2007 -0400"
      },
      "message": "SUNRPC: Add a field to track the number of kernel users of an rpc_pipe\n\nThis allows us to correctly deduce when we need to remove the pipe.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6e84c7b66a0aa0be16a7728d1e687c57978dac2c",
      "tree": "0aa7ab3d44b1749dca78d554f1d18a5b6fad43ff",
      "parents": [
        "3b68aaeaf54065e5c44583a1d33ffb7793953ba4"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jun 07 15:31:36 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:32 2007 -0400"
      },
      "message": "SUNRPC: Add a downcall queue to struct rpc_inode\n\nCurrently, the downcall queue is tied to the struct gss_auth, which means\nthat different RPCSEC_GSS pseudoflavours must use different upcall pipes.\nAdd a list to struct rpc_inode that can be used instead.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4a8c1344dccb848dbcf0edabc8b5c51a8ecf2808",
      "tree": "ecfa69d4bc36aefe86c2528240ef69da723f5bf4",
      "parents": [
        "c1384c9c4c184543375b52a0997d06cd98145164"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jun 07 10:14:14 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:31 2007 -0400"
      },
      "message": "SUNRPC: Add a backpointer from the struct rpc_cred to the rpc_auth\n\nCleans up an issue whereby rpcsec_gss uses the rpc_clnt-\u003ecl_auth. If we want\nto be able to add several rpc_auths to a single rpc_clnt, then this abuse\nmust go.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "188fef11db219f13f32d055ba59985e7d1a349fe",
      "tree": "b64754962315934c1fa33fca16eabffeb901425a",
      "parents": [
        "f61534dfd38f895b203e2aadaba04f21a992ca8c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jun 16 14:18:40 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:30 2007 -0400"
      },
      "message": "SUNRPC: Move rpc_register_client and friends into net/sunrpc/clnt.c\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4c402b40970382ded616eadd544fd63feb76cc79",
      "tree": "ddff43479ae51f0ba5af566b09e0188563aab17b",
      "parents": [
        "8ad7c892e18ff8e6df422eb48ca0f73268ffd632"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jun 14 16:40:32 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:29 2007 -0400"
      },
      "message": "SUNRPC: Remove rpc_clnt-\u003ecl_count\n\nThe kref now does most of what cl_count + cl_user used to do. The only\nremaining role for cl_count is to tell us if we are in a \u0027shutdown\u0027\nphase. We can provide that information using a single bit field instead\nof a full atomic counter.\n\nAlso rename rpc_destroy_client() to rpc_close_client(), which reflects\nbetter what its role is these days.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "90c5755ff5111ffdcca10a1e8a823dba29f37b6d",
      "tree": "a3ca80b629d11e341fa2bcdf30e0d712dcccc3ba",
      "parents": [
        "848f1fe6be2e290691bb6c13cbb8fd92bd0cfaab"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jun 09 19:49:36 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:29 2007 -0400"
      },
      "message": "SUNRPC: Kill rpc_clnt-\u003ecl_oneshot\n\nReplace it with explicit calls to rpc_shutdown_client() or\nrpc_destroy_client() (for the case of asynchronous calls).\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "848f1fe6be2e290691bb6c13cbb8fd92bd0cfaab",
      "tree": "d653340b5e0c8c6ce393e67b11d8958fab4b05e4",
      "parents": [
        "34f52e3591f241b825353ba27def956d8487c400"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jun 09 19:39:12 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:29 2007 -0400"
      },
      "message": "SUNRPC: Kill rpc_clnt-\u003ecl_dead\n\nIts use is at best racy, and there is only one user (lockd), which has\nadditional locking that makes the whole thing redundant.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "34f52e3591f241b825353ba27def956d8487c400",
      "tree": "9f7f0cd52f206095217bd2469e31c2531cbae0a4",
      "parents": [
        "c44fe705530ff9ea5e563bf9b65bdd29defe682b"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jun 14 16:40:31 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:28 2007 -0400"
      },
      "message": "SUNRPC: Convert rpc_clnt-\u003ecl_users to a kref\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4bef61ff7514396419563ca54fd42ef846485b06",
      "tree": "5ea7eca032557a8ae307661b8c2b887fac257476",
      "parents": [
        "6529eba08fe7297852391a468d95322913de73fa"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jun 16 14:17:01 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:28 2007 -0400"
      },
      "message": "SUNRPC: Add a per-rpc_clnt spinlock\n\nUse that to protect the rpc_clnt-\u003ecl_tasks list instead of using a global\nlock.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6529eba08fe7297852391a468d95322913de73fa",
      "tree": "6c9e0fa67de82f8a0c0df4e5bed9dbfefe3f1ac2",
      "parents": [
        "c6d00e639bdec5f33460bc95bae4efda7177a6ed"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jun 14 16:40:14 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:28 2007 -0400"
      },
      "message": "SUNRPC: Move rpc_task-\u003etk_task list into struct rpc_clnt\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cf8208d0eabd1d5d2625ec02a175a294c3f30d36",
      "tree": "7dd1f75873a2d84a3c626ecd45640d42c1b5dfcf",
      "parents": [
        "f0930fffa99e7fe0a0c4b6c7d9a244dc88288c27"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jun 12 21:22:14 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 08:04:14 2007 +0200"
      },
      "message": "sendfile: convert nfsd to splice_direct_to_actor()\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "7531d692d4174789d583eb50fcb83cefa121b790",
      "tree": "c3ab10fdccf1863848946e6f3217514542217289",
      "parents": [
        "d48c5f41000ad176df71d2d43932c6c50f938196"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon May 14 17:21:26 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon May 14 19:33:47 2007 -0400"
      },
      "message": "SUNRPC: Fix sparse warnings\n\n - net/sunrpc/xprtsock.c:1635:5: warning: symbol \u0027init_socket_xprt\u0027 was not\n   declared. Should it be static?\n - net/sunrpc/xprtsock.c:1649:6: warning: symbol \u0027cleanup_socket_xprt\u0027 was\n   not declared. Should it be static?\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cd123012d99fde4759500fee611e724e4f3016e3",
      "tree": "a947c5e4210a2a51ea6619b3e127650feaa00421",
      "parents": [
        "669716433598a1498049e75a84a5aaf69c8da173"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed May 09 02:34:50 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:54 2007 -0700"
      },
      "message": "RPC: add wrapper for svc_reserve to account for checksum\n\nWhen the kernel calls svc_reserve to downsize the expected size of an RPC\nreply, it fails to account for the possibility of a checksum at the end of\nthe packet.  If a client mounts a NFSv2/3 with sec\u003dkrb5i/p, and does I/O\nthen you\u0027ll generally see messages similar to this in the server\u0027s ring\nbuffer:\n\nRPC request reserved 164 but used 208\n\nWhile I was never able to verify it, I suspect that this problem is also\nthe root cause of some oopses I\u0027ve seen under these conditions:\n\nhttps://bugzilla.redhat.com/bugzilla/show_bug.cgi?id\u003d227726\n\nThis is probably also a problem for other sec\u003d types and for NFSv4.  The\nlarge reserved size for NFSv4 compound packets seems to generally paper\nover the problem, however.\n\nThis patch adds a wrapper for svc_reserve that accounts for the possibility\nof a checksum.  It also fixes up the appropriate callers of svc_reserve to\ncall the wrapper.  For now, it just uses a hardcoded value that I\ndetermined via testing.  That value may need to be revised upward as things\nchange, or we may want to eventually add a new auth_op that attempts to\ncalculate this somehow.\n\nUnfortunately, there doesn\u0027t seem to be a good way to reliably determine\nthe expected checksum length prior to actually calculating it, particularly\nwith schemes like spkm3.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nAcked-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7ac1bea5507218da03f6005d228789da5a831c3f",
      "tree": "43c0a68d468352f8ca1f42ada7970e3a97411f5b",
      "parents": [
        "f34b95689d2ce001c157b1604289ff240b4bdee0"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed May 09 02:34:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:54 2007 -0700"
      },
      "message": "knfsd: rename sk_defer_lock to sk_lock\n\nNow that sk_defer_lock protects two different things, make the name more\ngeneric.\n\nAlso don\u0027t bother with disabling _bh as the lock is only ever taken from\nprocess context.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4c2eaf073f0cc2b5bf593b8133c078b9d9406e95",
      "tree": "4bbb0edabea6dc0d17a27eaf609e8bc5b637c7b1",
      "parents": [
        "df8b172a8880521396d2048ecef7e75df43b5bc4"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Mar 29 16:48:27 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Apr 30 22:17:15 2007 -0700"
      },
      "message": "SUNRPC: remove old portmapper\n\nnet/sunrpc/pmap_clnt.c has been replaced by net/sunrpc/rpcb_clnt.c.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a509050bd3b8e0aa269c2241aa10d74ca7701e2f",
      "tree": "47860feb054c6c286fd10c7d19a5ed3c3efb5c32",
      "parents": [
        "c5a4dd8b7c15927a8fbff83171b57cad675a79b9"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Mar 29 16:48:04 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Apr 30 22:17:12 2007 -0700"
      },
      "message": "SUNRPC: introduce rpcbind: replacement for in-kernel portmapper\n\nIntroduce a replacement for the in-kernel portmapper client that supports\nall 3 versions of the rpcbind protocol.  This code is not used yet.\n\nOriginal code by Groupe Bull updated for the latest kernel, with multiple\nbug fixes.\n\nNote that rpcb_clnt.c does not yet support registering via versions 3 and\n4 of the rpcbind protocol.  That is planned for a later patch.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c5a4dd8b7c15927a8fbff83171b57cad675a79b9",
      "tree": "2d3b1930449b31f69dc70a6e1d4e0f0532f3f118",
      "parents": [
        "2bea90d43a050bbc4021d44e59beb34f384438db"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Mar 29 16:47:58 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Apr 30 22:17:11 2007 -0700"
      },
      "message": "SUNRPC: Eliminate side effects from rpc_malloc\n\nCurrently rpc_malloc sets req-\u003erq_buffer internally.  Make this a more\ngeneric interface:  return a pointer to the new buffer (or NULL) and\nmake the caller set req-\u003erq_buffer and req-\u003erq_bufsize.  This looks much\nmore like kmalloc and eliminates the side effects.\n\nTo fix a potential deadlock, this patch also replaces GFP_NOFS with\nGFP_NOWAIT in rpc_malloc.  This prevents async RPCs from sleeping outside\nthe RPC\u0027s task scheduler while allocating their buffer.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2bea90d43a050bbc4021d44e59beb34f384438db",
      "tree": "2dd3f15bd9df537166a82777b0c95243b90b17e1",
      "parents": [
        "511d2e8855a065c8251d0c140ebc353854f1929e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Mar 29 16:47:53 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Apr 30 22:17:10 2007 -0700"
      },
      "message": "SUNRPC: RPC buffer size estimates are too large\n\nThe RPC buffer size estimation logic in net/sunrpc/clnt.c always\nsignificantly overestimates the requirements for the buffer size.\nA little instrumentation demonstrated that in fact rpc_malloc was never\nallocating the buffer from the mempool, but almost always called kmalloc.\n\nTo compute the size of the RPC buffer more precisely, split p_bufsiz into\ntwo fields; one for the argument size, and one for the result size.\n\nThen, compute the sum of the exact call and reply header sizes, and split\nthe RPC buffer precisely between the two.  That should keep almost all RPC\nbuffers within the 2KiB buffer mempool limit.\n\nAnd, we can finally be rid of RPC_SLACK_SPACE!\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cda1fd4abd773216a888487af0170d0cc3d50454",
      "tree": "aed6662bab1789a1698644f2e1d0db4255ecad67",
      "parents": [
        "5a05ed73e1abfd7e0e7d474817245861deaa18af"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 06 01:42:22 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 06 09:30:26 2007 -0800"
      },
      "message": "[PATCH] knfsd: fix recently introduced problem with shutting down a busy NFS server\n\nWhen the last thread of nfsd exits, it shuts down all related sockets.  It\ncurrently uses svc_close_socket to do this, but that only is immediately\neffective if the socket is not SK_BUSY.\n\nIf the socket is busy - i.e.  if a request has arrived that has not yet been\nprocesses - svc_close_socket is not effective and the shutdown process spins.\n\nSo create a new svc_force_close_socket which removes the SK_BUSY flag is set\nand then calls svc_close_socket.\n\nAlso change some open-codes loops in svc_destroy to use\nlist_for_each_entry_safe.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5a05ed73e1abfd7e0e7d474817245861deaa18af",
      "tree": "df2e9b2717719dc900be6a11db4cb33d4b237aae",
      "parents": [
        "7a37f5787e76bf1765c1add3a9a7163f841a28bb"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 06 01:42:22 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 06 09:30:26 2007 -0800"
      },
      "message": "[PATCH] knfsd: remove CONFIG_IPV6 ifdefs from sunrpc server code\n\nThey don\u0027t really save that much, and aren\u0027t worth the hassle.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7b8f850bebe093e37d283ed791039b39fa241e6d",
      "tree": "5ecd31dda2658366a9e7feb4c8c6c95e01a57caf",
      "parents": [
        "e696268a73f7f59a333624f9abf8ffc9412ee64c"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Feb 20 13:57:45 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 20 17:10:12 2007 -0800"
      },
      "message": "[PATCH] Fix build errors if bitop functions are do {} while macros\n\nIf one of clear_bit, change_bit or set_bit is defined as a do { } while (0)\nfunction usage of these functions in parenthesis like\n\n  (foo_bit(23, \u0026var))\n\nwhile be expaned to something like\n\n  (do { ... } while (0)}).\n\nresulting in a build error.  This patch removes the useless parenthesis.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "50d851f7227cf9e7fcc4cd1d2b3c72ddd64c50e6",
      "tree": "7edcd39ba684f2ae8e3866e046a204481c26e9fe",
      "parents": [
        "b402f06d6e31b8c3c74bfc3e7d2e292dd4a1b90a"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Feb 14 00:33:22 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:55 2007 -0800"
      },
      "message": "[PATCH] sysctl: move CTL_SUNRPC to sysctl.h where it belongs\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d9bc125caf592b7d081021f32ce5b717efdf70c8",
      "tree": "263b7066ba22ddce21db610c0300f6eaac6f2064",
      "parents": [
        "43d78ef2ba5bec26d0315859e8324bfc0be23766",
        "ec2f9d1331f658433411c58077871e1eef4ee1b4"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Feb 12 22:43:25 2007 -0800"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Feb 12 22:43:25 2007 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of /home/trondmy/kernel/linux-2.6/\n\nConflicts:\n\n\tnet/sunrpc/auth_gss/gss_krb5_crypto.c\n\tnet/sunrpc/auth_gss/gss_spkm3_token.c\n\tnet/sunrpc/clnt.c\n\nMerge with mainline and fix conflicts.\n"
    },
    {
      "commit": "43d78ef2ba5bec26d0315859e8324bfc0be23766",
      "tree": "6ea576e0a20a11745c7a45b2a15dd855a45b655a",
      "parents": [
        "a301b777714087ea1d63dbec0173a13d416cd7a9"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Feb 06 18:26:11 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Feb 12 22:40:45 2007 -0800"
      },
      "message": "NFS: disconnect before retrying NFSv4 requests over TCP\n\nRFC3530 section 3.1.1 states an NFSv4 client MUST NOT send a request\ntwice on the same connection unless it is the NULL procedure.  Section\n3.1.1 suggests that the client should disconnect and reconnect if it\nwants to retry a request.\n\nImplement this by adding an rpc_clnt flag that an ULP can use to\nspecify that the underlying transport should be disconnected on a\nmajor timeout.  The NFSv4 client asserts this new flag, and requests\nno retries after a minor retransmit timeout.\n\nNote that disconnecting on a retransmit is in general not safe to do\nif the RPC client does not reuse the TCP port number when reconnecting.\n\nSee http://bugzilla.linux-nfs.org/show_bug.cgi?id\u003d6\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "95756482c9bfa375418c5a32455494a3042f65cd",
      "tree": "1c7583a43df17591cae77af601143509ab68c2b1",
      "parents": [
        "cdd88b9f3ed5013de0f1085e0e2f9123c798609d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:38 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: support IPv6 addresses in RPC server\u0027s UDP receive path\n\nAdd support for IPv6 addresses in the RPC server\u0027s UDP receive path.\n\n[akpm@linux-foundation.org: cleanups]\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "73df0dbaff8d0853387e140f52b6250c486b18a1",
      "tree": "f1b3a669b47744b982ba5e25af329712abd36bf5",
      "parents": [
        "27459f0940e16c68e080f5fc7e85aa9eb3f74528"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:35 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Make rq_daddr field address-version independent\n\nThe rq_daddr field must support larger addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27459f0940e16c68e080f5fc7e85aa9eb3f74528",
      "tree": "f13cd1f2005dda2b6115e2afbc49e1271b0d374b",
      "parents": [
        "2442222283918c2d1c20ae651d95fe168757938b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:34 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Provide room in svc_rqst for larger addresses\n\nExpand the rq_addr field to allow it to contain larger addresses.\n\nSpecifically, we replace a \u0027sockaddr_in\u0027 with a \u0027sockaddr_storage\u0027, then\neverywhere the \u0027sockaddr_in\u0027 was referenced, we use instead an accessor\nfunction (svc_addr_in) which safely casts the _storage to _in.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2442222283918c2d1c20ae651d95fe168757938b",
      "tree": "f4e120320c5b9538b4626e576fce67db201c4cc7",
      "parents": [
        "ad06e4bd62351bc569cca0f25d68c58dbd298146"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:33 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Use sockaddr_storage to store address in svc_deferred_req\n\nSockaddr_storage will allow us to store arbitrary socket addresses in the\nsvc_deferred_req struct.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ad06e4bd62351bc569cca0f25d68c58dbd298146",
      "tree": "82024c01e61de32af17d3b67eac0bb93138a2954",
      "parents": [
        "1ba951053f07187f6e77be664a4b6f8bf0ba7ae4"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:32 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Add a function to format the address in an svc_rqst for printing\n\nThere are loads of places where the RPC server assumes that the rq_addr fields\ncontains an IPv4 address.  Top among these are error and debugging messages\nthat display the server\u0027s IP address.\n\nLet\u0027s refactor the address printing into a separate function that\u0027s smart\nenough to figure out the difference between IPv4 and IPv6 addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "067d7817310569f7b76ca08c4d071ca95ad4c1d3",
      "tree": "ee931bac235a3f9d0083edd7c00340121fe32767",
      "parents": [
        "e79eff1f90826b207b1152fc87aa97fa74fb7f9c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:30 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Cache remote peer\u0027s address in svc_sock\n\nThe remote peer\u0027s address won\u0027t change after the socket has been accepted.  We\ndon\u0027t need to call -\u003egetname on every incoming request.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "482fb94e1b0c2efe8258334aa2a68d4f4a91de9c",
      "tree": "84353b34bb5ea02df98b598fff037cf1da20d6b0",
      "parents": [
        "6b174337e5126de834a971d3edc3681bbfa45e2c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:29 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: allow creating an RPC service without registering with portmapper\n\nSometimes we need to create an RPC service but not register it with the local\nportmapper.  NFSv4 delegation callback, for example.\n\nChange the svc_makesock() API to allow optionally creating temporary or\npermanent sockets, optionally registering with the local portmapper, and make\nit return the ephemeral port of the new socket.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6b174337e5126de834a971d3edc3681bbfa45e2c",
      "tree": "b1dc3e0ecd82353896b07c433f98f547abc5adc2",
      "parents": [
        "f85aaeba458fda1de199a73566c641516e9a935d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:28 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:35 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: update internal API: separate pmap register and temp sockets\n\nCurrently in the RPC server, registering with the local portmapper and\ncreating \"permanent\" sockets are tied together.  Expand the internal APIs to\nallow these two socket characteristics to be separately specified.\n\nThis will be externalized in the next patch.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "aaf68cfbf2241d24d46583423f6bff5c47e088b3",
      "tree": "65ca14b85d28b12da097d7d187cebfef88b5ba3a",
      "parents": [
        "387bb17374c5fa057462d00d4ba941d49f45de4d"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Feb 08 14:20:30 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 09 09:25:47 2007 -0800"
      },
      "message": "[PATCH] knfsd: fix a race in closing NFSd connections\n\nIf you lose this race, it can iput a socket inode twice and you get a BUG\nin fs/inode.c\n\nWhen I added the option for user-space to close a socket, I added some\ncruft to svc_delete_socket so that I could call that function when closing\na socket per user-space request.\n\nThis was the wrong thing to do.  I should have just set SK_CLOSE and let\nnormal mechanisms do the work.\n\nNot only wrong, but buggy.  The locking is all wrong and it openned up a\nrace where-by a socket could be closed twice.\n\nSo this patch:\n  Introduces svc_close_socket which sets SK_CLOSE then either leave\n  the close up to a thread, or calls svc_delete_socket if it can\n  get SK_BUSY.\n\n  Adds a bias to sk_busy which is removed when SK_DEAD is set,\n  This avoid races around shutting down the socket.\n\n  Changes several \u0027spin_lock\u0027 to \u0027spin_lock_bh\u0027 where the _bh\n  was missing.\n\nBugzilla-url: http://bugzilla.kernel.org/show_bug.cgi?id\u003d7916\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2efef837fb84f78cee7439804cb3722bffc64e75",
      "tree": "b69166832927f2141c4173cac456747605ea6252",
      "parents": [
        "54cc533aaa0dc331ad126f0aacfb19572adee638"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Feb 03 13:38:41 2007 -0800"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Feb 03 15:35:03 2007 -0800"
      },
      "message": "RPC: Clean up rpc_execute...\n\nThe error values are already propagated through task-\u003etk_status, and\nnone of the callers check one without checking the other, so we can\ndrop the return value.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "250f3915183d377d36e012bac9caa7345ce465b8",
      "tree": "e7fd20dfa79a8b4f6435083bf48f4cd3d1836cbf",
      "parents": [
        "1a8eff6d977c28162c61c9532ca58634e7090b69"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Jan 26 00:56:59 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Jan 26 13:50:59 2007 -0800"
      },
      "message": "[PATCH] knfsd: fix an NFSD bug with full sized, non-page-aligned reads\n\nNFSd assumes that largest number of pages that will be needed for a\nrequest+response is 2+N where N pages is the size of the largest permitted\nread/write request.  The \u00272\u0027 are 1 for the non-data part of the request, and 1\nfor the non-data part of the reply.\n\nHowever, when a read request is not page-aligned, and we choose to use\n-\u003esendfile to send it directly from the page cache, we may need N+1 pages to\nhold the whole reply.  This can overflow and array and cause an Oops.\n\nThis patch increases size of the array for holding pages by one and makes sure\nthat entry is NULL when it is not in use.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bde8f00ce64d9824a4f227c8594e335a1a10d044",
      "tree": "5402180d3aef332c54e7b608f5bb3f94675ffadf",
      "parents": [
        "5394cd218735bf462e72bb827fbb7e47fc15f2f0"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 24 11:54:53 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jan 24 12:31:06 2007 -0800"
      },
      "message": "[PATCH] NFS: Fix Oops in rpc_call_sync()\n\nFix the Oops in http://bugzilla.linux-nfs.org/show_bug.cgi?id\u003d138\nWe shouldn\u0027t be calling rpc_release_task() for tasks that are not active.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "21b4e736922f546e0f1aa7b9d6c442f309a2444a",
      "tree": "e1be8645297f8ebe87445251743ebcc52081a20d",
      "parents": [
        "34161db6b14d984fb9b06c735b7b42f8803f6851",
        "68380b581383c028830f79ec2670f4a193854aa6"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Dec 07 16:35:17 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Dec 07 16:35:17 2006 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of /home/trondmy/kernel/linux-2.6/ into merge_linus\n"
    },
    {
      "commit": "34161db6b14d984fb9b06c735b7b42f8803f6851",
      "tree": "99656278b6697f1cde5b05894b7c0ee22c63a00e",
      "parents": [
        "5847e1f4d058677c5e46dc6c3e3c70e8855ea3ba",
        "620034c84d1d939717bdfbe02c51a3fee43541c3"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Dec 07 15:48:15 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Dec 07 15:48:15 2006 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of /home/trondmy/kernel/linux-2.6/ into merge_linus\n\nConflicts:\n\n\tinclude/linux/sunrpc/xprt.h\n\tnet/sunrpc/xprtsock.c\nFix up conflicts with the workqueue changes.\n"
    },
    {
      "commit": "6cfd76a26d9fe2ba54b9d496a48c1d9285e5c5ed",
      "tree": "1114a0630c5045d0650c6d78a8097fdea6f94d8e",
      "parents": [
        "a4c410f00f7ca4bd448b0d63f6f882fd244dc991"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 06 20:37:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:36 2006 -0800"
      },
      "message": "[PATCH] lockdep: name some old style locks\n\nName some of the remaning \u0027old_style_spin_init\u0027 locks\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5847e1f4d058677c5e46dc6c3e3c70e8855ea3ba",
      "tree": "3f9c266dd713eb16d5c01389c2df39b5ef727d5f",
      "parents": [
        "c041b5ff8d50c432698d9bfbd68cc4b76c2ea5bc"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Dec 05 16:36:14 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Dec 06 10:46:55 2006 -0500"
      },
      "message": "SUNRPC: Remove pprintk() from net/sunrpc/xprt.c\n\nThese appear to be deprecated.  Removing them also gets rid of some sparse\nnoise.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "dd4564715eae2c4136f278da9ae1c3bb5af3e509",
      "tree": "a0e6d56de86bdc9ce57f5663d2d0840c3ea3179b",
      "parents": [
        "9d29231690925915015c21c1fff73c7118099843"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Dec 05 16:35:44 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Dec 06 10:46:52 2006 -0500"
      },
      "message": "SUNRPC: Rename skb_reader_t and friends\n\nClean-up:  hch suggested that the RPC client shouldn\u0027t pollute the name\nspace used by the generic skb manipulation routines in net/core/skbuff.c.\n\nRename a couple of types in xdr.h to adhere to this convention.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "9d29231690925915015c21c1fff73c7118099843",
      "tree": "ac1018a80198a7e493296f5fc8e9fbd8dac7d0f0",
      "parents": [
        "7559c7a28fbcaa0bca028eeebd5f251b09befe6b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Dec 05 16:35:41 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Dec 06 10:46:52 2006 -0500"
      },
      "message": "SUNRPC: skb_read_bits is the same as xs_tcp_copy_data\n\nClean-up: eliminate xs_tcp_copy_data -- it\u0027s exactly the same logic as the\ncommon routine skb_read_bits.  The UDP and TCP socket read code now share\nthe same routine for copying data into an xdr_buf.\n\nNow that skb_read_bits() is exported, rename it to avoid confusing it with\na generic skb_* function.  As these functions are XDR-specific, they should\nnot have names that suggest they are of generic use.  Also rename\nskb_read_and_csum_bits() to be consistent.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "7559c7a28fbcaa0bca028eeebd5f251b09befe6b",
      "tree": "5cbf7df3f966243261e1923641618fd813126734",
      "parents": [
        "314dfd7987c71d7ba0c43ac3bf3d243c102ce025"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Dec 05 16:35:37 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Dec 06 10:46:51 2006 -0500"
      },
      "message": "SUNRPC: Make address format buffers more generic\n\nFor now we will assume that all transports will use the address format\nbuffers in the rpc_xprt struct to store their addresses.  Change\nrpc_peer2str() to be a generic routine to handle this, and get rid of the\nprint_address() op in the rpc_xprt_ops vector.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    }
  ],
  "next": "314dfd7987c71d7ba0c43ac3bf3d243c102ce025"
}
