)]}'
{
  "commit": "db670dac49b5423b39b5e523d28fe32045d71b10",
  "tree": "194220c83cb097504ddf7bcccc7ce93d6a23eac3",
  "parents": [
    "db44fc017d5989302713ab4e7f9e922b648f4b59"
  ],
  "author": {
    "name": "Stephan Baerwolf",
    "email": "stephan.baerwolf@tu-ilmenau.de",
    "time": "Wed May 11 18:03:29 2011 +0200"
  },
  "committer": {
    "name": "Ingo Molnar",
    "email": "mingo@elte.hu",
    "time": "Mon May 16 11:01:18 2011 +0200"
  },
  "message": "sched: Fix and optimise calculation of the weight-inverse\n\nIf the inverse loadweight should be zero, function \"calc_delta_mine\"\ncalculates the inverse of \"lw-\u003eweight\" (in 32bit integer ops).\n\nThis calculation is actually a little bit impure (because it is\ninverting something around \"lw-weight\"+1), especially when\n\"lw-\u003eweight\" becomes smaller.\n\nThe correct inverse would be 1/lw-\u003eweight multiplied by\n\"WMULT_CONST\" for fixcomma-scaling it into integers.\n(So WMULT_CONST/lw-\u003eweight ...)\n\nThe old, impure algorithm took two divisions for inverting lw-\u003eweight,\nthe new, more exact one only takes one and an additional unlikely-if.\n\nSigned-off-by: Stephan Baerwolf \u003cstephan.baerwolf@tu-ilmenau.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/n/tip-0pz0wnyalr4tk4ln11xwumdx@git.kernel.org\n[ This could explain some aritmetical issues for small shares but nothing\n  concrete has been reported yet so we are not confident enough to queue\n  this up in sched/urgent and for -stable backport. But if anyone finds\n  this commit and sees it to fix some badness then we can certainly\n  change our mind! ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "70bec4f1edbb9213f943e4434a26c5a3fbe2b153",
      "old_mode": 33188,
      "old_path": "kernel/sched.c",
      "new_id": "c62acf45d3b9c0c4954090454de59bd08e2eb180",
      "new_mode": 33188,
      "new_path": "kernel/sched.c"
    }
  ]
}
