)]}'
{
  "commit": "f16b34aa13e8c55085f346bcf07afb2312c56c0a",
  "tree": "4fba40d99a5907694a1a1de8023f1431204f4f98",
  "parents": [
    "cc295d0e95063809af31971e4aec1d809247f13b"
  ],
  "author": {
    "name": "Peter Zijlstra",
    "email": "a.p.zijlstra@chello.nl",
    "time": "Sat Dec 22 14:03:29 2007 -0800"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@woody.linux-foundation.org",
    "time": "Sun Dec 23 12:54:37 2007 -0800"
  },
  "message": "lib: proportion: fix underflow in prop_norm_percpu()\n\nZhe Jiang noticed that its possible to underflow pl-\u003eevents in\nprop_norm_percpu() when the value returned by percpu_counter_read() is less\nthan the error on that read and the period delay \u003e 1.  In that case half might\nnot trigger the batch increment and the value will be identical on the next\niteration, causing the same half to be subtracted again and again.\n\nFix this by rewriting the division as a single subtraction instead of a\nsubtraction loop and using percpu_counter_sum() when the value returned by\npercpu_counter_read() is smaller than the error.\n\nThe latter is still needed if we want pl-\u003eevents to shrink properly in the\nerror region.\n\n[akpm@linux-foundation.org: cleanups]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nReviewed-by: Jiang Zhe \u003czhe.jiang@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "332d8c58184d4964406dfe71179b877fd9f927f6",
      "old_mode": 33188,
      "old_path": "lib/proportions.c",
      "new_id": "9508d9a7af3ef9ba482925a9d1cdc34ef2fddd0e",
      "new_mode": 33188,
      "new_path": "lib/proportions.c"
    }
  ]
}
