)]}'
{
  "commit": "95e861db3eaba7bc99f8605db70103ec3d078203",
  "tree": "70f86b1acf1c8b1fb49f8bd11aaf5d81c39d0e97",
  "parents": [
    "d6c7ac081bf6cafcf780b919ee97978f1d01a0d7"
  ],
  "author": {
    "name": "Eric Dumazet",
    "email": "dada1@cosmosbay.com",
    "time": "Sun Nov 13 16:06:24 2005 -0800"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@g5.osdl.org",
    "time": "Sun Nov 13 18:14:10 2005 -0800"
  },
  "message": "[PATCH] reorder struct files_struct\n\nThe file_lock spinlock sits close to mostly read fields of \u0027struct\nfiles_struct\u0027\n\nIn SMP (and NUMA) environments, each time a thread wants to open or close\na file, it has to acquire the spinlock, thus invalidating the cache line\ncontaining this spinlock on other CPUS.  So other threads doing\nread()/write()/...  calls that use RCU to access the file table are going\nto ask further memory (possibly NUMA) transactions to read again this\nmemory line.\n\nMove the spinlock to another cache line, so that concurrent threads can\nshare the cache line containing \u0027count\u0027 and \u0027fdt\u0027 fields.\n\nIt\u0027s worth up to 9% on a microbenchmark using a 4-thread 2-package x86\nmachine.  See\nhttp://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d112680448713342\u0026w\u003d2\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\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": "d3b1a15d5f21b378731bd2fca44edd2be5d3dc5d",
      "old_mode": 33188,
      "old_path": "include/linux/file.h",
      "new_id": "418b6101b59a02d8b9efb7501e3de51808a59f95",
      "new_mode": 33188,
      "new_path": "include/linux/file.h"
    }
  ]
}
