)]}'
{
  "log": [
    {
      "commit": "d5b337b4877f7c4e1d761434ee04d045b0201e03",
      "tree": "0c31c4cfb0f2010a87b0f1ae7246cbd50068306e",
      "parents": [
        "97eb89bb0e5d9ab20dbc677cb18fad1421473287"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Sun Sep 28 09:21:26 2008 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:40 2008 -0400"
      },
      "message": "nfsd: use nfs client rpc callback program\n\nsince commit ff7d9756b501744540be65e172d27ee321d86103\n\"nfsd: use static memory for callback program and stats\"\ndo_probe_callback uses a static callback program\n(NFS4_CALLBACK) rather than the one set in clp-\u003ecl_callback.cb_prog\nas passed in by the client in setclientid (4.0)\nor create_session (4.1).\n\nThis patches introduces rpc_create_args.prognumber that allows\noverriding program-\u003enumber when creating rpc_clnt.\n\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "381ba74af55e58bca4c01553835a360a9f6fbb07",
      "tree": "56e5f5159432ebb350af4adf330afa4f50b77a54",
      "parents": [
        "f45663ce5fb30f76a3414ab3ac69f4dd320e760a"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jul 07 12:18:53 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:45 2008 -0400"
      },
      "message": "SUNRPC: Ensure our task is notified when an rpcbind call is done\n\nIf another task is busy in rpcb_getport_async number, it is more efficient\nto have it wake us up when it has finished instead of arbitrarily sleeping\nfor 5 seconds.\n\nAlso ensure that rpcb_wake_rpcbind_waiters() is called regardless of\nwhether or not rpcb_getport_done() gets called.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b6b6152c46861dd914d0e6cea9c27df057d6e235",
      "tree": "0d63ce529c13c09a1997da06199e27b049bb55aa",
      "parents": [
        "48b605f83c920d8daa50e43fc2c7f718e04c7bfa"
      ],
      "author": {
        "name": "Olga Kornievskaia",
        "email": "aglo@citi.umich.edu",
        "time": "Mon Jun 09 16:51:31 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:09:10 2008 -0400"
      },
      "message": "rpc: bring back cl_chatty\n\nThe cl_chatty flag alows us to control whether a given rpc client leaves\n\n\t\"server X not responding, timed out\"\n\nmessages in the syslog.  Such messages make sense for ordinary nfs\nclients (where an unresponsive server means applications on the\nmountpoint are probably hanging), but not for the callback client (which\ncan fail more commonly, with the only result just of disabling some\noptimizations).\n\nPreviously cl_chatty was removed, do to lack of users; reinstate it, and\nuse it for the nfsd\u0027s callback client.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cb3997b5a0b21864368bd1bd1d0929f9304fb6d9",
      "tree": "b3b0f4369c8dba139e0e359cfcfc9277d82430a1",
      "parents": [
        "38e886e0c18975543938519254fc9bf0829c75a3"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed May 21 17:09:41 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:58 2008 -0400"
      },
      "message": "SUNRPC: Display some debugging information as text rather than numbers\n\nIn rpc_show_tasks(), display the program name, version number, procedure\nname and tk_action as human-readable variable-length text fields rather\nthan columnar numbers.\n\nDoing the symbol lookup here helps in cases where we have actual\ndebugging output from a kernel log, but don\u0027t have access to the kernel\nimage or RPC module that generated the output.\n\nSample output:\n\n -pid- flgs status -client- --rqstp- -timeout ---ops--\n  5608 0001    -11 eeb42690 f6d93710        0 f8fa1764 nfsv3 WRITE a:call_transmit_status q:none\n  5609 0001    -11 eeb42690 f6d937e0        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5610 0001    -11 eeb42690 f6d93230        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5611 0001    -11 eeb42690 f6d93300        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5612 0001    -11 eeb42690 f6d93090        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5613 0001    -11 eeb42690 f6d933d0        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5614 0001    -11 eeb42690 f6d93cc0        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5615 0001    -11 eeb42690 f6d93a50        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5616 0001    -11 eeb42690 f6d93640        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5617 0001    -11 eeb42690 f6d93b20        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n  5618 0001    -11 eeb42690 f6d93160        0 f8fa1764 nfsv3 WRITE a:call_status q:xprt_sending\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "38e886e0c18975543938519254fc9bf0829c75a3",
      "tree": "310aa1aa78833bc0ef8836c0bfceb3a7823e6c31",
      "parents": [
        "68a23ee94e3a06819f5a39d64f2e1f3131bab12d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed May 21 17:09:33 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:56 2008 -0400"
      },
      "message": "SUNRPC: Refactor rpc_show_tasks\n\nClean up: move the logic that displays each task to its own function.\nThis removes indentation and makes future changes easier.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "68a23ee94e3a06819f5a39d64f2e1f3131bab12d",
      "tree": "47b9e954ccbd2ead56307f64516da91298153b9a",
      "parents": [
        "b0e1c57ea00302c3ac541ffd37e7db07d13cd674"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed May 21 17:09:26 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:55 2008 -0400"
      },
      "message": "SUNRPC: Don\u0027t display the rpc_show_tasks header if there are no tasks\n\nClean up: don\u0027t display the rpc_show_tasks column header unless there is at\nleast one task to display.  As far as I can tell, it is safe to let the\nlist_for_each_entry macro decide that each list is empty.\n\nscripts/checkpatch.pl also wants a KERN_FOO at the start of any newly added\nprintk() calls, so this and subsequent patches will also add KERN_INFO.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b0e1c57ea00302c3ac541ffd37e7db07d13cd674",
      "tree": "1efbe305bfff8141ae0d27a03dacc5bbf4ae58a6",
      "parents": [
        "3748f1e447ac1dbf45f33ee7491a008a8bb5cdf0"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed May 21 17:09:19 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:53 2008 -0400"
      },
      "message": "SUNRPC: Rename \"call_\" functions that are no longer FSM states\n\nThe RPC client uses a finite state machine to move RPC tasks through each\nstep of an RPC request.  Each state is contained in a function in\nnet/sunrpc/clnt.c, and named call_foo.\n\nSome of the functions named call_foo have changed over the past few years and\nare no longer states in the FSM.  These include: call_encode, call_header,\nand call_verify.  As a clean up, rename the functions that have changed.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3748f1e447ac1dbf45f33ee7491a008a8bb5cdf0",
      "tree": "1e6fced9b21cb730424a1dc0805bf08819b43832",
      "parents": [
        "6fb1bc10303c0d88f635d014324432ab6ee49d1b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed May 21 17:09:12 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:53 2008 -0400"
      },
      "message": "SUNRPC: Add a function to display the name of an RPC procedure\n\nImprove debugging messages in call_start() and call_verify() by having\nthem show the RPC procedure name instead of the procedure number.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b390c2b55c830eb3b64633fa8d8b8837e073e458",
      "tree": "e18f0041626a88447d34809f35041cd4b4425610",
      "parents": [
        "8b39f2b41033754e7ba669503d27268beb1b524a"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jun 10 18:30:11 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:43 2008 -0400"
      },
      "message": "SUNRPC: An ENOMEM error from call_encode is always fatal\n\nThe special \u0027ENOMEM\u0027 case that was previously flagged as non-fatal is\nbogus: auth_gss always returns EAGAIN for non-fatal errors, and may in fact\nreturn ENOMEM in the special case where xdr_buf_read_netobj runs out of\npreallocated buffer space (invariably a _fatal_ error, since there is no\nprovision for preallocating larger buffers).\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8b39f2b41033754e7ba669503d27268beb1b524a",
      "tree": "50377c7d6c4918141f3b8bda5040477854458e7c",
      "parents": [
        "2116271a347d1181b5497602c2bfada1de8fd53b"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 14 19:48:25 2008 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jul 09 12:08:41 2008 -0400"
      },
      "message": "SUNRPC: Ensure we exit early in case of an encode error\n\nAll errors from call_encode(), with exception of EAGAIN are fatal, so we\nshould immediately return instead of proceeding to xprt_transmit().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "233607dbbc823caf685e778cabc49fb7f679900b",
      "tree": "13840137ee10788061cbec60fcfe8ea4c274558e",
      "parents": [
        "3dc5063786b273f1aee545844f6bd4e9651ebffe",
        "b48633bd086d21f4a2a5bea96c7e6c7ba58eb60c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Apr 24 14:01:02 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Apr 24 14:01:02 2008 -0400"
      },
      "message": "Merge branch \u0027devel\u0027\n"
    },
    {
      "commit": "b48633bd086d21f4a2a5bea96c7e6c7ba58eb60c",
      "tree": "334f66cced8488e54cbd7c80ed56e81d6cc0ceb4",
      "parents": [
        "a3dab293539031b0970585b9b355cebbc91ecbd4"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Apr 22 16:47:55 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Apr 24 13:53:46 2008 -0400"
      },
      "message": "SUNRPC: Invalidate the RPCSEC_GSS session if the server dropped the request\n\nRFC 2203 requires the server to drop the request if it believes the\nRPCSEC_GSS context is out of sequence. The problem is that we have no way\non the client to know why the server dropped the request. In order to avoid\nspinning forever trying to resend the request, the safe approach is\ntherefore to always invalidate the RPCSEC_GSS context on every major\ntimeout.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "7c1d71cf56feebfb5b98219b9d11dfc3a2feca62",
      "tree": "5a073d987ec79900b2aff217a226c8c78e94b579",
      "parents": [
        "636ac43318ce6939c1698fb67e714d421314ed71"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Apr 17 16:52:57 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Apr 19 16:55:12 2008 -0400"
      },
      "message": "SUNRPC: Don\u0027t disconnect more than once if retransmitting NFSv4 requests\n\nNFSv4 requires us to ensure that we break the TCP connection before we\u0027re\nallowed to retransmit a request. However in the case where we\u0027re\nretransmitting several requests that have been sent on the same\nconnection, we need to ensure that we don\u0027t interfere with the attempt to\nreconnect and/or break the connection again once it has been established.\n\nWe therefore introduce a \u0027connection\u0027 cookie that is bumped every time a\nconnection is broken. This allows requests to track if they need to force a\ndisconnection.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1e799b673c6b82b336ab13c48b5651d511ca3000",
      "tree": "9954155b2a9bdd72e49a078418ceea6c47bcc609",
      "parents": [
        "c1d519312dcdf11532fed9f99a8ecc3547ffd9d6"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Mar 21 16:19:41 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Apr 19 16:53:20 2008 -0400"
      },
      "message": "SUNRPC: Fix read ordering problems with req-\u003erq_private_buf.len\n\nWe want to ensure that req-\u003erq_private_buf.len is updated before\nreq-\u003erq_received, so that call_decode() doesn\u0027t use an old value for\nreq-\u003erq_rcv_buf.len.\n\nIn \u0027call_decode()\u0027 itself, instead of using task-\u003etk_status (which is set\nusing req-\u003erq_received) must use the actual value of\nreq-\u003erq_private_buf.len when deciding whether or not the received RPC reply\nis too short.\n\nFinally ensure that we set req-\u003erq_rcv_buf.len to zero when retrying a\nrequest. A typo meant that we were resetting req-\u003erq_private_buf.len in\ncall_decode(), and then clobbering that value with the old rq_rcv_buf.len\nagain in xprt_transmit().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "24b74bf0c9e08cbda74d3c64af69ad402ed54e04",
      "tree": "bd18884769eef620d12babbc86a008561321758e",
      "parents": [
        "0490a54a00c14212f22c5948c8c13a4553d745bd"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Apr 19 13:15:47 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Apr 19 16:52:33 2008 -0400"
      },
      "message": "SUNRPC: Fix a bug in call_decode()\n\ncall_verify() can, under certain circumstances, free the RPC slot. In that\ncase, our cached pointer \u0027req \u003d task-\u003etk_rqstp\u0027 is invalid. Bug was\nintroduced in commit 220bcc2afd7011b3e0569fc178331fa983c92c1b (SUNRPC:\nDon\u0027t call xprt_release in call refresh).\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1e42198609d73ed1a9adcba2af275c24c2678420",
      "tree": "32fd4d9073bfc0f3909af8f9fb4bcff38951d01a",
      "parents": [
        "794eb6bf20ebf992c040ea831cd3a9c64b0c1f7a",
        "4b119e21d0c66c22e8ca03df05d9de623d0eb50f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 17 23:56:30 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 17 23:56:30 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "ed13c27e546667fb0967ae30f5070cd7f6455f90",
      "tree": "164af7ac3dfd69c6c939150b530fd57a9eb8e54d",
      "parents": [
        "240ee831187e000704cba3208ef6b0a8ad49bd64"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Apr 07 16:52:44 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Apr 08 21:07:00 2008 -0400"
      },
      "message": "SUNRPC: Fix a memory leak in rpc_create()\n\nCommit 510deb0d was supposed to move the xprt_create_transport() call in\nrpc_create(), but neglected to remove the old call site.  This resulted in\na transport leak after every rpc_create() call.\n\nThis leak is present in 2.6.24 and 2.6.25.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0dc47877a3de00ceadea0005189656ae8dc52669",
      "tree": "7440a87385fe318cb42f0ae161be195f5e967d82",
      "parents": [
        "6387c4bed539539b05fa773cf2ff26529dc3074c"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Mar 05 20:47:47 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 05 20:47:47 2008 -0800"
      },
      "message": "net: replace remaining __FUNCTION__ occurrences\n\n__FUNCTION__ is gcc-specific, use __func__\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cdd0972945dbcb8ea24db365d9b0e100af2a27bb",
      "tree": "d41204db20ccc81cecf99a332e2fa764075e8637",
      "parents": [
        "5e4424af9a1f062c6451681dff24a26e27741cc6",
        "cbc20059259edee4ea24c923e6627c394830c972"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Feb 28 23:48:05 2008 -0800"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Feb 28 23:48:05 2008 -0800"
      },
      "message": "Merge branch \u0027cleanups\u0027 into next\n"
    },
    {
      "commit": "fda1393938035559b417dd5b26b9cc293a7aee00",
      "tree": "8190a6ad7a81974dd5f782f2ab872753742ff68d",
      "parents": [
        "96ef13b283934fbf60b732e6c4ce23e8babd0042"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Feb 22 16:34:12 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Feb 25 21:40:42 2008 -0800"
      },
      "message": "SUNRPC: Convert users of rpc_wake_up_task to use rpc_wake_up_queued_task\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "96ef13b283934fbf60b732e6c4ce23e8babd0042",
      "tree": "9efa8e92ff2e7f27746b65214a43ca3a4aed1b14",
      "parents": [
        "fde95c7554aa77f9a242f32b0b5f8f15395abf52"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Feb 22 15:46:41 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Feb 25 21:40:40 2008 -0800"
      },
      "message": "SUNRPC: Add a new helper rpc_wake_up_queued_task()\n\nIn all cases where we currently use rpc_wake_up_task(), we almost always\nknow on which waitqueue the rpc_task is actually sleeping. This will allows\nus to simplify the queue locking in a future patch.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cbc20059259edee4ea24c923e6627c394830c972",
      "tree": "648caf84d855d497880fdd0cfb58319806d80fd1",
      "parents": [
        "2785259631697ebb0749a3782cca206e2e542939"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Feb 14 11:11:30 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Feb 14 11:17:24 2008 -0500"
      },
      "message": "SUNRPC: Declare as const the rpc_message arguments to rpc_call_sync/async\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "65b6e42cdc5b6a1ce2ada31cc294d7e60b22bb43",
      "tree": "f8e1629ab3dce44de715e29811020892d467b189",
      "parents": [
        "073b86dacc3c0fa79c71f3519169ea18d5521227"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Wed Feb 13 15:03:23 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 13 16:21:19 2008 -0800"
      },
      "message": "docbook: sunrpc filenames and notation fixes\n\nUse updated file list for docbook files and\nfix kernel-doc warnings in sunrpc:\nWarning(linux-2.6.24-git12//net/sunrpc/rpc_pipe.c:689): No description found for parameter \u0027rpc_client\u0027\nWarning(linux-2.6.24-git12//net/sunrpc/rpc_pipe.c:765): No description found for parameter \u0027flags\u0027\nWarning(linux-2.6.24-git12//net/sunrpc/clnt.c:584): No description found for parameter \u0027tk_ops\u0027\nWarning(linux-2.6.24-git12//net/sunrpc/clnt.c:618): No description found for parameter \u0027bufsize\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "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": "34f5b4662bf4b54f22b32ce76ce70eccd7ebc68a",
      "tree": "0c79a6f5579244f56c4c9eb1d9e686f29e6c3c67",
      "parents": [
        "afc881124b8aff83c7a28269ef9d9cfce543256c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 15 14:17:11 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:06:10 2008 -0500"
      },
      "message": "SUNRPC: Don\u0027t bother changing the sigmask for asynchronous RPC calls\n\nThe caller will never sleep in rpc_execute, so don\u0027t bother setting the\nsigmask.\n\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": "698b6d088e8a5d907596c689d5ae9109611c5b59",
      "tree": "0e6465b1647fbd731fb2794d34ab5efa14e2465d",
      "parents": [
        "69dd716c5ffd89f5ba14ffb871d633ecea74d13a"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Dec 20 16:03:53 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:58 2008 -0500"
      },
      "message": "SUNRPC: cleanup for rpc_new_client()\n\nThere is no reason why we shouldn\u0027t just pass the rpc_create_args.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "510deb0d7035d4fd465627deb3a119ca854f9e00",
      "tree": "ffc7af675601c88ef8843ddb5a64db8b8da7ee91",
      "parents": [
        "40c553193df41920de659f0446e5d214c862e827"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:56:24 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:49 2008 -0500"
      },
      "message": "SUNRPC: rpc_create() default hostname should support AF_INET6 addresses\n\nIf the ULP doesn\u0027t pass a hostname string to rpc_create(), it manufactures\none based on the passed-in address.  Be smart enough to handle an AF_INET6\naddress properly in this case.\n\nMove the default servername logic before the xprt_create_transport() call\nto simplify error handling in rpc_create().\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "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": "b3ef8b3bb93300e58a4c4806207de3de4eb76f48",
      "tree": "d02db9d538477b5a98abcb7945dbf81fa9b8e4ec",
      "parents": [
        "77de2c590ec72828156d85fa13a96db87301cc68"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:32:34 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:31 2008 -0500"
      },
      "message": "SUNRPC: Allow rpc_init_task() to initialise the rpc_task-\u003etk_msg\n\nIn preparation for the removal of rpc_call_setup().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "77de2c590ec72828156d85fa13a96db87301cc68",
      "tree": "9e14b6c75df046d406f0652f98eb520db64d3675",
      "parents": [
        "5085925902cc4d93b9a4992936edd2aee70a5e15"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:40:21 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:31 2008 -0500"
      },
      "message": "SUNRPC: Add a helper rpc_call_start() that initialises task-\u003etk_action\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5085925902cc4d93b9a4992936edd2aee70a5e15",
      "tree": "4d938ccdf4a32ef9c66d005d96dacb4cfb744216",
      "parents": [
        "3ff7576ddac06c3d07089e241b40826d24bbf1ac"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 25 18:19:37 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:31 2008 -0500"
      },
      "message": "SUNRPC: Mask signals across the call to rpc_call_setup() in rpc_run_task\n\nTo ensure that the RPCSEC_GSS upcall is performed with the correct sigmask.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c970aa85e71bd581726c42df843f6f129db275ac",
      "tree": "e7fc90ee4064196d357045fd173764e0b8fc8ca8",
      "parents": [
        "84115e1cd4a3614c4e566d4cce31381dce3dbef9"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:39:59 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:30 2008 -0500"
      },
      "message": "SUNRPC: Clean up rpc_run_task\n\nMake it use the new task initialiser structure instead of acting as a\nwrapper.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "84115e1cd4a3614c4e566d4cce31381dce3dbef9",
      "tree": "01b2de7163deb6b3a789811183d8b8c1329b900c",
      "parents": [
        "e8914c65f7f8d4e8701b8e78a12b714872ea0402"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:39:59 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:30 2008 -0500"
      },
      "message": "SUNRPC: Cleanup of rpc_task initialisation\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e8914c65f7f8d4e8701b8e78a12b714872ea0402",
      "tree": "54e0834fce6e8b834ad400e010e76215e7eb76e4",
      "parents": [
        "a6eaf8bdf9308b51ec84e358915fc65400029519"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:39:59 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:28 2008 -0500"
      },
      "message": "SUNRPC: Restrict sunrpc client exports\n\nThe sunrpc client exports are not meant to be part of any official kernel\nAPI: they can change at the drop of a hat. Mark them as internal functions\nusing EXPORT_SYMBOL_GPL.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a6eaf8bdf9308b51ec84e358915fc65400029519",
      "tree": "f704135c09272357d9e9bf2d2a39636006518c3e",
      "parents": [
        "93a44a75b97b9d8a03dd3d3f3247c3d0ec46aa4c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:39:58 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:28 2008 -0500"
      },
      "message": "SUNRPC: Move exported declarations to the function declarations\n\nDo this for all RPC client related functions and XDR functions.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3ebb067d92ebe5bcfd282acf12bade891d334d07",
      "tree": "99da8250d23887b8573dbeddae76ceb392c0663b",
      "parents": [
        "7272dcd31d56580dee7693c21e369fd167e137fe"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Nov 06 18:40:12 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:26 2008 -0500"
      },
      "message": "SUNRPC: Make call_status()/call_decode() call xprt_force_disconnect()\n\nMove the calls to xprt_disconnect() over to xprt_force_disconnect() in\norder to enable the transport layer to manage the state of the\nXPRT_CONNECTED flag.\nDitto in xs_tcp_read_fraghdr().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "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": "220bcc2afd7011b3e0569fc178331fa983c92c1b",
      "tree": "2a9d18da02292c6c6d7b8da7f6dd6a209ea1b57d",
      "parents": [
        "b6e9c713f5c526a85893c6e0ab1d5d6c6f1ab479"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Oct 01 12:06:48 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:20:42 2007 -0400"
      },
      "message": "SUNRPC: Don\u0027t call xprt_release in call refresh\n\nCall it from call_verify() instead...\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b6e9c713f5c526a85893c6e0ab1d5d6c6f1ab479",
      "tree": "cee9c5bc57c4c5bb0638508786513ea4cdb390fc",
      "parents": [
        "2199700f1d660494d2552278354422c51becb686"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Oct 01 12:06:44 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:20:40 2007 -0400"
      },
      "message": "SUNRPC: Don\u0027t call xprt_release() if call_allocate fails\n\nIt completely fouls up the RPC call statistics, and serves no useful\npurpose.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "afde94f398b62c8596a8d0cbfc25798f0b52a371",
      "tree": "fd82a6e18be9a251e9afa5fd5c87ff703642339d",
      "parents": [
        "bf19aacecbeebccb2c3d150a8bd9416b7dba81fe"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Sep 26 14:38:08 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:20:28 2007 -0400"
      },
      "message": "SUNRPC: Fix default hostname created in rpc_create()\n\nSince 43780b87fa7..., rpc_create() fills in a default hostname based on\nthe ip address if the servername passed in is null.  A small typo made\nthat default incorrect.  (But this information appears to be used only\nfor debugging right now, so I don\u0027t believe the typo causes any bugs in\nthe current kernel.)\n\nThanks to Olga Kornievskaia for bug report and testing.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nCc: Olga Kornievskaia \u003caglo@citi.umich.edu\u003e\nCc: Chuck Lever \u003cchuck.lever@oracle.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": "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": "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": "b79dc8ced1412e7056f3969bef40a30cc75ee530",
      "tree": "2a21fd59b9c4a38e7d3effad185db40ae60ceb3b",
      "parents": [
        "906462af4c707ba0238f3579fdb2b594c4ea29c3"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:52 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:58 2007 -0400"
      },
      "message": "SUNRPC: RPC bind failures should be permanent for NULL requests\n\nThe purpose of an RPC ping (a NULL request) is to determine whether the\nremote end is operating and supports the RPC program and version of the\nrequest.\n\nIf we do an RPC bind and the remote\u0027s rpcbind service says \"this\nprogram or service isn\u0027t supported\" then we have our answer already,\nand we should give up immediately.\n\nThis is good for the kernel mount client, as it will cause the request\nto fail, and then allow an immediate retry with different options.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "906462af4c707ba0238f3579fdb2b594c4ea29c3",
      "tree": "f3c15855aaef2353700f1bc91c56108c50ca4150",
      "parents": [
        "2429cbf6a1566b8e92436d615387e4250feab46b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:47 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:56 2007 -0400"
      },
      "message": "SUNRPC: Split another new rpcbind retry error code from EACCES\n\nAdd more new error code processing to the kernel\u0027s rpcbind client\nand to call_bind_status() to distinguish two cases:\n\nCase 1: the remote has replied that the program/version tuple is not\nregistered (returns EACCES)\n\nCase 2: retry with a lesser rpcbind version (rpcb now returns EPFNOSUPPORT)\n\nThis change allows more specific error processing for each of these two\ncases.  We now fail case 2 instead of retrying... it\u0027s a server\nconfiguration error not to support even rpcbind version 2.  And don\u0027t\nexpose this new error code to user land -- convert it to EIO before\nfailing the RPC.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2429cbf6a1566b8e92436d615387e4250feab46b",
      "tree": "e3d4906948d68a3d9bcb546b6eb6563f1cffaa60",
      "parents": [
        "4784cb51a3f66d401f8a08810231aa7dc8f44e43"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:41 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:53 2007 -0400"
      },
      "message": "SUNRPC: Add a new error code for retry waiting for another binder\n\nAdd new error code processing to the kernel\u0027s rpcbind client and to\ncall_bind_status() to distinguish two cases:\n\nCase 1: the remote has replied that the program/version tuple is not\nregistered (returns -EACCES)\n\nCase 2: another process is already in the middle of binding on this\ntransport (now returns -EAGAIN)\n\nThis change allows more specific retry processing for each of these two\ncases.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d66968f207b6402fd12c20145cb31dbe3608979c",
      "tree": "693fd189a2d9b414edfc9139db784ba6e48a1999",
      "parents": [
        "06b8d2552d50f802a3277137a565febcd59ef037"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:25 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:45 2007 -0400"
      },
      "message": "SUNRPC: Clean up in rpc_show_tasks\n\n/home/cel/linux/net/sunrpc/clnt.c: In function ‘rpc_show_tasks’:\n/home/cel/linux/net/sunrpc/clnt.c:1538: warning:\n\tsigned and unsigned type in conditional expression\n\nThis points out another case where a conditional expression returns a\nsigned value in one arm and an unsigned value in the other.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "06b8d2552d50f802a3277137a565febcd59ef037",
      "tree": "7b3b5d92e4a7a1bd8eff9e994a4c1899a8c35670",
      "parents": [
        "6d0aa06afd62a868d83c6021335622a316469527"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:20 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:42 2007 -0400"
      },
      "message": "SUNRPC: Make sure server name is reasonable before trying to print it\n\nCheck the length of the passed-in server name before trying to print it in\nthe log.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "89eb21c35b61b5157940e1b78c2c6d0529d11c63",
      "tree": "d276c10faa1370ab09ce711f87fe299a24995b03",
      "parents": [
        "5d34da3af923e0f950a89f160540d2506ca046ce"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:09 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:37 2007 -0400"
      },
      "message": "SUNRPC: fix a signed v. unsigned comparison nit in rpc_bind_new_program\n\n/home/cel/linux/net/sunrpc/clnt.c: In function ‘rpc_bind_new_program’:\n/home/cel/linux/net/sunrpc/clnt.c:445: warning:\n\tcomparison between signed and unsigned\n\nRPC version numbers are u32, not int.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5d34da3af923e0f950a89f160540d2506ca046ce",
      "tree": "5a8352adba55039f81824dbc80a3d025a9b342b3",
      "parents": [
        "143b6c4008a7928de7e139c3a77a90e4cad8db2c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Sep 11 18:00:03 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:16:34 2007 -0400"
      },
      "message": "SUNRPC: Only one dprintk is needed during client creation\n\nRemove one of two identical dprintk\u0027s that occur when an RPC client is\ncreated.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d8558f99fbc5ef5d4ae76b893784005056450f82",
      "tree": "993e2460295fcdc83c8f9ad755790aa066cd0f94",
      "parents": [
        "137d6acaa64afa4cf3d977417424e731ea04705a"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@fieldses.org",
        "time": "Tue Jul 10 15:19:26 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:50 2007 -0400"
      },
      "message": "sunrpc: drop BKL around wrap and unwrap\n\nWe don\u0027t need the BKL when wrapping and unwrapping; and experiments by Avishay\nTraeger have found that permitting multiple encryption and decryption\noperations to proceed in parallel can provide significant performance\nimprovements.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nCc: Avishay Traeger \u003catraeger@cs.sunysb.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\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": "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": "43780b87fa799ae65df11d89d4539d8d6a7c67eb",
      "tree": "46fce452807c8672af77666bb03cab5ff4191e94",
      "parents": [
        "45160d6275814e0c86206e6981f0b92c61a50a21"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Sun Jul 01 12:13:22 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:46 2007 -0400"
      },
      "message": "SUNRPC: Add a convenient default for the hostname when calling rpc_create()\n\nA couple of callers just use a stringified IP address for the rpc client\u0027s\nhostname.  Move the logic for constructing this into rpc_create(), so it can\nbe shared.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8a702bbb7ddaa2e78c17dbaaf48e3cd5943676f0",
      "tree": "82c49e57220dff3d801658a7d0d3eddfedb76758",
      "parents": [
        "0df7fb74fbb709591301871a38aac7735a1d6583"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 27 18:30:26 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:38 2007 -0400"
      },
      "message": "SUNRPC: Suppress some noisy and unnecessary printk() calls in call_verify()\n\nConvert them into dprintk() calls.\n\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": "1dd17ec693bf4a08b666c2ef76b68ca08ce3c93d",
      "tree": "633aabf459c0beafc5ed0ebd7c0efd2e58e7c22b",
      "parents": [
        "5d28dc82074f1e64b22c9424b161abc1f5d6bcdb"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jun 26 16:57:41 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:36 2007 -0400"
      },
      "message": "SUNRPC: Allow rpc_auth to run clean up before the rpc_client is destroyed\n\nRPCSEC_GSS needs to be able to send NULL RPC calls to the server in order\nto free up any remaining GSS contexts.\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": "6e5b70e9d1e712d8dad5514e0ab5240ac4b5fb57",
      "tree": "cb6c293dd5adf1b966dcd5681649fafc690fd053",
      "parents": [
        "188fef11db219f13f32d055ba59985e7d1a349fe"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jun 12 10:02:37 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:30 2007 -0400"
      },
      "message": "SUNRPC: clean up rpc_call_async/rpc_call_sync/rpc_run_task\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": "4ada539ed77c7a2bbcb75cafbbd7bd8d2b9bef7b",
      "tree": "cb4ba7df88aee07173dc7e44a3c35249ae4ab539",
      "parents": [
        "ab418d70e1fceda1e2824c45ba3323a1b1413507"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jun 14 17:26:17 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:30 2007 -0400"
      },
      "message": "SUNRPC: Make create_client() take a reference to the rpciod workqueue\n\nEnsures that an rpc_client always has the possibility to send asynchronous\nRPC calls.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d431a555fcf920e1b5c3e3eba52eb5f5e7836771",
      "tree": "2f2a11b506742417b91fa2b63d332f4ad27a88db",
      "parents": [
        "4c402b40970382ded616eadd544fd63feb76cc79"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jun 17 17:07:54 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:29 2007 -0400"
      },
      "message": "SUNRPC: Don\u0027t create an rpc_pipefs directory before rpc_clone is initialised\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": "8ad7c892e18ff8e6df422eb48ca0f73268ffd632",
      "tree": "42e1e0bacc39ef9ea457a4f278d6361e4582ce01",
      "parents": [
        "90c5755ff5111ffdcca10a1e8a823dba29f37b6d"
      ],
      "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: Make rpc_clone take a reference instead of using cl_count\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": "00a6e7bbf990e3a5e59a9a1e6a68e99c94fe001c",
      "tree": "fb0427a8b08702c99bf5eba9c6d5bb16ea4ee2bc",
      "parents": [
        "4c2eaf073f0cc2b5bf593b8133c078b9d9406e95"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Mar 29 16:48:33 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Apr 30 22:17:16 2007 -0700"
      },
      "message": "SUNRPC: RPC client should retry with different versions of rpcbind\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": "241c39b9ac4bf847013aa06cce6d4d61426a2006",
      "tree": "6455884e65288e64576555a27c06a8ee2f1f6371",
      "parents": [
        "2b82f190c81bf1524447c021df4e9ce8ef379bd5"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Apr 20 16:12:55 2007 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Apr 20 22:56:30 2007 -0700"
      },
      "message": "RPC: Fix the TCP resend semantics for NFSv4\n\nFix a regression due to the patch \"NFS: disconnect before retrying NFSv4\nrequests over TCP\"\n\nThe assumption made in xprt_transmit() that the condition\n\t\"req-\u003erq_bytes_sent \u003d\u003d 0 and request is on the receive list\"\nshould imply that we\u0027re dealing with a retransmission is false.\nFirstly, it may simply happen that the socket send queue was full\nat the time the request was initially sent through xprt_transmit().\nSecondly, doing this for each request that was retransmitted implies\nthat we disconnect and reconnect for _every_ request that happened to\nbe retransmitted irrespective of whether or not a disconnection has\nalready occurred.\n\nFix is to move this logic into the call_status request timeout handler.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\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": "cca5172a7ec10dfdb0b787cd8e9d5b0b8f179793",
      "tree": "1b9e86cf95ab5e1e2b3180ebe59be2a05ebbe1bf",
      "parents": [
        "d808ad9ab8b1109239027c248c4652503b9d3029"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Feb 09 15:38:13 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:20:13 2007 -0800"
      },
      "message": "[NET] SUNRPC: Fix whitespace errors.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "46121cf7d85869bfe9588bac7ccf55aa0bc7f278",
      "tree": "51172f1b47dd8aa99e6f96c495fe7f8e2c0bbc34",
      "parents": [
        "8885cb367f86ce02bed3bf18192d74a53ac3b81f"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Jan 31 12:14:08 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Feb 03 15:35:10 2007 -0800"
      },
      "message": "SUNRPC: fix print format for tk_pid\n\nThe tk_pid field is an unsigned short.  The proper print format specifier for\nthat type is %5u, not %4d.\n\nAlso clean up some miscellaneous print formatting nits.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\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": "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": "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"
    },
    {
      "commit": "6d5fcb5a52bfd00eab3ba2c7ca890823388436ae",
      "tree": "3408c72a54ac64d68e0e0a505ebe3757f8e42fac",
      "parents": [
        "bbd5a1f9fc9fad0f8725812d91c51b052e847de8"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Oct 18 16:01:06 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Dec 06 10:46:30 2006 -0500"
      },
      "message": "SUNRPC: Remove BKL around the RPC socket operations etc.\n\nAll internal RPC client operations should no longer depend on the BKL,\nhowever lockd and NFS callbacks may still require it.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bbd5a1f9fc9fad0f8725812d91c51b052e847de8",
      "tree": "252650d49dd498a67c404b7c4c1abeb2dc341624",
      "parents": [
        "3e32a5d99a467b9d4d416323c8c292479b4915e5"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Oct 18 16:01:05 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Dec 06 10:46:29 2006 -0500"
      },
      "message": "SUNRPC: Fix up missing BKL in asynchronous RPC callback functions\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3e32a5d99a467b9d4d416323c8c292479b4915e5",
      "tree": "96cf078675e55c19676b2c28432c609d60ea2ac1",
      "parents": [
        "23bf85ba43650e4341672a6bc85aa3f2c02eb633"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Nov 16 11:37:27 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Dec 06 10:46:29 2006 -0500"
      },
      "message": "SUNRPC: Give cloned RPC clients their own rpc_pipefs directory\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "23bf85ba43650e4341672a6bc85aa3f2c02eb633",
      "tree": "0c88e0bda09955d749bd27bfa115e1cdd4f9efc4",
      "parents": [
        "e8e058e830f46a76f837522e5e2df46d4303111f"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Nov 21 10:40:23 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Dec 06 10:46:28 2006 -0500"
      },
      "message": "SUNRPC: Handle the cases where rpc_alloc_iostats() fails\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e6b3c4db6fbcd0d33720696f37790d6b8be12313",
      "tree": "24ad4a93b00ba7236b9a2d896fd6cb59a1dc2334",
      "parents": [
        "cc4dc59e5580d6c0de1685a25b74d32175f43434"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Nov 11 22:18:03 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Dec 06 10:46:25 2006 -0500"
      },
      "message": "Fix a second potential rpc_wakeup race...\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e69062b4f728dca01ec1a9eb4ed55b73a374f164",
      "tree": "6f8fe0800c07bb53a47bab00e8dfdb4ff9a912e2",
      "parents": [
        "af997d8c9568d556cd0a362d56de9fb14a6a012a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Nov 21 01:21:34 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:30:20 2006 -0800"
      },
      "message": "[SUNRPC]: Use k{mem,str}dup where applicable\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "e9ff3990f08e9a0c2839cc22808b01732ea5b3e4",
      "tree": "c638a7b89f0c5e8adc410316d06ca1de8b8dabee",
      "parents": [
        "0bdd7aab7f0ecd5d337910816aa058c18398628e"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Oct 02 02:18:11 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:21 2006 -0700"
      },
      "message": "[PATCH] namespaces: utsname: switch to using uts namespaces\n\nReplace references to system_utsname to the per-process uts namespace\nwhere appropriate.  This includes things like uname.\n\nChanges: Per Eric Biederman\u0027s comments, use the per-process uts namespace\n\tfor ELF_PLATFORM, sunrpc, and parts of net/ipv4/ipconfig.c\n\n[jdike@addtoit.com: UML fix]\n[clg@fr.ibm.com: cleanup]\n[akpm@osdl.org: build fix]\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Andrey Savochkin \u003csaw@sw.ru\u003e\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d8ed029d6000ba2e2908d9286409e4833c091b4c",
      "tree": "732feaa2e3751df5c81032a30ff4761427492ac4",
      "parents": [
        "7699431301b189fca7ccbb64fe54e5a5170f8497"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Sep 26 22:29:38 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:01:21 2006 -0700"
      },
      "message": "[SUNRPC]: trivial endianness annotations\n\npure s/u32/__be32/\n\n[AV: large part based on Alexey\u0027s patches]\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6b6ca86b77b62b798cf9ca2599036420abce7796",
      "tree": "cf631a3c293be45fa4bed54bca5dcbfc96a57df1",
      "parents": [
        "da45828e2835057045150b318c4fbe9bb91f18dd"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Sep 05 12:55:57 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:25:01 2006 -0400"
      },
      "message": "SUNRPC: Add refcounting to the struct rpc_xprt\n\nIn a subsequent patch, this will allow the portmapper to take a reference\nto the rpc_xprt for which it is updating the port number, fixing an Oops.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "da45828e2835057045150b318c4fbe9bb91f18dd",
      "tree": "b04b3ae7fe4cf79c8af2f399f44d5db65995ac55",
      "parents": [
        "76303992b4701124f4cd0791ae2049ab4332f02c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Aug 31 15:44:52 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:25:00 2006 -0400"
      },
      "message": "SUNRPC: Clean up soft task error handling\n\n- Ensure that the task aborts the RPC call only when it has actually timed out.\n - Ensure that req-\u003erq_majortimeo is initialised correctly.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "76303992b4701124f4cd0791ae2049ab4332f02c",
      "tree": "2f364988b34340e2b4698facdbd84818c224c0d6",
      "parents": [
        "8014793b1b2869445adfe678d64cdacd10e99d53"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Aug 30 14:32:49 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:56 2006 -0400"
      },
      "message": "SUNRPC: Handle ENETUNREACH, EHOSTUNREACH and EHOSTDOWN socket errors\n\nIn case of any of the above errors occuring, delay for 3 seconds, then\nhandle as if it were a timeout error.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b86acd501a34227e0ed2b2d54dc8002c1701ce17",
      "tree": "1f237ba5e565d05a9ed78ebf90d9ff7d1cdade05",
      "parents": [
        "ff9aa5e56df60cc8565a93cc868fe25ae3f20e49"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:22 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:51 2006 -0400"
      },
      "message": "SUNRPC: export new RPC client functions with _GPL\n\nThis patch is optional.\n\nIt has been suggested that the RPC client internal functions used by upper\nlayer protocols (such as NFS) be exported via EXPORT_SYMBOL_GPL.  This\npatch does that.\n\nTest plan:\nCompile kernel with CONFIG_NFS enabled as a module.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ff9aa5e56df60cc8565a93cc868fe25ae3f20e49",
      "tree": "ae1045652699feacd18aecbc7023edd430c2695e",
      "parents": [
        "9e1968c58d72c4b85d8a69bda1e194f9701fb224"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:21 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:51 2006 -0400"
      },
      "message": "SUNRPC: Eliminate xprt_create_proto and rpc_create_client\n\nThe two function call API for creating a new RPC client is now obsolete.\nRemove it.\n\nAlso, remove an unnecessary check to see whether the caller is capable of\nusing privileged network services.  The kernel RPC client always uses a\nprivileged ephemeral port by default; callers are responsible for checking\nthe authority of users to make use of any RPC service, or for specifying\nthat a nonprivileged port is acceptable.\n\nTest plan:\nRepeated runs of Connectathon locking suite.  Check network trace to ensure\ncorrectness of NLM requests and replies.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c2866763b4029411d166040306691773c12d4caf",
      "tree": "5b16b3a293843062234c5eaf377da2af93365266",
      "parents": [
        "6ca948238724c945bd353f51d54ae7d285f3889f"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:20 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:49 2006 -0400"
      },
      "message": "SUNRPC: use sockaddr + size when creating remote transport endpoints\n\nPrepare for more generic transport endpoint handling needed by transports\nthat might use different forms of addressing, such as IPv6.\n\nIntroduce a single function call to replace the two-call\nxprt_create_proto/rpc_create_client API.  Define a new rpc_create_args\nstructure that allows callers to pass in remote endpoint addresses of\nvarying length.\n\nTest-plan:\nCompile kernel with CONFIG_NFS enabled.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c4efcb1d3e0bc76aeb9ca6301d19a5079893c6c9",
      "tree": "23f113b897f1ab2e00e4fcf774d93711d7f703b8",
      "parents": [
        "e7f7865743fff3d3938ec7540e5a784d662426da"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:19 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:48 2006 -0400"
      },
      "message": "SUNRPC: Use \"sockaddr_storage\" for storing RPC client\u0027s remote peer address\n\nIPv6 addresses are big (128 bytes).  Now that no RPC client consumers treat\nthe addr field in rpc_xprt structs as an opaque, and access it only via the\nAPI calls, we can safely widen the field in the rpc_xprt struct to\naccomodate larger addresses.\n\nTest plan:\nCompile kernel with CONFIG_NFS enabled.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "f425eba437f0051bde979ea2eef8bc875a77cd00",
      "tree": "c64aae65d42c1bd67604ec0ffe957c03dc3233fe",
      "parents": [
        "edb267a688fcee5335d596752f117a30c7152e44"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:18 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:48 2006 -0400"
      },
      "message": "SUNRPC: Create API for displaying remote peer address\n\nProvide an API for formatting the remote peer address for printing without\nexposing its internal structure.  The address could be dynamic, so we\nsupport a function call to get the address rather than reading it straight\nout of a structure.\n\nTest-plan:\nDestructive testing (unplugging the network temporarily).  Probably need\nto rig a server where certain services aren\u0027t running, or that returns an\nerror for some typical operation.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    }
  ],
  "next": "ed39440a2573abc926f230267000f21fa5a87822"
}
