)]}'
{
  "commit": "ec4e0e2fe018992d980910db901637c814575914",
  "tree": "58f5df8581387afc90774ee2d1923302ae209b3c",
  "parents": [
    "3ac3ba0b396fd99550e08034b0e4c27fdf39c252"
  ],
  "author": {
    "name": "Ken Chen",
    "email": "kenchen@google.com",
    "time": "Tue Nov 18 22:41:57 2008 -0800"
  },
  "committer": {
    "name": "Ingo Molnar",
    "email": "mingo@elte.hu",
    "time": "Wed Nov 19 18:39:37 2008 +0100"
  },
  "message": "sched: fix inconsistency when redistribute per-cpu tg-\u003ecfs_rq shares\n\nImpact: make load-balancing more consistent\n\nIn the update_shares() path leading to tg_shares_up(), the calculation of\nper-cpu cfs_rq shares is rather erratic even under moderate task wake up\nrate.  The problem is that the per-cpu tg-\u003ecfs_rq load weight used in the\nsd_rq_weight aggregation and actual redistribution of the cfs_rq-\u003eshares\nare collected at different time.  Under moderate system load, we\u0027ve seen\nquite a bit of variation on the cfs_rq-\u003eshares and ultimately wildly\naffects sched_entity\u0027s load weight.\n\nThis patch caches the result of initial per-cpu load weight when doing the\nsum calculation, and then pass it down to update_group_shares_cpu() for\nredistributing per-cpu cfs_rq shares.  This allows consistent total cfs_rq\nshares across all CPUs. It also simplifies the rounding and zero load\nweight check.\n\nSigned-off-by: Ken Chen \u003ckenchen@google.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a4c156d9a4a56d65d0e081a95dc213ffd76060ec",
      "old_mode": 33188,
      "old_path": "kernel/sched.c",
      "new_id": "93bfb086e60fe66f37bdf1a4b87c040b7c740be1",
      "new_mode": 33188,
      "new_path": "kernel/sched.c"
    }
  ]
}
