)]}'
{
  "log": [
    {
      "commit": "45d43c291e9a922d7b432b0dbcb1d8fb70d8410f",
      "tree": "b7aeca1a66177b2b03c2bb96996d3d40cbbf7a9a",
      "parents": [
        "17347d03c008e2f504c33bb4905cdad0abc01319"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Feb 06 19:38:51 2012 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Feb 15 00:19:43 2012 -0500"
      },
      "message": "NFSv4.1: Convert slotid from u8 to u32\n\nIt is perfectly legal to negotiate up to 2^32-1 slots in the protocol,\nand with 10GigE, we are already seeing that 255 slots is far too limiting.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c7add9a9720ff5be4715f7a0bb0d9578b2e8534e",
      "tree": "9b87930052ffe27acbdb94ac294ea0f073847189",
      "parents": [
        "bc224f539dcce7805d4bfb68a92f0fe8bb102c22"
      ],
      "author": {
        "name": "Stanislav Kinsbursky",
        "email": "skinsbursky@parallels.com",
        "time": "Thu Jan 26 15:11:49 2012 +0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Feb 06 18:48:04 2012 -0500"
      },
      "message": "NFS: search for client session id in proper network namespace\n\nNetwork namespace is taken from request transport and passed as a part of\ncb_process_state structure.\n\nSigned-off-by: Stanislav Kinsbursky \u003cskinsbursky@parallels.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0e0243dc35a2349b3946e54f90e874be396fdb8b",
      "tree": "e73bcb2dc5e45ce56a35ca3808287425f39f69c2",
      "parents": [
        "2485a4b610171f4e1c4ab0d053569747795c1bbe"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Thu Jan 12 10:06:05 2012 +0300"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jan 12 16:29:51 2012 -0500"
      },
      "message": "NFS: add an endian notation\n\nThis function returns a big endian value.  The implementation in\nfs/nfs/callback_proc.c is declared with \"__be32\" but the .h file uses\n\"unsigned\" instead.  It makes sparse complain:\n\nfs/nfs/callback_proc.c:232:8: error:\n\tsymbol \u0027nfs4_callback_layoutrecall\u0027 redeclared with different\n\ttype (originally declared at fs/nfs/callback.h:165) - different\n\tbase types\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "55a673990ec04cf63005318bcf08c2b0046e5778",
      "tree": "71e4fb3292060553063042c6190031d104d9c1f5",
      "parents": [
        "9af7db3228acc286c50e3a0f054ec982efdbc6c6"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Aug 02 14:46:29 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Aug 04 11:55:35 2011 -0400"
      },
      "message": "NFSv4.1: Fix the callback \u0027highest_used_slotid\u0027 behaviour\n\nCurrently, there is no guarantee that we will call nfs4_cb_take_slot() even\nthough nfs4_callback_compound() will consistently call\nnfs4_cb_free_slot() provided the cb_process_state has set the \u0027clp\u0027 field.\nThe result is that we can trigger the BUG_ON() upon the next call to\nnfs4_cb_take_slot().\n\nThis patch fixes the above problem by using the slot id that was taken in\nthe CB_SEQUENCE operation as a flag for whether or not we need to call\nnfs4_cb_free_slot().\nIt also fixes an atomicity problem: we need to set tbl-\u003ehighest_used_slotid\natomically with the check for NFS4_SESSION_DRAINING, otherwise we end up\nracing with the various tests in nfs4_begin_drain_session().\n\nCc: stable@kernel.org [2.6.38+]\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1be5683b03a766670b3b629bf6bfeab3ca9239d8",
      "tree": "613f4c0dea8b0d8447a3158b82b3e2046ee9dcb5",
      "parents": [
        "1775bc342c6eacd6304493cbb2e0cda1a0182246"
      ],
      "author": {
        "name": "Marc Eshel",
        "email": "eshel@almaden.ibm.com",
        "time": "Sun May 22 19:47:09 2011 +0300"
      },
      "committer": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun May 29 20:52:31 2011 +0300"
      },
      "message": "pnfs: CB_NOTIFY_DEVICEID\n\nNote: This functionlaity is incomplete as all layout segments referring to\nthe \u0027to be removed device id\u0027 need to be reaped, and all in flight I/O drained.\n\n[use be32 res in nfs4_callback_devicenotify]\n[use nfs_client to qualify deviceid for cb_notify_deviceid]\n[use global deviceid cache for CB_NOTIFY_DEVICEID]\n[refactor device cache _lookup_deviceid]\n[refactor device cache _find_get_deviceid]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[Bug in new global-device-cache code]\n[layout_driver MUST set free_deviceid_node if using dev-cache]\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n"
    },
    {
      "commit": "778be232a207e79088ba70d832ac25dfea6fbf1a",
      "tree": "307249459e5ef45c4b3651c7fc5c454cdb3e0c92",
      "parents": [
        "80c30e8de4f81851b1f712bcc596e11d53bc76f1"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Tue Jan 25 15:38:01 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 25 15:26:51 2011 -0500"
      },
      "message": "NFS do not find client in NFSv4 pg_authenticate\n\nThe information required to find the nfs_client cooresponding to the incoming\nback channel request is contained in the NFS layer. Perform minimal checking\nin the RPC layer pg_authenticate method, and push more detailed checking into\nthe NFS layer where the nfs_client can be found.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "36840370845629e6cb4324d1dd4aff6778670503",
      "tree": "b295dba561cefecd6845c4402a52df5f7894f520",
      "parents": [
        "43f1b3da8b35d706d6c47880fc211d2519b4a587"
      ],
      "author": {
        "name": "Alexandros Batsakis",
        "email": "batsakis@netapp.com",
        "time": "Thu Jan 06 11:36:31 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jan 06 14:46:32 2011 -0500"
      },
      "message": "pnfs: update nfs4_callback_recallany to handle layouts\n\nWhile here, update the code a bit.\n\nSigned-off-by: Alexandros Batsakis \u003cbatsakis@netapp.com\u003e\nSigned-off-by: Fred Isaman \u003ciisaman@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "f2a625616045fe46e1d5fceebdd825f5acdecdb7",
      "tree": "7dc2943b33b6adf7cc391f3699e6d2f676f3d431",
      "parents": [
        "cc6e5340b0981feac5a00a992bab6154cb4b1fa1"
      ],
      "author": {
        "name": "Fred Isaman",
        "email": "iisaman@netapp.com",
        "time": "Thu Jan 06 11:36:29 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jan 06 14:46:32 2011 -0500"
      },
      "message": "pnfs: CB_LAYOUTRECALL xdr code\n\nThis is the xdr decoding for CB_LAYOUTRECALL.\n\nSigned-off-by: Alexandros Batsakis \u003cbatsakis@netapp.com\u003e\nSigned-off-by: Dean Hildebrand \u003cdhildeb@us.ibm.com\u003e\nSigned-off-by: Marc Eshel \u003ceshel@almaden.ibm.com\u003e\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: Fred Isaman \u003ciisaman@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "42acd021824578fa0eeb6eb58d457c23ec5dc9c0",
      "tree": "7affe8e1108373906eefcea00498df088b6dfccb",
      "parents": [
        "ece0de633c4d9106c39ea9f0db1638c42ead2541"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Thu Jan 06 02:04:34 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jan 06 14:46:25 2011 -0500"
      },
      "message": "NFS add session back channel draining\n\nCurrently session draining only drains the fore channel.\nThe back channel processing must also be drained.\n\nUse the back channel highest_slot_used to indicate that a callback is being\nprocessed by the callback thread.  Move the session complete to be per channel.\n\nWhen the session is draininig, wait for any current back channel processing\nto complete and stop all new back channel processing by returning NFS4ERR_DELAY\nto the back channel client.\n\nDrain the back channel, then the fore channel.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c36fca52f5e4594ffd0ff175b328966b0d393184",
      "tree": "6d771744cc49f0edc0d2b6b2f9fe919163002346",
      "parents": [
        "2c2618c6f29c41a0a966f14f05c8bf45fcabb750"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Thu Jan 06 02:04:32 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jan 06 14:46:24 2011 -0500"
      },
      "message": "NFS refactor nfs_find_client and reference client across callback processing\n\nFixes a bug where the nfs_client could be freed during callback processing.\nRefactor nfs_find_client to use minorversion specific means to locate the\ncorrect nfs_client structure.\n\nIn the NFS layer, V4.0 clients are found using the callback_ident field in the\nCB_COMPOUND header.  V4.1 clients are found using the sessionID in the\nCB_SEQUENCE operation which is also compared against the sessionID associated\nwith the back channel thread after a successful CREATE_SESSION.\n\nEach of these methods finds the one an only nfs_client associated\nwith the incoming callback request - so nfs_find_client_next is not needed.\n\nIn the RPC layer, the pg_authenticate call needs to find the nfs_client. For\nthe v4.0 callback service, the callback identifier has not been decoded so a\nsearch by address, version, and minorversion is used.  The sessionid for the\nsessions based callback service has (usually) not been set for the\npg_authenticate on a CB_NULL call which can be sent prior to the return\nof a CREATE_SESSION call, so the sessionid associated with the back channel\nthread is not used to find the client in pg_authenticate for CB_NULL calls.\n\nPass the referenced nfs_client to each CB_COMPOUND operation being proceesed\nvia the new cb_process_state structure. The reference is held across\ncb_compound processing.\n\nUse the new cb_process_state struct to move the NFS4ERR_RETRY_UNCACHED_REP\nprocessing from process_op into nfs4_callback_sequence where it belongs.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2c2618c6f29c41a0a966f14f05c8bf45fcabb750",
      "tree": "c247cfda9f847028e1d43cab1e69d2cd8a2146a4",
      "parents": [
        "f4eecd5da3422e82e88e36c33cbd2595eebcacb1"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Thu Jan 06 02:04:31 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jan 06 14:46:24 2011 -0500"
      },
      "message": "NFS associate sessionid with callback connection\n\nThe sessions based callback service is started prior to the CREATE_SESSION call\nso that it can handle CB_NULL requests which can be sent before the\nCREATE_SESSION call returns and the session ID is known.\n\nSet the callback sessionid after a sucessful CREATE_SESSION.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b9efa1b27e25b1286504973c0a6bf0f24106faa8",
      "tree": "e2cff0c8c7a33869123ea3e340d3b9ac3eefcef2",
      "parents": [
        "4911096f1a5df73c12c287a42ece4e7b5d9c19ec"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Wed Jan 20 16:06:27 2010 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Feb 10 08:30:59 2010 -0500"
      },
      "message": "nfs41: implement cb_recall_slot\n\nDrain the fore channel and reset the max_slots to the new value.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2597641deae82c9a95e255518da189ab557da0af",
      "tree": "0b2dc7c46f2a0398ecefd6bb63a657710cf921fa",
      "parents": [
        "0629e370dd5819efa5cf8d418a8e6729efe388ef"
      ],
      "author": {
        "name": "Alexandros Batsakis",
        "email": "batsakis@netapp.com",
        "time": "Sat Dec 05 13:48:55 2009 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Dec 05 13:48:55 2009 -0500"
      },
      "message": "nfs41: v2 fix cb_recall bug\n\nin NFSv4.1 the seqid part of a stateid in CB_RECALL must be 0\n\nSigned-off-by: Alexandros Batsakis \u003cbatsakis@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "31f0960778c78198957cf02cc970d92b72b929e4",
      "tree": "b5d061437c4a952e0fe78006a2ad9186c2e6ecc9",
      "parents": [
        "c79571a508801e055a0be583d6dc70bddad7bb64"
      ],
      "author": {
        "name": "Alexandros Batsakis",
        "email": "batsakis@netapp.com",
        "time": "Sat Dec 05 13:27:02 2009 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Dec 05 13:27:02 2009 -0500"
      },
      "message": "nfs41: V2 initial support for CB_RECALL_ANY\n\nFor now the clients returns _all_ the delegations of the specificed type\nit holds\n\nSigned-off-by: Alexandros Batsakis \u003cbatsakis@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "65fc64e547c794764a441e16e95bb76c0e256bd7",
      "tree": "fef3f27b7f8559026bd9dcb2d3c02dd4816fdb43",
      "parents": [
        "dd2b63d049480979016b959abc2d141cdddb1389"
      ],
      "author": {
        "name": "Ricardo Labiaga",
        "email": "Ricardo.Labiaga@netapp.com",
        "time": "Wed Apr 01 09:23:30 2009 -0400"
      },
      "committer": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Jun 17 14:11:40 2009 -0700"
      },
      "message": "nfs41: Backchannel: update cb_sequence args and results\n\nChange the type of cs_addr and csr_status to \u0027struct sockaddr\u0027 and\n\u0027__be32\u0027 since the cb_sequence processing function will use existing\nfunctionality that expects these types.\n\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n"
    },
    {
      "commit": "d49433e1e3bb144a5752ce2a8ba1139dc519df1a",
      "tree": "65ec427fcab5fffedff5f5dced68c9424d2e204e",
      "parents": [
        "2d9b9ec344b19b7b65c732b7000114df57684140"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Apr 01 09:23:25 2009 -0400"
      },
      "committer": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Jun 17 14:11:38 2009 -0700"
      },
      "message": "nfs41: cb_sequence proc implementation\n\nCurrently, just free up any referring calls information.\n\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfs41: fix csr_{,target}highestslotid]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n"
    },
    {
      "commit": "2d9b9ec344b19b7b65c732b7000114df57684140",
      "tree": "1d31a4ab02b1e783b85064e2942151bef1033d2d",
      "parents": [
        "34bc47c941a074f91c2455b4b08503d02c74b878"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Apr 01 09:23:24 2009 -0400"
      },
      "committer": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Jun 17 14:11:37 2009 -0700"
      },
      "message": "nfs41: cb_sequence protocol level data structures\n\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n"
    },
    {
      "commit": "34bc47c941a074f91c2455b4b08503d02c74b878",
      "tree": "0e565b6a999080686e7e5c3536cb9f4ac86f1e9a",
      "parents": [
        "45377b94edea18f53dd3ba4d46d94de4bb7c00b5"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Apr 01 09:23:22 2009 -0400"
      },
      "committer": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Jun 17 14:11:37 2009 -0700"
      },
      "message": "nfs41: consider minorversion in callback_xdr:process_op\n\nNote that this patch changes the nfsv4.0 behavior also when\nCONFIG_NFS_V4_1 is not defined where NFS4ERR_MINOR_VERS_MISMATCH\nwill be returned if the client received a CB_COMPOUND\nwith minorversion !\u003d 0.  Previously, it would have\nreturned NFS4ERR_OP_ILLEGAL for CB_SEQUENCE.\n(or if the server is broken and sent OP_CB_GETATTR or OP_CB_RECALL\nwith minorversion!\u003d0, they would have been processed normally.\n\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfs41: refactor op preprocessing out of process_op]\nSee http://linux-nfs.org/pipermail/pnfs/2009-June/007845.html\n[nfs41: define CB_NOTIFY_DEVICEID as not supported]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n"
    },
    {
      "commit": "45377b94edea18f53dd3ba4d46d94de4bb7c00b5",
      "tree": "b76829b222a3aaadddfc804ff3a5749d35e42f78",
      "parents": [
        "48a9e2d2289ed4b5053b3986d99709e9b07a0923"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Apr 01 09:23:21 2009 -0400"
      },
      "committer": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Jun 17 14:11:36 2009 -0700"
      },
      "message": "nfs41: callback numbers definitions\n\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n"
    },
    {
      "commit": "48a9e2d2289ed4b5053b3986d99709e9b07a0923",
      "tree": "db397b9d26c69eefadef9e53c27364624743cef4",
      "parents": [
        "b8f2ef84b079ceb22b42d6d353609db7eb8efa93"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Apr 01 09:23:20 2009 -0400"
      },
      "committer": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Jun 17 14:11:35 2009 -0700"
      },
      "message": "nfs41: decode minorversion 1 cb_compound header\n\ndecode cb_compound header conforming to\nhttp://tools.ietf.org/html/draft-ietf-nfsv4-minorversion1-26\n\nGet rid of cb_compound_hdr_arg.callback_ident\n\ncallback_ident is not used anywhere so we shouldn\u0027t waste any memory to\nstore it.\n\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfs41: no need to break read_buf in decode_compound_hdr_arg]\nSee http://linux-nfs.org/pipermail/pnfs/2009-June/007844.html\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n"
    },
    {
      "commit": "b8f2ef84b079ceb22b42d6d353609db7eb8efa93",
      "tree": "4291e1cb31228344163c66d33cc59246d3b65cff",
      "parents": [
        "5a0ffe544c54f62be99751e369f4d0f44bd5ee19"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Apr 01 09:23:19 2009 -0400"
      },
      "committer": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Jun 17 14:11:35 2009 -0700"
      },
      "message": "nfs41: store minorversion in cb_compound_hdr_arg\n\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n"
    },
    {
      "commit": "e82dc22dac6525a2f365a1d53c0483252d4aa38e",
      "tree": "1a347b34c955db77017a5df533fc1798f164e768",
      "parents": [
        "8f975242352e92898dc641ebff0d24808f39848a"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Wed Apr 01 09:23:14 2009 -0400"
      },
      "committer": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Jun 17 14:11:32 2009 -0700"
      },
      "message": "nfs41: Allow NFSv4 and NFSv4.1 callback services to coexist\n\nTracks the nfs_callback_info for both versions, enabling the callback\nservice for v4 and v4.1 to run concurrently and be stopped independently\nof each other.\n\nSigned-off-by: Ricardo Labiaga \u003cricardo.labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n"
    },
    {
      "commit": "a43cde94feded0f65fce36330614691c650ae8fe",
      "tree": "b3940556128434f292369b963ec4f3b819c7ff66",
      "parents": [
        "4d6bbb6233c9cf23822a2f66f8470c9f40854b77"
      ],
      "author": {
        "name": "Ricardo Labiaga",
        "email": "Ricardo.Labiaga@netapp.com",
        "time": "Wed Apr 01 09:23:08 2009 -0400"
      },
      "committer": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Jun 17 14:11:29 2009 -0700"
      },
      "message": "nfs41: Implement NFSv4.1 callback service process.\n\nnfs41_callback_up() initializes the necessary queues and creates the new\nnfs41_callback_svc thread.  This thread executes the callback service which\nwaits for requests to arrive on the svc_serv-\u003esv_cb_list.\n\nNFS41_BC_MIN_CALLBACKS is set to 1 because we expect callbacks to not\ncause substantial latency.\n\nThe actual processing of the callback will be implemented as a separate patch.\n\nThere is only one NFSv4.1 callback service.  The first caller of\nnfs4_callback_up() creates the service, subsequent callers increment a\nreference count on the service.  The service is destroyed when the last\ncaller invokes nfs_callback_down().\n\nThe transport needs to hold a reference to the callback service in order\nto invoke it during callback processing.  Currently this reference is only\nobtained when the service is first created.  This is incorrect, since\nsubsequent registrations for other transports will leave the xprt-\u003eserv\npointer uninitialized, leading to an oops when a callback arrives on\nthe \"unreferenced\" transport.\n\nThis patch fixes the problem by ensuring that a reference to the service\nis saved in xprt-\u003eserv, either because the service is created by this\ninvocation to nfs4_callback_up() or by a prior invocation.\n\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfs41: Add a reference to svc_serv during callback service bring up]\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[Type check arguments of nfs_callback_up]\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfs41: save svc_serv in nfs_callback_info]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[Removal of ugly #ifdefs]\n[nfs41: Update to removal of ugly #ifdefs]\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n"
    },
    {
      "commit": "7146851376861fe55c7a48ac8fc1354a5fff6cd0",
      "tree": "44c9a7427a3f1cea41c15a07d2aa63bbdeaf8936",
      "parents": [
        "9bdaa86d2a4cbf9a71de3048c0c0a874e7ebc8ad"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Apr 01 09:22:56 2009 -0400"
      },
      "committer": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Jun 17 13:06:01 2009 -0700"
      },
      "message": "nfs41: minorversion support for nfs4_{init,destroy}_callback\n\nmove nfs4_init_callback into nfs4_init_client_minor_version\nand nfs4_destroy_callback into nfs4_clear_client_minor_version\n\nas these need to happen also when auto-negotiating the minorversion\nonce the callback service for nfs41 becomes different than for nfs4.0\n\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfs41: Fix checkpatch warning]\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[Type check arguments of nfs_callback_up]\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfs41: Backchannel: Remove FIXME comment]\nSigned-off-by: Ricardo Labiaga \u003cRicardo.Labiaga@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n"
    },
    {
      "commit": "f738f5170367b367e38b2d75a413e7b3c52d46a5",
      "tree": "3552d487e54e8c555e4f7083194d46b6eb95fc66",
      "parents": [
        "eb16e907781a9da7f272a3e8284c26bc4e4aeb9d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Mar 18 20:48:06 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Mar 28 16:02:43 2009 -0400"
      },
      "message": "NFS: Start PF_INET6 callback listener only if IPv6 support is available\n\nApparently a lot of people need to disable IPv6 completely on their\ndistributor-built systems, which have CONFIG_IPV6_MODULE enabled at\nbuild time.\n\nThey do this by blacklisting the ipv6.ko module.  This causes the\ncreation of the NFSv4 callback service listener to fail if\nCONFIG_IPV6_MODULE is set, but the module cannot be loaded.\n\nNow that the kernel\u0027s PF_INET6 RPC listeners are completely separate\nfrom PF_INET listeners, we can always start PF_INET.  Then the NFS\nclient can try to start a PF_INET6 listener, but it isn\u0027t required\nto be available.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c1d35866566bc2b270a82445271fcce1e391c4b9",
      "tree": "598fd6c4f2ab29bb9ecd005c54bae53344392114",
      "parents": [
        "671beed7e28d9d27eef256862f6c1783a1da147e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:58:29 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:55 2008 -0500"
      },
      "message": "NFS: Change cb_recallargs to pass \"struct sockaddr *\" instead of sockaddr_in\n\nChange the addr field in the cb_recallargs struct to a \"struct sockaddr *\"\nto support non-IPv4 addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "671beed7e28d9d27eef256862f6c1783a1da147e",
      "tree": "425a6db6d29d6823d0247a98094dfac2ff8eb821",
      "parents": [
        "6e4cffd7b2cf86022dcf9cceeb63f16ff852caa1"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Dec 10 14:58:22 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:54 2008 -0500"
      },
      "message": "NFS: Change cb_getattrargs to pass \"struct sockaddr *\" instead of sockaddr_in\n\nChange the addr field in the cb_getattrargs struct to a \"struct sockaddr *\"\nto support non-IPv4 addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "2e42c3e2aec6e24e58c4c601e1a33f0e9e36e314",
      "tree": "1397e0c0df117b06563417d4e1f19e2f443fc062",
      "parents": [
        "10afec9081fee7e48995fa396fba22c7de4b99d4"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon May 14 17:20:41 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon May 14 19:33:46 2007 -0400"
      },
      "message": "NFS: Fix more sparse warnings\n\n - fs/nfs/nfs4xdr.c:2499:42: warning: incorrect type in argument 2\n   (different signedness)\n - fs/nfs/nfs4xdr.c:2658:49: warning: incorrect type in argument 4\n   (different explicit signedness)\n - fs/nfs/nfs4xdr.c:2683:50: warning: incorrect type in argument 4\n   (different explicit signedness)\n - fs/nfs/nfs4xdr.c:3063:68: warning: incorrect type in argument 4\n   (different explicit signedness)\n - fs/nfs/nfs4xdr.c:3065:68: warning: incorrect type in argument 4\n   (different explicit signedness)\n\n - fs/nfs/callback_xdr.c:138:31: warning: incorrect type in argument 2\n   (different signedness)\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5704fdeb41c9fb282ae576516f221ea0b8f64b2b",
      "tree": "b4e3f71f95530659e1f25c51d7d002365ab2e554",
      "parents": [
        "e6f684f6443dd37384c63d2f27571350e0b5c8aa"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Oct 19 23:28:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 20 10:26:40 2006 -0700"
      },
      "message": "[PATCH] xdr annotations: fs/nfs/callback*\n\non-the-wire data is big-endian\n\n[mostly pulled from Alexey\u0027s patch]\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e6f684f6443dd37384c63d2f27571350e0b5c8aa",
      "tree": "28f36fabb0b54ba06de89901283e082f5aca8e77",
      "parents": [
        "0dbb4c6799cf8fa8c5ba1926153a30960117477d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Oct 19 23:28:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 20 10:26:40 2006 -0700"
      },
      "message": "[PATCH] fs/nfs/callback* passes error values big-endian\n\n[pulled from Alexey\u0027s patch]\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5ae1fbce142b67bf59e15fb1af96e88a96abde7b",
      "tree": "88e09770f11535b688f9539b5999f836c8b322ab",
      "parents": [
        "0a8ea4372b2868842986118ca90912f3382e6c5a"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 22 20:06:08 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:31 2006 -0400"
      },
      "message": "NFS: Fix NFS4 callback up/down prototypes\n\nMake the nfs_callback_up()/down() prototypes just do nothing if NFS4 is not\nenabled.  Also make the down function void type since we can\u0027t really do\nanything if it fails.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a72b44222d222749d54b3e370d825094352e389f",
      "tree": "d64815b696d207927a4154a2cbc649552708c6f2",
      "parents": [
        "a895b4a198dd06f8353328867e4f6cfd28b63081"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 03 09:55:41 2006 +0100"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jan 06 14:58:52 2006 -0500"
      },
      "message": "NFSv4: Allow user to set the port used by the NFSv4 callback channel\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
