)]}'
{
  "commit": "c88d5910890ad35af283344417891344604f0438",
  "tree": "4e2025d569c3e03a7ec5163f0a9bc159114ee14e",
  "parents": [
    "e9c8431185d6c406887190519f6dbdd112641686"
  ],
  "author": {
    "name": "Peter Zijlstra",
    "email": "a.p.zijlstra@chello.nl",
    "time": "Thu Sep 10 13:50:02 2009 +0200"
  },
  "committer": {
    "name": "Ingo Molnar",
    "email": "mingo@elte.hu",
    "time": "Tue Sep 15 16:01:05 2009 +0200"
  },
  "message": "sched: Merge select_task_rq_fair() and sched_balance_self()\n\nThe problem with wake_idle() is that is doesn\u0027t respect things like\ncpu_power, which means it doesn\u0027t deal well with SMT nor the recent\nRT interaction.\n\nTo cure this, it needs to do what sched_balance_self() does, which\nleads to the possibility of merging select_task_rq_fair() and\nsched_balance_self().\n\nModify sched_balance_self() to:\n\n  - update_shares() when walking up the domain tree,\n    (it only called it for the top domain, but it should\n     have done this anyway), which allows us to remove\n    this ugly bit from try_to_wake_up().\n\n  - do wake_affine() on the smallest domain that contains\n    both this (the waking) and the prev (the wakee) cpu for\n    WAKE invocations.\n\nThen use the top-down balance steps it had to replace wake_idle().\n\nThis leads to the dissapearance of SD_WAKE_BALANCE and\nSD_WAKE_IDLE_FAR, with SD_WAKE_IDLE replaced with SD_BALANCE_WAKE.\n\nSD_WAKE_AFFINE needs SD_BALANCE_WAKE to be effective.\n\nTouch all topology bits to replace the old with new SD flags --\nplatforms might need re-tuning, enabling SD_BALANCE_WAKE\nconditionally on a NUMA distance seems like a good additional\nfeature, magny-core and small nehalem systems would want this\nenabled, systems with slow interconnects would not.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7b4c8c70b2d18f7949372899ab056f41d913ed6b",
      "old_mode": 33188,
      "old_path": "arch/ia64/include/asm/topology.h",
      "new_id": "cf6053b226c38383de57774346fdb1ed4b4d8e39",
      "new_mode": 33188,
      "new_path": "arch/ia64/include/asm/topology.h"
    },
    {
      "type": "modify",
      "old_id": "07547231e078dd3ecd35a988b3cd73bfc30c3683",
      "old_mode": 33188,
      "old_path": "arch/mips/include/asm/mach-ip27/topology.h",
      "new_id": "d8332398f5be1eccd46936f00f685bc9403d90ca",
      "new_mode": 33188,
      "new_path": "arch/mips/include/asm/mach-ip27/topology.h"
    },
    {
      "type": "modify",
      "old_id": "054a16d68082a852c460d96436e9f3b7bb3ce41c",
      "old_mode": 33188,
      "old_path": "arch/powerpc/include/asm/topology.h",
      "new_id": "c6343313ff592f7d8ccd9ffd8913f3a2e0dcc771",
      "new_mode": 33188,
      "new_path": "arch/powerpc/include/asm/topology.h"
    },
    {
      "type": "modify",
      "old_id": "b69ee850906d037e5bf24be4c19766729ede6825",
      "old_mode": 33188,
      "old_path": "arch/sh/include/asm/topology.h",
      "new_id": "dc1531e2f25f52cfe235038a0579b094d80c858d",
      "new_mode": 33188,
      "new_path": "arch/sh/include/asm/topology.h"
    },
    {
      "type": "modify",
      "old_id": "e5ea8d332421d1ad1441541c8e013d62d099e444",
      "old_mode": 33188,
      "old_path": "arch/sparc/include/asm/topology_64.h",
      "new_id": "1d091abd2d132d4ddf1208d81f52c9742f046cf9",
      "new_mode": 33188,
      "new_path": "arch/sparc/include/asm/topology_64.h"
    },
    {
      "type": "modify",
      "old_id": "26d06e052a181073851197c2110ce8d61916d5be",
      "old_mode": 33188,
      "old_path": "arch/x86/include/asm/topology.h",
      "new_id": "966d58dc62742ca1802c5f6b582ff9dcec65a214",
      "new_mode": 33188,
      "new_path": "arch/x86/include/asm/topology.h"
    },
    {
      "type": "modify",
      "old_id": "3b0ca66bd6cee1c577d0ee9751797ac47517afdc",
      "old_mode": 33188,
      "old_path": "include/linux/sched.h",
      "new_id": "c30bf3d516d11fa180579215402b392331e3fbf0",
      "new_mode": 33188,
      "new_path": "include/linux/sched.h"
    },
    {
      "type": "modify",
      "old_id": "85e8cf7d393c6e11bf509d73ca9b24bbfeef23bf",
      "old_mode": 33188,
      "old_path": "include/linux/topology.h",
      "new_id": "6a8cd15555bb2ef3154dcab175d743e4ad08ad1b",
      "new_mode": 33188,
      "new_path": "include/linux/topology.h"
    },
    {
      "type": "modify",
      "old_id": "fc6fda881d2e9ec9039415d331df109f2d70f014",
      "old_mode": 33188,
      "old_path": "kernel/sched.c",
      "new_id": "6c819f338b11a6aeadf1a67e5edaf40dc05c08cf",
      "new_mode": 33188,
      "new_path": "kernel/sched.c"
    },
    {
      "type": "modify",
      "old_id": "f2eb5b9347152c76224c112b801b61c33d225bf1",
      "old_mode": 33188,
      "old_path": "kernel/sched_fair.c",
      "new_id": "09d19f77eb3a849f421a05127421a7778424b53d",
      "new_mode": 33188,
      "new_path": "kernel/sched_fair.c"
    }
  ]
}
