)]}'
{
  "commit": "fce1456a19f5c08b688c29f00ef90fdfa074c79b",
  "tree": "789afb4efe2764cabbd65f7d7069acb538711e8b",
  "parents": [
    "596bbe53eb3abfe7326b2f5e8afd614265c319c8"
  ],
  "author": {
    "name": "Greg Banks",
    "email": "gnb@melbourne.sgi.com",
    "time": "Wed Oct 04 02:15:49 2006 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@g5.osdl.org",
    "time": "Wed Oct 04 07:55:16 2006 -0700"
  },
  "message": "[PATCH] knfsd: make nfsd readahead params cache SMP-friendly\n\nMake the nfsd read-ahead params cache more SMP-friendly by changing the single\nglobal list and lock into a fixed 16-bucket hashtable with per-bucket locks.\nThis reduces spinlock contention in nfsd_read() on read-heavy workloads on\nmultiprocessor servers.\n\nTesting was on a 4 CPU 4 NIC Altix using 4 IRIX clients each doing 1K\nstreaming reads at full line rate.  The server had 128 nfsd threads, which\nsizes the RA cache at 256 entries, of which only a handful were used.  Flat\nprofiling shows nfsd_read(), including the inlined nfsd_get_raparms(), taking\n10.4% of each CPU.  This patch drops the contribution from nfsd() to 1.71% for\neach CPU.\n\nSigned-off-by: Greg Banks \u003cgnb@melbourne.sgi.com\u003e\nSigned-off-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",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bfd36e587ec5568c5f3918c6a0ac0d3d5159039f",
      "old_mode": 33188,
      "old_path": "fs/nfsd/vfs.c",
      "new_id": "137565a136d705a3eda61c47296359c336bbcbad",
      "new_mode": 33188,
      "new_path": "fs/nfsd/vfs.c"
    }
  ]
}
