)]}'
{
  "commit": "c28cc36469554dc55540f059fbdc7fa22a2c31fc",
  "tree": "6b867456be48b8633a2d56a99e00bb3faf9dccc7",
  "parents": [
    "31e6b01f4183ff419a6d1f86177cbf4662347cec"
  ],
  "author": {
    "name": "Nick Piggin",
    "email": "npiggin@kernel.dk",
    "time": "Fri Jan 07 17:49:53 2011 +1100"
  },
  "committer": {
    "name": "Nick Piggin",
    "email": "npiggin@kernel.dk",
    "time": "Fri Jan 07 17:50:27 2011 +1100"
  },
  "message": "fs: fs_struct use seqlock\n\nUse a seqlock in the fs_struct to enable us to take an atomic copy of the\ncomplete cwd and root paths. Use this in the RCU lookup path to avoid a\nthread-shared spinlock in RCU lookup operations.\n\nMulti-threaded apps may now perform path lookups with scalability matching\nmulti-process apps. Operations such as stat(2) become very scalable for\nmulti-threaded workload.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@kernel.dk\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ed45a9cf5f3de46ae08e90d581a500bed9eb4dbf",
      "old_mode": 33188,
      "old_path": "fs/fs_struct.c",
      "new_id": "60b8531f41c52c73be80f26931eb62feb6bc812f",
      "new_mode": 33188,
      "new_path": "fs/fs_struct.c"
    },
    {
      "type": "modify",
      "old_id": "8d3f15b3a54167171bd0e2ec06103c60d5099f45",
      "old_mode": 33188,
      "old_path": "fs/namei.c",
      "new_id": "c731b50a618469cb70de76f98f8661ea15110ca3",
      "new_mode": 33188,
      "new_path": "fs/namei.c"
    },
    {
      "type": "modify",
      "old_id": "a42b5bf02f8bcfec3ea20ecef765df3f4d690250",
      "old_mode": 33188,
      "old_path": "include/linux/fs_struct.h",
      "new_id": "003dc0fd73473a8e03cb23a163d7ae2ee547fa93",
      "new_mode": 33188,
      "new_path": "include/linux/fs_struct.h"
    }
  ]
}
