)]}'
{
  "commit": "a6f23657d3072bde6844055bbc2290e497f33fbc",
  "tree": "bd96916615d04228cc9492ae198ed5012d5ee86a",
  "parents": [
    "30e0dc28bff9dc456cdfc2aae4aca78b8b1a1cec"
  ],
  "author": {
    "name": "Jens Axboe",
    "email": "jens.axboe@oracle.com",
    "time": "Fri Oct 24 12:52:42 2008 +0200"
  },
  "committer": {
    "name": "Jens Axboe",
    "email": "jens.axboe@oracle.com",
    "time": "Mon Dec 29 08:29:51 2008 +0100"
  },
  "message": "block: add one-hit cache for disk partition lookup\n\ndisk_map_sector_rcu() returns a partition from a sector offset,\nwhich we use for IO statistics on a per-partition basis. The\nlookup itself is an O(N) list lookup, where N is the number of\npartitions. This actually hurts performance quite a bit, even\non the lower end partitions. On higher numbered partitions,\nit can get pretty bad.\n\nSolve this by adding a one-hit cache for partition lookup.\nThis makes the lookup O(1) for the case where we do most IO to\none partition. Even for mixed partition workloads, amortized cost\nis pretty close to O(1) since the natural IO batching makes the\none-hit cache last for lots of IOs.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2f7feda61e35fc3cfd8dc74264300baeeaa56826",
      "old_mode": 33188,
      "old_path": "block/genhd.c",
      "new_id": "d84a7df1e2a094e663f7e1683bb941f1c3562e2d",
      "new_mode": 33188,
      "new_path": "block/genhd.c"
    },
    {
      "type": "modify",
      "old_id": "3df7742ce2469e4bdc3673ec904b77e9e4eab6f7",
      "old_mode": 33188,
      "old_path": "include/linux/genhd.h",
      "new_id": "16948eaecae3c3d4969cbbeb23d8106b0aeeb5da",
      "new_mode": 33188,
      "new_path": "include/linux/genhd.h"
    }
  ]
}
