)]}'
{
  "commit": "0437e109e1841607f2988891eaa36c531c6aa6ac",
  "tree": "e9d8f170786f7e33d4c5829cb008cf38d42a2014",
  "parents": [
    "0e6aca43e08a62a48d6770e9a159dbec167bf4c6"
  ],
  "author": {
    "name": "Ingo Molnar",
    "email": "mingo@elte.hu",
    "time": "Mon Jul 09 18:51:57 2007 +0200"
  },
  "committer": {
    "name": "Ingo Molnar",
    "email": "mingo@elte.hu",
    "time": "Mon Jul 09 18:51:57 2007 +0200"
  },
  "message": "sched: zap the migration init / cache-hot balancing code\n\nthe SMP load-balancer uses the boot-time migration-cost estimation\ncode to attempt to improve the quality of balancing. The reason for\nthis code is that the discrete priority queues do not preserve\nthe order of scheduling accurately, so the load-balancer skips\ntasks that were running on a CPU \u0027recently\u0027.\n\nthis code is fundamental fragile: the boot-time migration cost detector\ndoesnt really work on systems that had large L3 caches, it caused boot\ndelays on large systems and the whole cache-hot concept made the\nbalancing code pretty undeterministic as well.\n\n(and hey, i wrote most of it, so i can say it out loud that it sucks ;-)\n\nunder CFS the same purpose of cache affinity can be achieved without\nany special cache-hot special-case: tasks are sorted in the \u0027timeline\u0027\ntree and the SMP balancer picks tasks from the left side of the\ntree, thus the most cache-cold task is balanced automatically.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "af50f9bbe68edda370017ef127d842d3d1ec97b4",
      "old_mode": 33188,
      "old_path": "Documentation/kernel-parameters.txt",
      "new_id": "4d880b3d1f35548083613a18d695d68029382c81",
      "new_mode": 33188,
      "new_path": "Documentation/kernel-parameters.txt"
    },
    {
      "type": "modify",
      "old_id": "88baed1e7e83a1469ecc33f1ed5e6e1c17a00af4",
      "old_mode": 33188,
      "old_path": "arch/i386/kernel/smpboot.c",
      "new_id": "0b2954534b8e71f3216f23a7ae8c933e0bc48d7c",
      "new_mode": 33188,
      "new_path": "arch/i386/kernel/smpboot.c"
    },
    {
      "type": "modify",
      "old_id": "eaa6a24bc0b6e61b284d38aef67fa2db6e31f1c2",
      "old_mode": 33188,
      "old_path": "arch/ia64/kernel/setup.c",
      "new_id": "188fb73c68456e3e2f1bd70e8f947b1b0754f869",
      "new_mode": 33188,
      "new_path": "arch/ia64/kernel/setup.c"
    },
    {
      "type": "modify",
      "old_id": "67edfa7ed93a643d4a59af04d9a6c98a8d1ca12f",
      "old_mode": 33188,
      "old_path": "arch/mips/kernel/smp.c",
      "new_id": "a1b017f2dbb3a834706d44d2ff42e34bf65b8a9e",
      "new_mode": 33188,
      "new_path": "arch/mips/kernel/smp.c"
    },
    {
      "type": "modify",
      "old_id": "4d9ad59031bb244f3df459338f9e5b9d6c9a6235",
      "old_mode": 33188,
      "old_path": "arch/sparc/kernel/smp.c",
      "new_id": "4fea3ac7bff08d1b13cd4e54f2d2be6b08198d1a",
      "new_mode": 33188,
      "new_path": "arch/sparc/kernel/smp.c"
    },
    {
      "type": "modify",
      "old_id": "4dcd7d0b60f2d8abb8e8ad7630df207cfc39ad21",
      "old_mode": 33188,
      "old_path": "arch/sparc64/kernel/smp.c",
      "new_id": "40e40f968d61abd9ef8192aeb1a6f2a9b318c7e7",
      "new_mode": 33188,
      "new_path": "arch/sparc64/kernel/smp.c"
    },
    {
      "type": "modify",
      "old_id": "7e74262f98e1ff577931a2bd4eab9d99299c1ea1",
      "old_mode": 33188,
      "old_path": "include/linux/sched.h",
      "new_id": "8764cda0feca036356213e4ecb36e3c449805374",
      "new_mode": 33188,
      "new_path": "include/linux/sched.h"
    },
    {
      "type": "modify",
      "old_id": "ac054d9a0719fbe8ace297f6ff251c3253efa5d9",
      "old_mode": 33188,
      "old_path": "kernel/sched.c",
      "new_id": "46b23f0fee24fb73db6d7c6e0397f6e77049822b",
      "new_mode": 33188,
      "new_path": "kernel/sched.c"
    }
  ]
}
