)]}'
{
  "commit": "e608e79f1bf4b967afcf57777e63b5f0939b00e8",
  "tree": "d649b5714435b7d2d4edd5779fa22122d61ee0c5",
  "parents": [
    "1d9ddde94aed01c4618cf6f70883cc511c3b2b62"
  ],
  "author": {
    "name": "Andy Adamson",
    "email": "andros@netapp.com",
    "time": "Fri Dec 04 15:55:29 2009 -0500"
  },
  "committer": {
    "name": "Trond Myklebust",
    "email": "Trond.Myklebust@netapp.com",
    "time": "Fri Dec 04 15:55:29 2009 -0500"
  },
  "message": "nfs41: call free slot from nfs4_restart_rpc\n\nnfs41_sequence_free_slot can be called multiple times on SEQUENCE operation\nerrors.\nNo reason to inline nfs4_restart_rpc\n\nReported-by: Trond Myklebust \u003ctrond.myklebust@netapp.com\u003e\n\nnfs_writeback_done and nfs_readpage_retry call nfs4_restart_rpc outside the\nerror handler, and the slot is not freed prior to restarting in the rpc_prepare\nstate during session reset.\n\nFix this by moving the call to nfs41_sequence_free_slot from the error\npath of nfs41_sequence_done into nfs4_restart_rpc, and by removing the test\nfor NFS4CLNT_SESSION_SETUP.\nAlways free slot and goto the rpc prepare state on async errors.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ebcd3795389ee7fbd5c52640d36d32faa170bcac",
      "old_mode": 33188,
      "old_path": "fs/nfs/internal.h",
      "new_id": "a6f7b6cbfd09b9f6296f0a02d38c449481c35148",
      "new_mode": 33188,
      "new_path": "fs/nfs/internal.h"
    },
    {
      "type": "modify",
      "old_id": "a23110d1d2a99b1148507df9d4df53f1876867d0",
      "old_mode": 33188,
      "old_path": "fs/nfs/nfs4proc.c",
      "new_id": "6ef50aa785d599701b030aafc5b33b5fde65990a",
      "new_mode": 33188,
      "new_path": "fs/nfs/nfs4proc.c"
    },
    {
      "type": "modify",
      "old_id": "12c9e66d3f1d9739147573ecd00cbc703f9f70a8",
      "old_mode": 33188,
      "old_path": "fs/nfs/read.c",
      "new_id": "3e04fb9ea6444356e91273acb9abdaaecd87af31",
      "new_mode": 33188,
      "new_path": "fs/nfs/read.c"
    },
    {
      "type": "modify",
      "old_id": "1064c91ae810c3496f621729cbc754653be69a8e",
      "old_mode": 33188,
      "old_path": "fs/nfs/unlink.c",
      "new_id": "52f7bdb12c83700b35e28d030f203abae677826f",
      "new_mode": 33188,
      "new_path": "fs/nfs/unlink.c"
    },
    {
      "type": "modify",
      "old_id": "53eb26c16b50a06c0126f156a1ee6fddc1480413",
      "old_mode": 33188,
      "old_path": "fs/nfs/write.c",
      "new_id": "556668ff022483a2224611920bcf008c03f7dbde",
      "new_mode": 33188,
      "new_path": "fs/nfs/write.c"
    }
  ]
}
