)]}'
{
  "log": [
    {
      "commit": "cd80917e4ff465ea77106f8e4fb631eedc4cf426",
      "tree": "0b12aed9293c8b0683e7f74d5d111f5d436fa017",
      "parents": [
        "93b75217df39e6d75889cc6f8050343286aff4a5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:34 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:44 2008 +0200"
      },
      "message": "sched: fix shares boost logic\n\nIn case the domain is empty, pretend there is a single task on each cpu, so\nthat together with the boost logic we end up giving 1/n shares to each\ncpu.\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "93b75217df39e6d75889cc6f8050343286aff4a5",
      "tree": "d3091afd2b88aa9732ff63b3a839bdec358aef7d",
      "parents": [
        "cb5ef42a03a13f95a9ea94e6cda4f7a47497871f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:33 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:44 2008 +0200"
      },
      "message": "sched: disable source/target_load bias\n\nThe bias given by source/target_load functions can be very large, disable\nit by default to get faster convergence.\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cb5ef42a03a13f95a9ea94e6cda4f7a47497871f",
      "tree": "4c94df72d2889ecce52bf74b141ae06d85d4708a",
      "parents": [
        "051c67640e771fd6ad1b676fc0c16c379b3c6f80"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:32 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:43 2008 +0200"
      },
      "message": "sched: optimize effective_load()\n\ns_i \u003d S * rw_i / \\Sum_j rw_j\n\n -\u003e \\Sum_j rw_j \u003d S * rw_i / s_i\n\n -\u003e s\u0027_i \u003d S * (rw_i + w) / (\\Sum_j rw_j + w)\n\ndelta s \u003d s\u0027 - s \u003d S * (rw + w) / ((S * rw / s) + w)\n        \u003d s * (S * (rw + w) / (S * rw + s * w) - 1)\n\n a \u003d S*(rw+w), b \u003d S*rw + s*w\n\ndelta s \u003d s * (a-b) / b\n\nIOW, trade one divide for two multiplies\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "051c67640e771fd6ad1b676fc0c16c379b3c6f80",
      "tree": "b56d9841d0ddb00a715489e83969051f7c4849e0",
      "parents": [
        "4be9daaa1b33701f011f4117f22dc1e45a3e6e34"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:31 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:42 2008 +0200"
      },
      "message": "sched: remove prio preference from balance decisions\n\nPriority looses much of its meaning in a hierarchical context. So don\u0027t\nuse it in balance decisions.\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4be9daaa1b33701f011f4117f22dc1e45a3e6e34",
      "tree": "8c823cf397055c4919cc5f2a6275f125b0580a6b",
      "parents": [
        "42a3ac7d5cee89849448b41b86faeb86f98e92f6"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:30 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:42 2008 +0200"
      },
      "message": "sched: fix task_h_load()\n\nCurrently task_h_load() computes the load of a task and uses that to either\nsubtract it from the total, or add to it.\n\nHowever, removing or adding a task need not have any effect on the total load\nat all. Imagine adding a task to a group that is local to one cpu - in that\ncase the total load of that cpu is unaffected.\n\nSo properly compute addition/removal:\n\n s_i \u003d S * rw_i / \\Sum_j rw_j\n s\u0027_i \u003d S * (rw_i + wl) / (\\Sum_j rw_j + wg)\n\nthen s\u0027_i - s_i gives the change in load.\n\nWhere s_i is the shares for cpu i, S the group weight, rw_i the runqueue weight\nfor that cpu, wl the weight we add (subtract) and wg the weight contribution to\nthe runqueue.\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "42a3ac7d5cee89849448b41b86faeb86f98e92f6",
      "tree": "a601a02fd090b6da93b81ef9857133b8de7b5079",
      "parents": [
        "408ed066b11cf9ee4536573b4269ee3613bd735e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:29 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:41 2008 +0200"
      },
      "message": "sched: fix load scaling in group balancing\n\ndoing the load balance will change cfs_rq-\u003eload.weight (that\u0027s the whole point)\nbut since that\u0027s part of the scale factor, we\u0027ll scale back with a different\namount.\n\nWeight getting smaller would result in an inflated moved_load which causes\nit to stop balancing too soon.\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "408ed066b11cf9ee4536573b4269ee3613bd735e",
      "tree": "3b1367dafc96835c2fcbf289a7af808eb2efa605",
      "parents": [
        "bb3469ac9b50f14ad6eba129ca0ad4fd033097a0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:28 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:40 2008 +0200"
      },
      "message": "sched: hierarchical load vs find_busiest_group\n\nfind_busiest_group() has some assumptions about task weight being in the\nNICE_0_LOAD range. Hierarchical task groups break this assumption - fix this\nby replacing it with the average task weight, which will adapt the situation.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bb3469ac9b50f14ad6eba129ca0ad4fd033097a0",
      "tree": "e5c6c6563778593f53fca642675b4c3ba5603ed2",
      "parents": [
        "a8a51d5e59561aa5b4d66e19eca819b537783e8f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:27 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:40 2008 +0200"
      },
      "message": "sched: hierarchical load vs affine wakeups\n\nWith hierarchical grouping we can\u0027t just compare task weight to rq weight - we\nneed to scale the weight appropriately.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a8a51d5e59561aa5b4d66e19eca819b537783e8f",
      "tree": "b400bc77244a742e737bb9deb94a6911a769e082",
      "parents": [
        "039a1c41b3a489e34593ea1e1687f6fdad6b13ab"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:26 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:39 2008 +0200"
      },
      "message": "sched: persistent average load per task\n\nRemove the fall-back to SCHED_LOAD_SCALE by remembering the previous value of\ncpu_avg_load_per_task() - this is useful because of the hierarchical group\nmodel in which task weight can be much smaller.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "039a1c41b3a489e34593ea1e1687f6fdad6b13ab",
      "tree": "162e9b0b7a2472be292089bf4f84623bdc6f34ab",
      "parents": [
        "3e5459b4bea3ca2618cc02d56d12639f2cba531d"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:25 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:38 2008 +0200"
      },
      "message": "sched: fix sched_balance_self() smp group balancing\n\nFinding the least idle cpu is more accurate when done with updated shares.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3e5459b4bea3ca2618cc02d56d12639f2cba531d",
      "tree": "bf931bd0cb3f653a62045c99beaed837242dd773",
      "parents": [
        "c8cba857b4997d5b00451d01474638f6a153f713"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:24 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:37 2008 +0200"
      },
      "message": "sched: fix newidle smp group balancing\n\nRe-compute the shares on newidle - so we can make a decision based on\nrecent data.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c8cba857b4997d5b00451d01474638f6a153f713",
      "tree": "a784dce37d72ae20a0efb81b8e498b504a207650",
      "parents": [
        "a25b5aca8740ea99d5e18dfc71235a52b685dcf7"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:23 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:36 2008 +0200"
      },
      "message": "sched: simplify the group load balancer\n\nWhile thinking about the previous patch - I realized that using per domain\naggregate load values in load_balance_fair() is wrong. We should use the\nload value for that CPU.\n\nBy not needing per domain hierarchical load values we don\u0027t need to store\nper domain aggregate shares, which greatly simplifies all the math.\n\nIt basically falls apart in two separate computations:\n - per domain update of the shares\n - per CPU update of the hierarchical load\n\nAlso get rid of the move_group_shares() stuff - just re-compute the shares\nagain after a successful load balance.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a25b5aca8740ea99d5e18dfc71235a52b685dcf7",
      "tree": "834bcfd9a51f840cc10693348ecffc99ce69550d",
      "parents": [
        "d3f40dbab954d83383b6a516582d5c09cc216dcc"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:22 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:35 2008 +0200"
      },
      "message": "sched: no need to aggregate task_weight\n\nWe only need to know the task_weight of the busiest rq - nothing to do\nif there are no tasks there.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d3f40dbab954d83383b6a516582d5c09cc216dcc",
      "tree": "db50344cb0dfa11a214f7758c4254b9ffeb9f118",
      "parents": [
        "53fecd8ae1900fb571086f54f664051004665b55"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:21 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:34 2008 +0200"
      },
      "message": "sched: dont micro manage share losses\n\nWe used to try and contain the loss of \u0027shares\u0027 by playing arithmetic\ngames. Replace that by noticing that at the top sched_domain we\u0027ll\nalways have the full weight in shares to distribute.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "53fecd8ae1900fb571086f54f664051004665b55",
      "tree": "2dfd5aba9d974f0f114e96cbdc2aef82a32078a9",
      "parents": [
        "4d8d595dfa69e1c807bf928f364668a7f30da5dc"
      ],
      "author": {
        "name": "Srivatsa Vaddagiri",
        "email": "vatsa@linux.vnet.ibm.com",
        "time": "Fri Jun 27 13:41:20 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:33 2008 +0200"
      },
      "message": "sched: kill task_group balancing\n\nThe idea was to balance groups until we\u0027ve reached the global goal, however\nVatsa rightly pointed out that we might never reach that goal this way -\nhence take out this logic.\n\n[ the initial rationale for this \u0027feature\u0027 was to promote max concurrency\n  within a group - it does not however affect fairness ]\n\nReported-by: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4d8d595dfa69e1c807bf928f364668a7f30da5dc",
      "tree": "af61c1d6d53aea66fac272e7dad67ae93a832a66",
      "parents": [
        "b6a86c746f5b708012809958462234d19e9c8177"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:19 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:33 2008 +0200"
      },
      "message": "sched: update aggregate when holding the RQs\n\nIt was observed that in __update_group_shares_cpu()\n\n  rq_weight \u003e aggregate()-\u003erq_weight\n\nThis is caused by forks/wakeups in between the initial aggregate pass and\nlocking of the RQs for load balance. To avoid this situation partially re-do\nthe aggregation once we have the RQs locked (which avoids new tasks from\nappearing).\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b6a86c746f5b708012809958462234d19e9c8177",
      "tree": "38654c70da6382f50779ede1e973d2d395f38e54",
      "parents": [
        "32df2ee86a580f70f2dbb90cf81f413aa655f838"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:18 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:32 2008 +0200"
      },
      "message": "sched: fix sched_domain aggregation\n\nKeeping the aggregate on the first cpu of the sched domain has two problems:\n - it could collide between different sched domains on different cpus\n - it could slow things down because of the remote accesses\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "32df2ee86a580f70f2dbb90cf81f413aa655f838",
      "tree": "17548b30bb7b77ad838d14606f0c9c03741460f6",
      "parents": [
        "103638d95ba5b0c53c8d9c0cb581156ccc8513ee"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:17 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:31 2008 +0200"
      },
      "message": "sched: add full schedstats to /proc/sched_debug\n\nshow all the schedstats in /debug/sched_debug as well.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "103638d95ba5b0c53c8d9c0cb581156ccc8513ee",
      "tree": "56d78e3e00780e044ef7688f27c93ece813035c1",
      "parents": [
        "76a2a6ee8a0660a29127f05989ac59ae1ce865fa"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:16 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:31 2008 +0200"
      },
      "message": "sched: fix wakeup granularity and buddy granularity\n\nUncouple buddy selection from wakeup granularity.\n\nThe initial idea was that buddies could run ahead as far as a normal task\ncan - do this by measuring a pair \u0027slice\u0027 just as we do for a normal task.\n\nThis means we can drop the wakeup_granularity back to 5ms.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "76a2a6ee8a0660a29127f05989ac59ae1ce865fa",
      "tree": "93ae1dd3cc5f564fc1e9d30bcdb0cd313f67221a",
      "parents": [
        "c09595f63bb1909c5dc4dca288f4fe818561b5f3"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:15 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:30 2008 +0200"
      },
      "message": "sched: sched_clock_cpu() based cpu_clock()\n\nwith sched_clock_cpu() being reasonably in sync between cpus (max 1 jiffy\ndifference) use this to provide cpu_clock().\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c09595f63bb1909c5dc4dca288f4fe818561b5f3",
      "tree": "42631e6986f3ea4543b125ca62a99df8548e0eb9",
      "parents": [
        "ced8aa16e1db55c33c507174c1b1f9e107445865"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:14 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:29 2008 +0200"
      },
      "message": "sched: revert revert of: fair-group: SMP-nice for group scheduling\n\nTry again..\n\nInitial commit: 18d95a2832c1392a2d63227a7a6d433cb9f2037e\nRevert: 6363ca57c76b7b83639ca8c83fc285fa26a7880e\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ced8aa16e1db55c33c507174c1b1f9e107445865",
      "tree": "87210bb14026a7a3d005b5339dae44d845f27708",
      "parents": [
        "c9c294a630e28eec5f2865f028ecfc58d45c0a5a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:13 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:28 2008 +0200"
      },
      "message": "sched: fix calc_delta_asym, #2\n\nOk, so why are we in this mess, it was:\n\n  1/w\n\nbut now we mixed that rw in the mix like:\n\n rw/w\n\nrw being \\Sum w suggests: fiddling w, we should also fiddle rw, humm?\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c9c294a630e28eec5f2865f028ecfc58d45c0a5a",
      "tree": "62fcfc395e98ff7a4ff6bee3364d0bb86024b171",
      "parents": [
        "a7be37ac8e1565e00880531f4e2aff421a21c803"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:12 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:28 2008 +0200"
      },
      "message": "sched: fix calc_delta_asym()\n\ncalc_delta_asym() is supposed to do the same as calc_delta_fair() except\nlinearly shrink the result for negative nice processes - this causes them\nto have a smaller preemption threshold so that they are more easily preempted.\n\nThe problem is that for task groups se-\u003eload.weight is the per cpu share of\nthe actual task group weight; take that into account.\n\nAlso provide a debug switch to disable the asymmetry (which I still don\u0027t\nlike - but it does greatly benefit some workloads)\n\nThis would explain the interactivity issues reported against group scheduling.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a7be37ac8e1565e00880531f4e2aff421a21c803",
      "tree": "82eb64ba5b221c3abea6d6f56c692841faea813a",
      "parents": [
        "bf647b62fdb948e757a7b4d18d4f16e3c763b1d1"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:11 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:27 2008 +0200"
      },
      "message": "sched: revert the revert of: weight calculations\n\nTry again..\n\ninitial commit: 8f1bc385cfbab474db6c27b5af1e439614f3025c\nrevert: f9305d4a0968201b2818dbed0dc8cb0d4ee7aeb3\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bf647b62fdb948e757a7b4d18d4f16e3c763b1d1",
      "tree": "28b52250ff8a8e02b3cae483fb59368f2aabdc54",
      "parents": [
        "f57aec5a871907427060196f6bac3d0011b38450"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:10 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:26 2008 +0200"
      },
      "message": "sched: clean up some unused variables\n\nIn file included from /mnt/build/linux-2.6/kernel/sched.c:1496:\n/mnt/build/linux-2.6/kernel/sched_rt.c: In function \u0027__enable_runtime\u0027:\n/mnt/build/linux-2.6/kernel/sched_rt.c:339: warning: unused variable \u0027rd\u0027\n/mnt/build/linux-2.6/kernel/sched_rt.c: In function \u0027requeue_rt_entity\u0027:\n/mnt/build/linux-2.6/kernel/sched_rt.c:692: warning: unused variable \u0027queue\u0027\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f57aec5a871907427060196f6bac3d0011b38450",
      "tree": "fec11fec6cf8e2454e07bd04ac137cad85075611",
      "parents": [
        "1de8644cc7c826e0c41e52825bd5a12e2e31e6ca",
        "543cf4cb3fe6f6cae3651ba918b9c56200b257d0"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 25 12:26:59 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 25 12:26:59 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into sched/devel\n\nConflicts:\n\n\tkernel/sched_rt.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "aabdc3b8c3b3d081f1532454e344208338478e29",
      "tree": "5ff3d5c873fa12ec3797690598e8daa2c3225071",
      "parents": [
        "a606b5e24b7e2937604f4c85023d8d9c5ab0a28b"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Tue Jun 24 10:52:55 2008 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Tue Jun 24 10:52:55 2008 -0500"
      },
      "message": "kgdb: sparse fix\n\n- Fix warning reported by sparse\nkernel/kgdb.c:1502:6: warning: symbol \u0027kgdb_console_write\u0027 was not declared.\n\tShould it be static?\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "27f4837cbfd87126e733d098824544b6841a4eb8",
      "tree": "c97efa3ce9883d6f52f8e8b351019ec42f6fea20",
      "parents": [
        "0e053738b50836e9d1e94b2295ef2942eb471078",
        "1b7558e457ed0de61023cfc913d2c342c7c3d9f2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 23 12:49:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 23 12:49:22 2008 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  futexes: fix fault handling in futex_lock_pi\n"
    },
    {
      "commit": "1b7558e457ed0de61023cfc913d2c342c7c3d9f2",
      "tree": "fcd456b1633bfd3e68ba2f6631831fbc5336108d",
      "parents": [
        "481c5346d0981940ee63037eb53e4e37b0735c10"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jun 23 11:21:58 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 23 13:31:15 2008 +0200"
      },
      "message": "futexes: fix fault handling in futex_lock_pi\n\nThis patch addresses a very sporadic pi-futex related failure in\nhighly threaded java apps on large SMP systems.\n\nDavid Holmes reported that the pi_state consistency check in\nlookup_pi_state triggered with his test application. This means that\nthe kernel internal pi_state and the user space futex variable are out\nof sync. First we assumed that this is a user space data corruption,\nbut deeper investigation revieled that the problem happend because the\npi-futex code is not handling a fault in the futex_lock_pi path when\nthe user space variable needs to be fixed up.\n\nThe fault happens when a fork mapped the anon memory which contains\nthe futex readonly for COW or the page got swapped out exactly between\nthe unlock of the futex and the return of either the new futex owner\nor the task which was the expected owner but failed to acquire the\nkernel internal rtmutex. The current futex_lock_pi() code drops out\nwith an inconsistent in case it faults and returns -EFAULT to user\nspace. User space has no way to fixup that state.\n\nWhen we wrote this code we thought that we could not drop the hash\nbucket lock at this point to handle the fault.\n\nAfter analysing the code again it turned out to be wrong because there\nare only two tasks involved which might modify the pi_state and the\nuser space variable:\n\n - the task which acquired the rtmutex\n - the pending owner of the pi_state which did not get the rtmutex\n\nBoth tasks drop into the fixup_pi_state() function before returning to\nuser space. The first task which acquired the hash bucket lock faults\nin the fixup of the user space variable, drops the spinlock and calls\nfutex_handle_fault() to fault in the page. Now the second task could\nacquire the hash bucket lock and tries to fixup the user space\nvariable as well. It either faults as well or it succeeds because the\nfirst task already faulted the page in.\n\nOne caveat is to avoid a double fixup. After returning from the fault\nhandling we reacquire the hash bucket lock and check whether the\npi_state owner has been modified already.\n\nReported-by: David Holmes \u003cdavid.holmes@sun.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: David Holmes \u003cdavid.holmes@sun.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n kernel/futex.c |   93 ++++++++++++++++++++++++++++++++++++++++++++-------------\n 1 file changed, 73 insertions(+), 20 deletions(-)\n"
    },
    {
      "commit": "1de8644cc7c826e0c41e52825bd5a12e2e31e6ca",
      "tree": "df1e884080599facaf70d2675c480e999da953e1",
      "parents": [
        "6c3df25511c2c51f2dd36cc52a8d22363d731793",
        "481c5346d0981940ee63037eb53e4e37b0735c10"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 23 11:30:23 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 23 11:30:23 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into sched/devel\n"
    },
    {
      "commit": "198bb971e256e4167e45e7df643c13ea66f67e3a",
      "tree": "85b8b2bf6cc78bf0e53a2187ed5796f076922334",
      "parents": [
        "ea71a546706dfdad72462624394e1e472c6bf34f",
        "481c5346d0981940ee63037eb53e4e37b0735c10"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 23 11:00:26 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 23 11:00:26 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into sched/urgent\n"
    },
    {
      "commit": "1f1e2ce8a55bac60ff165d353c6b882e750c9092",
      "tree": "b11aaa5baa04ea5ea0ecc549fa1c95430919cd82",
      "parents": [
        "e570dc2a503f8334b700e8483082c675394f53fd",
        "9c106c119ebedf624fbd682fd2a4d52e3c8c1a67"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 20 12:37:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 20 12:37:13 2008 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  softlockup: fix NMI hangs due to lock race - 2.6.26-rc regression\n  rcupreempt: remove export of rcu_batches_completed_bh\n  cpuset: limit the input of cpuset.sched_relax_domain_level\n"
    },
    {
      "commit": "ea71a546706dfdad72462624394e1e472c6bf34f",
      "tree": "eb6f257c73510deee995f330947de4624e9b404b",
      "parents": [
        "bb10ed0994927d433f6dbdf274fdb26cfcf516b7"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jun 20 18:32:20 2008 +0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 20 17:15:49 2008 +0200"
      },
      "message": "sched: refactor wait_for_completion_timeout()\n\nSimplify the code and fix the boundary condition of\nwait_for_completion_timeout(,0).\n\nWe can kill the first __remove_wait_queue() as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n"
    },
    {
      "commit": "bb10ed0994927d433f6dbdf274fdb26cfcf516b7",
      "tree": "832f26f1c45e1ddd67beb655a9474d167b9e4cd1",
      "parents": [
        "8a8cde163ea724baf74e7752a31a69d3121a240e"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rdreier@cisco.com",
        "time": "Thu Jun 19 15:04:07 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 20 13:19:32 2008 +0200"
      },
      "message": "sched: fix wait_for_completion_timeout() spurious failure under heavy load\n\nIt seems that the current implementaton of wait_for_completion_timeout()\nhas a small problem under very high load for the common pattern:\n\n\tif (!wait_for_completion_timeout(\u0026done, timeout))\n\t\t/* handle failure */\n\nbecause the implementation very roughly does (lots of code deleted to\nshow the basic flow):\n\n\tstatic inline long __sched\n\tdo_wait_for_common(struct completion *x, long timeout, int state)\n\t{\n\t\tif (x-\u003edone)\n\t\t\treturn timeout;\n\n\t\tdo {\n\t\t\ttimeout \u003d schedule_timeout(timeout);\n\n\t\t\tif (!timeout)\n\t\t\t\treturn timeout;\n\n\t\t} while (!x-\u003edone);\n\n\t\treturn timeout;\n\t}\n\nso if the system is very busy and x-\u003edone is not set when\ndo_wait_for_common() is entered, it is possible that the first call to\nschedule_timeout() returns 0 because the task doing wait_for_completion\ndoesn\u0027t get rescheduled for a long time, even if it is woken up early\nenough.\n\nIn this case, wait_for_completion_timeout() returns 0 without even\nchecking x-\u003edone again, and the code above falls into its failure case\npurely for scheduler reasons, even if the hardware event or whatever was\nbeing waited for happened early enough.\n\nIt would make sense to add an extra test to do_wait_for() in the timeout\ncase and return 1 if x-\u003edone is actually set.\n\nA quick audit (not exhaustive) of wait_for_completion_timeout() callers\nseems to indicate that no one actually cares about the return value in\nthe success case -- they just test for 0 (timed out) versus non-zero\n(wait succeeded).\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8a8cde163ea724baf74e7752a31a69d3121a240e",
      "tree": "5cdeed8a13ac27bf0bf03f522ab184c543a5030f",
      "parents": [
        "d4abc238c9f4df8b3216f3e883f5d0a07b7ac75a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 19 14:22:28 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 20 11:00:19 2008 +0200"
      },
      "message": "sched: rt: dont stop the period timer when there are tasks wanting to run\n\nSo if the group ever gets throttled, it will never wake up again.\n\nReported-by: \"Daniel K.\" \u003cdk@uw.no\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Daniel K. \u003cdk@uw.no\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6c3df25511c2c51f2dd36cc52a8d22363d731793",
      "tree": "80ef006084108ebca3d49f6635a62d8ee261abe8",
      "parents": [
        "10b612f440a22a294e87ec7e8f03f9eea3338628"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 19 14:22:28 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 20 10:26:02 2008 +0200"
      },
      "message": "sched: rt: dont stop the period timer when there are tasks wanting to run\n\nSo if the group ever gets throttled, it will never wake up again.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \"Daniel K.\" \u003cdk@uw.no\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nReported-by: \"Daniel K.\" \u003cdk@uw.no\u003e\n"
    },
    {
      "commit": "10b612f440a22a294e87ec7e8f03f9eea3338628",
      "tree": "75d016acdfa2e98a601bffa63ef302649f6ca7db",
      "parents": [
        "eff6549b957d15d1ad168d90b8c1eb643b9c163f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 19 14:22:27 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 20 10:26:01 2008 +0200"
      },
      "message": "sched: rt: fix the bandwidth contraint computations\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \"Daniel K.\" \u003cdk@uw.no\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "eff6549b957d15d1ad168d90b8c1eb643b9c163f",
      "tree": "016e025635dabb070edf1f48fe1cee5308e18fd4",
      "parents": [
        "b79f3833d81d54fc71d98c8064dc45f33a755a8a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 19 14:22:26 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 20 10:26:00 2008 +0200"
      },
      "message": "sched: rt: move some code around\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \"Daniel K.\" \u003cdk@uw.no\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b79f3833d81d54fc71d98c8064dc45f33a755a8a",
      "tree": "863df388344bbd6e370a6f4f1c721418b919d368",
      "parents": [
        "ada18de2eb76961a4d4847f63291744c9e7beec4"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 19 14:22:25 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 20 10:26:00 2008 +0200"
      },
      "message": "sched: rt: fix SMP bandwidth balancing for throttled groups\n\nNow we exceed the runtime and get throttled - the period rollover tick\nwill subtract the cpu quota from the runtime and check if we\u0027re below\nquota. However with this cpu having a very small portion of the runtime\nit will not refresh as fast as it should.\n\nTherefore, also rebalance the runtime when we\u0027re throttled.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \"Daniel K.\" \u003cdk@uw.no\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ada18de2eb76961a4d4847f63291744c9e7beec4",
      "tree": "2626852c3d735aea1a49570afea3fa936a8186dc",
      "parents": [
        "1cdad71537b42d0f0bf247772942ce678e4e8898"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 19 14:22:24 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 20 10:25:59 2008 +0200"
      },
      "message": "sched: debug: add some rt debug output\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \"Daniel K.\" \u003cdk@uw.no\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d4abc238c9f4df8b3216f3e883f5d0a07b7ac75a",
      "tree": "38b571d9a787a62ee88de8f1a2d1c39b3a9d83b8",
      "parents": [
        "d819c49da624e3ee09b2844603d58265039eecdd"
      ],
      "author": {
        "name": "Bharath Ravi",
        "email": "bharathravi1@gmail.com",
        "time": "Mon Jun 16 15:11:01 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 19 14:15:28 2008 +0200"
      },
      "message": "sched, delay accounting: fix incorrect delay time when constantly waiting on runqueue\n\nThis patch corrects the incorrect value of per process run-queue wait\ntime reported by delay statistics. The anomaly was due to the following\nreason. When a process leaves the CPU and immediately starts waiting for\nCPU on the runqueue (which means it remains in the TASK_RUNNABLE state),\nthe time of re-entry into the run-queue is never recorded. Due to this,\nthe waiting time on the runqueue from this point of re-entry upto the\nnext time it hits the CPU is not accounted for. This is solved by\nrecording the time of re-entry of a process leaving the CPU in the\nsched_info_depart() function IF the process will go back to waiting on\nthe run-queue. This IF condition is verified by checking whether the\nprocess is still in the TASK_RUNNABLE state.\n\nThe patch was tested on 2.6.26-rc6 using two simple CPU hog programs.\nThe values noted prior to the fix did not account for the time spent on\nthe runqueue waiting. After the fix, the correct values were reported\nback to user space.\n\nSigned-off-by: Bharath Ravi \u003cbharathravi1@gmail.com\u003e\nSigned-off-by: Madhava K R  \u003cmadhavakr@gmail.com\u003e\nCc: dhaval@linux.vnet.ibm.com\nCc: vatsa@in.ibm.com\nCc: balbir@in.ibm.com\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9c106c119ebedf624fbd682fd2a4d52e3c8c1a67",
      "tree": "cc757dd11c8575110fdd4971fb76303fe500764b",
      "parents": [
        "afd38009cc3acd36d41f349a669ad5825d695b1f"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Tue May 27 12:23:29 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 19 09:45:38 2008 +0200"
      },
      "message": "softlockup: fix NMI hangs due to lock race - 2.6.26-rc regression\n\nThe touch_nmi_watchdog() routine on x86 ultimately calls\ntouch_softlockup_watchdog().  The problem is that to touch the\nsoftlockup watchdog, the cpu_clock code has to be called which could\ninvolve multiple cpu locks and can lead to a hard hang if one of the\nlocks is held by a processor that is not going to return anytime soon\n(such as could be the case with kgdb or perhaps even with some other\nkind of exception).\n\nThis patch causes the public version of the\ntouch_softlockup_watchdog() to defer the cpu clock access to a later\npoint.\n\nThe test case for this problem is to use the following kernel config\noptions:\n\nCONFIG_KGDB_TESTS\u003dy\nCONFIG_KGDB_TESTS_ON_BOOT\u003dy\nCONFIG_KGDB_TESTS_BOOT_STRING\u003d\"V1F100I100000\"\n\nIt should be noted that kgdb test suite and these options were not\navailable until 2.6.26-rc2, so it was necessary to patch the kgdb\ntest suite during the bisection.\n\nI would consider this patch a regression fix because the problem first\nappeared in commit 27ec4407790d075c325e1f4da0a19c56953cce23 when some\nlogic was added to try to periodically sync the clocks.  It was\npossible to work around this particular problem by simply not\nperforming the sync anytime the system was in a critical context.\nThis was ok until commit 3e51f33fcc7f55e6df25d15b55ed10c8b4da84cd,\nwhich added config option CONFIG_HAVE_UNSTABLE_SCHED_CLOCK and some\nmulti-cpu locks to sync the clocks.  It became clear that accessing\nthis code from an nmi was the source of the lockups.  Avoiding the\naccess to the low level clock code from an code inside the NMI\nprocessing also fixed the problem with the 27ec44... commit.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "afd38009cc3acd36d41f349a669ad5825d695b1f",
      "tree": "01068aa7fedbd9bc6f158e9dd470ac1336f9a027",
      "parents": [
        "30e0e178193d4221abc9926b07a4c7661c7cc4a9"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu May 22 14:18:17 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 19 09:45:37 2008 +0200"
      },
      "message": "rcupreempt: remove export of rcu_batches_completed_bh\n\nIn rcupreempt, rcu_batches_completed_bh is defined as a static inline in\nthe header file. This does not need to be exported, and not only that,\nthis breaks my PPC build.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: paulus@samba.org\nCc: linuxppc-dev@ozlabs.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "30e0e178193d4221abc9926b07a4c7661c7cc4a9",
      "tree": "f6ad7d54e810a97345ad82b55832a2dbfb3ca6e2",
      "parents": [
        "9bedbcb207ed9a571b239231d99c8fd4a34ae24d"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue May 13 10:27:17 2008 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 19 09:45:36 2008 +0200"
      },
      "message": "cpuset: limit the input of cpuset.sched_relax_domain_level\n\nWe allow the inputs to be [-1 ... SD_LV_MAX), and return -EINVAL\nfor inputs outside this range.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nAcked-by: Paul Jackson \u003cpj@sgi.com\u003e\nAcked-by: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "f18f982abf183e91f435990d337164c7a43d1e6d",
      "tree": "d80f6b09825db1c5103d7b8518189613c9b57fbe",
      "parents": [
        "15a8641eadb492ef7c5489faa25256967bdfd303"
      ],
      "author": {
        "name": "Max Krasnyansky",
        "email": "maxk@qualcomm.com",
        "time": "Thu May 29 11:17:01 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 19 09:14:51 2008 +0200"
      },
      "message": "sched: CPU hotplug events must not destroy scheduler domains created by the cpusets\n\nFirst issue is not related to the cpusets. We\u0027re simply leaking doms_cur.\nIt\u0027s allocated in arch_init_sched_domains() which is called for every\nhotplug event. So we just keep reallocation doms_cur without freeing it.\nI introduced free_sched_domains() function that cleans things up.\n\nSecond issue is that sched domains created by the cpusets are\ncompletely destroyed by the CPU hotplug events. For all CPU hotplug\nevents scheduler attaches all CPUs to the NULL domain and then puts\nthem all into the single domain thereby destroying domains created\nby the cpusets (partition_sched_domains).\nThe solution is simple, when cpusets are enabled scheduler should not\ncreate default domain and instead let cpusets do that. Which is\nexactly what the patch does.\n\nSigned-off-by: Max Krasnyansky \u003cmaxk@qualcomm.com\u003e\nCc: pj@sgi.com\nCc: menage@google.com\nCc: rostedt@goodmis.org\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1cdad71537b42d0f0bf247772942ce678e4e8898",
      "tree": "58caef683e4739907e0ae147bead71a5b19e2207",
      "parents": [
        "20b6331bfed1f07ba1e5006889a5d64adc53615e",
        "15a8641eadb492ef7c5489faa25256967bdfd303"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 19 09:09:15 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 19 09:09:15 2008 +0200"
      },
      "message": "Merge branch \u0027sched\u0027 into sched-devel\n\nConflicts:\n\n\tkernel/sched_rt.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "15a8641eadb492ef7c5489faa25256967bdfd303",
      "tree": "ec838b2002c9565b4c1b6631f9fe2fd93d7fe6c9",
      "parents": [
        "ad2a3f13b7258a5daaaeb8cff9f835aac468b71d"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 19 09:06:59 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 19 09:06:59 2008 +0200"
      },
      "message": "sched: rt-group: fix RR buglet\n\nIn tick_task_rt() we first call update_curr_rt() which can dequeue a runqueue\ndue to it running out of runtime, and then we try to requeue it, of it also\nhaving exhausted its RR quota. Obviously requeueing something that is no longer\non the runqueue will not have the expected result.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Daniel K. \u003cdk@uw.no\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ad2a3f13b7258a5daaaeb8cff9f835aac468b71d",
      "tree": "ac9ea87be655aba0a372b6b4a25215547da0e291",
      "parents": [
        "7ea56616ba6b3d67a4892728182e38ae162ea3e7"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 19 09:06:57 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 19 09:06:57 2008 +0200"
      },
      "message": "sched: rt-group: heirarchy aware throttle\n\nThe bandwidth throttle code dequeues a group when it runs out of quota, and\nre-queues it once the period rolls over and the quota gets refreshed.\n\nSadly it failed to take the hierarchy into consideration. Share more of the\nenqueue/dequeue code with regular task opterations.\n\nAlso, some operations like sched_setscheduler() can dequeue/enqueue tasks that\nare in throttled runqueues, we should not inadvertly re-enqueue empty runqueues\nso check for that.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Daniel K. \u003cdk@uw.no\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7ea56616ba6b3d67a4892728182e38ae162ea3e7",
      "tree": "eec572cd1901ec4081959942f9a56a2efedc4eed",
      "parents": [
        "49307fd6f72bdd68cc2bd23e7da0bcfecf8087c9"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 19 09:06:56 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 19 09:06:56 2008 +0200"
      },
      "message": "sched: rt-group: fix hierarchy\n\nDon\u0027t re-set the entity\u0027s runqueue to the wrong rq after we\u0027ve set it\nto the right one.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Daniel K. \u003cdk@uw.no\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "49307fd6f72bdd68cc2bd23e7da0bcfecf8087c9",
      "tree": "60a96a369fcf4ecca5e6eedc3403fd52bda5715b",
      "parents": [
        "95e904c7da715aa2dbfb595da66b63de37a0bb04"
      ],
      "author": {
        "name": "Dario Faggioli",
        "email": "raistlin@linux.it",
        "time": "Wed Jun 18 09:18:38 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 19 09:06:54 2008 +0200"
      },
      "message": "sched: NULL pointer dereference while setting sched_rt_period_us\n\nWhen CONFIG_RT_GROUP_SCHED and CONFIG_CGROUP_SCHED are enabled, with:\n\n echo 10000 \u003e /proc/sys/kernel/sched_rt_period_us\n\nWe get this:\n\n BUG: unable to handle kernel NULL pointer dereference at 0000008c\n [  947.682233] IP: [\u003cc0216b72\u003e] __rt_schedulable+0x12/0x160\n [  947.683123] *pde \u003d 00000000\u003d20\n [  947.683782] Oops: 0000 [#1]\n [  947.684307] Modules linked in:\n [  947.684308]\n [  947.684308] Pid: 2359, comm: bash Not tainted (2.6.26-rc6 #8)\n [  947.684308] EIP: 0060:[\u003cc0216b72\u003e] EFLAGS: 00000246 CPU: 0\n [  947.684308] EIP is at __rt_schedulable+0x12/0x160\n [  947.684308] EAX: 00000000 EBX: 00000000 ECX: 00000000 EDX: 00000001\n [  947.684308] ESI: c0521db4 EDI: 00000001 EBP: c6cc9f00 ESP: c6cc9ed0\n [  947.684308]  DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068\n [  947.684308] Process bash (pid: 2359, tiÆcc8000 taskÇa54f00\u003d20 task.tiÆcc8000)\n [  947.684308] Stack: c0222790 00000000 080f8c08 c0521db4 c6cc9f00 00000001 00000000 00000000\n [  947.684308]        c6cc9f9c 00000000 c0521db4 00000001 c6cc9f28 c0216d40 00000000 00000000\n [  947.684308]        c6cc9f9c 000f4240 000e7ef0 ffffffff c0521db4 c79dfb60 c6cc9f58 c02af2cc\n [  947.684308] Call Trace:\n [  947.684308]  [\u003cc0222790\u003e] ? do_proc_dointvec_conv+0x0/0x50\n [  947.684308]  [\u003cc0216d40\u003e] ? sched_rt_handler+0x80/0x110\n [  947.684308]  [\u003cc02af2cc\u003e] ? proc_sys_call_handler+0x9c/0xb0\n [  947.684308]  [\u003cc02af2fa\u003e] ? proc_sys_write+0x1a/0x20\n [  947.684308]  [\u003cc0273c36\u003e] ? vfs_write+0x96/0x160\n [  947.684308]  [\u003cc02af2e0\u003e] ? proc_sys_write+0x0/0x20\n [  947.684308]  [\u003cc027423d\u003e] ? sys_write+0x3d/0x70\n [  947.684308]  [\u003cc0202ef5\u003e] ? sysenter_past_esp+0x6a/0x91\n [  947.684308]  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n [  947.684308] Code: 24 04 e8 62 b1 0e 00 89 c7 89 f8 8b 5d f4 8b 75\n f8 8b 7d fc 89 ec 5d c3 90 55 89 e5 57 56 53 83 ec 24 89 45 ec 89 55 e4\n 89 4d e8 \u003c8b\u003e b8 8c 00 00 00 85 ff 0f 84 c9 00 00 00 8b 57 24 39 55 e8\n 8b\n [  947.684308] EIP: [\u003cc0216b72\u003e] __rt_schedulable+0x12/0x160 SS:ESP  0068:c6cc9ed0\n\nWe think the following patch solves the issue.\n\nSigned-off-by: Dario Faggioli \u003craistlin@linux.it\u003e\nSigned-off-by: Michael Trimarchi \u003ctrimarchimichael@yahoo.it\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "20b6331bfed1f07ba1e5006889a5d64adc53615e",
      "tree": "9a98f9ccd201c875a94f8a2002f1eddcfc114d65",
      "parents": [
        "f7d62364b2cef85cbcd4feffdd3632ef7c3b61c2"
      ],
      "author": {
        "name": "Dmitry Adamushko",
        "email": "dmitry.adamushko@gmail.com",
        "time": "Wed Jun 11 00:58:30 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 18 12:41:18 2008 +0200"
      },
      "message": "sched: rework of \"prioritize non-migratable tasks over migratable ones\"\n\nregarding this commit: 45c01e824991b2dd0a332e19efc4901acb31209f\n\nI think we can do it simpler. Please take a look at the patch below.\n\nInstead of having 2 separate arrays (which is + ~800 bytes on x86_32 and\ntwice so on x86_64), let\u0027s add \"exclusive\" (the ones that are bound to\nthis CPU) tasks to the head of the queue and \"shared\" ones -- to the\nend.\n\nIn case of a few newly woken up \"exclusive\" tasks, they are \u0027stacked\u0027\n(not queued as now), meaning that a task {i+1} is being placed in front\nof the previously woken up task {i}. But I don\u0027t think that this\nbehavior may cause any realistic problems.\n\nThere are a couple of changes on top of this one.\n\n(1) in check_preempt_curr_rt()\n\nI don\u0027t think there is a need for the \"pick_next_rt_entity(rq, \u0026rq-\u003ert)\n!\u003d \u0026rq-\u003ecurr-\u003ert\" check.\n\nenqueue_task_rt(p) and check_preempt_curr_rt() are always called one\nafter another with rq-\u003elock being held so the following check\n\"p-\u003ert.nr_cpus_allowed \u003d\u003d 1 \u0026\u0026 rq-\u003ecurr-\u003ert.nr_cpus_allowed !\u003d 1\" should\nbe enough (well, just its left part) to guarantee that \u0027p\u0027 has been\nqueued in front of the \u0027curr\u0027.\n\n(2) in set_cpus_allowed_rt()\n\nI don\u0027t thinks there is a need for requeue_task_rt() here.\n\nPerhaps, the only case when \u0027requeue\u0027 (+ reschedule) might be useful is\nas follows:\n\ni) weight \u003d\u003d 1 \u0026\u0026 cpu_isset(task_cpu(p), *new_mask)\n\ni.e. a task is being bound to this CPU);\n\nii) \u0027p\u0027 !\u003d rq-\u003ecurr\n\nbut here, \u0027p\u0027 has already been on this CPU for a while and was not\nmigrated. i.e. it\u0027s possible that \u0027rq-\u003ecurr\u0027 would not have high chances\nto be migrated right at this particular moment (although, has chance in\na bit longer term), should we allow it to be preempted.\n\nAnyway, I think we should not perhaps make it more complex trying to\naddress some rare corner cases. For instance, that\u0027s why a single queue\napproach would be preferable. Unless I\u0027m missing something obvious, this\napproach gives us similar functionality at lower cost.\n\nVerified only compilation-wise.\n\n(Almost)-Signed-off-by: Dmitry Adamushko \u003cdmitry.adamushko@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "95e904c7da715aa2dbfb595da66b63de37a0bb04",
      "tree": "0f6838888cffc410740b2737082101a7a7117bbb",
      "parents": [
        "066519068ad2fbe98c7f45552b1f592903a9c8c8"
      ],
      "author": {
        "name": "Rabin Vincent",
        "email": "rabin@rab.in",
        "time": "Sun May 11 05:55:33 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 17 10:36:58 2008 +0200"
      },
      "message": "sched: fix defined-but-unused warning\n\nFix this warning, which appears with !CONFIG_SMP:\nkernel/sched.c:1216: warning: `init_hrtick\u0027 defined but not used\n\nSigned-off-by: Rabin Vincent \u003crabin@rab.in\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f9e8e07e074a880e110922759dcdb369fecdf07c",
      "tree": "61bc9a61e0a0546a81d699047d9e001c50b52d50",
      "parents": [
        "e9886ca3a93d7d041d3de8e5acebe213da777d59",
        "066519068ad2fbe98c7f45552b1f592903a9c8c8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 11:15:21 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 11:15:21 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into sched-devel\n"
    },
    {
      "commit": "67dddaad5d8b8c5ee5b96a7e2f6cb0faad703865",
      "tree": "373e5ba749f93e0f1617182f37aca08df5e8b243",
      "parents": [
        "24aac480e76c6f5d1391ac05c5e9c0eb9b0cd302"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Thu Jun 12 15:21:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 12 18:05:40 2008 -0700"
      },
      "message": "kprobes: fix error checking of batch registration\n\nFix error checking routine to catch an error which occurs in first\n__register_*probe().\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1b3cba8e60c67c968d108ac55c77e32c1928dec3",
      "tree": "79ce35debeb7e203558d884efd03c7cf160cceaa",
      "parents": [
        "14a73f54798f39854e521fb596da7d50b7566bbd",
        "7a232e0350940d2664f4de5cc3f0f443bae5062d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 12 12:55:18 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 12 12:55:18 2008 -0700"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: 64-bit: fix arithmetics overflow\n  sched: fair group: fix overflow(was: fix divide by zero)\n  sched: fix TASK_WAKEKILL vs SIGKILL race\n"
    },
    {
      "commit": "7a232e0350940d2664f4de5cc3f0f443bae5062d",
      "tree": "bb91a53faab7bf6e92df127f8bdb2225cf808925",
      "parents": [
        "2e084786f6fe052274f1dfa7c675fe4a02cacd6e"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Thu Jun 12 16:43:07 2008 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 12 14:29:54 2008 +0200"
      },
      "message": "sched: 64-bit: fix arithmetics overflow\n\n(overflow means weight \u003e\u003d 2^32 here, because inv_weigh \u003d 2^32/weight)\n\nA weight of a cfs_rq is the sum of weights of which entities\nare queued on this cfs_rq, so it will overflow when there are\ntoo many entities.\n\nAlthough, overflow occurs very rarely, but it break fairness when\nit occurs. 64-bits systems have more memory than 32-bit systems\nand 64-bit systems can create more process usually, so overflow may\noccur more frequently.\n\nThis patch guarantees fairness when overflow happens on 64-bit systems.\nThanks to the optimization of compiler, it changes nothing on 32-bit.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2e084786f6fe052274f1dfa7c675fe4a02cacd6e",
      "tree": "66190825236b1f3f59e88aaa83d2683bd121143d",
      "parents": [
        "16882c1e962b4be5122fc05aaf2afc10fd9e2d15"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Thu Jun 12 16:42:58 2008 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 12 14:23:55 2008 +0200"
      },
      "message": "sched: fair group: fix overflow(was: fix divide by zero)\n\nI found a bug which can be reproduced by this way:(linux-2.6.26-rc5, x86-64)\n(use 2^32, 2^33, ...., 2^63 as shares value)\n\n# mkdir /dev/cpuctl\n# mount -t cgroup -o cpu cpuctl /dev/cpuctl\n# cd /dev/cpuctl\n# mkdir sub\n# echo 0x8000000000000000 \u003e sub/cpu.shares\n# echo $$ \u003e sub/tasks\noops here! divide by zero.\n\nThis is because do_div() expects the 2th parameter to be 32 bits,\nbut unsigned long is 64 bits in x86_64.\n\nPeter Zijstra pointed it out that the sane thing to do is limit the\nshares value to something smaller instead of using an even more\nexpensive divide.\n\nAlso, I found another bug about \"the shares value is too large\":\n\npid1 and pid2 are set affinity to cpu#0\npid1 is attached to cg1 and pid2 is attached to cg2\n\nif cg1/cpu.shares \u003d 1024 cg2/cpu.shares \u003d 2000000000\nthen pid2 got 100% usage of cpu, and pid1 0%\n\nif cg1/cpu.shares \u003d 1024 cg2/cpu.shares \u003d 20000000000\nthen pid2 got 0% usage of cpu, and pid1 100%\n\nAnd a weight of a cfs_rq is the sum of weights of which entities\nare queued on this cfs_rq, so the shares value should be limited\nto a smaller value.\n\nI think that (1UL \u003c\u003c 18) is a good limited value:\n\n1) it\u0027s not too large, we can create a lot of group before overflow\n2) it\u0027s several times the weight value for nice\u003d-19 (not too small)\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e9886ca3a93d7d041d3de8e5acebe213da777d59",
      "tree": "392fe2668b27a4dacbc412d8ee4499d68153049f",
      "parents": [
        "6492c7f83e88a3a9521793b6934d882b97afe287"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Jun 09 17:12:24 2008 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 10 14:51:04 2008 +0200"
      },
      "message": "sched: kill off dead cfs_rq_set_shares()\n\nBuilding with CONFIG_FAIR_GROUP_SCHED\u003dy on UP results in an unused\ncfs_rq_set_shares() reference. As nothing is using this dummy function\nin the first place, just kill it off.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6492c7f83e88a3a9521793b6934d882b97afe287",
      "tree": "4ba50131fb5b67d268834931705e48301cd55e66",
      "parents": [
        "9985b0bab332289f14837eff3c6e0bcc658b58f7"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Sun Jun 08 09:27:13 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 10 12:38:17 2008 +0200"
      },
      "message": "sched: trivial sched_features cleanup\n\nRemove unused debug/tuning features.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9985b0bab332289f14837eff3c6e0bcc658b58f7",
      "tree": "8c4bcbc4348c473b14644dc4d371a45c0dabda53",
      "parents": [
        "7def2be1dc679984f4c4fb3ef19a8a081b2454ec"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Thu Jun 05 12:57:11 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 10 12:26:16 2008 +0200"
      },
      "message": "sched: prevent bound kthreads from changing cpus_allowed\n\nKthreads that have called kthread_bind() are bound to specific cpus, so\nother tasks should not be able to change their cpus_allowed from under\nthem.  Otherwise, it is possible to move kthreads, such as the migration\nor software watchdog threads, so they are not allowed access to the cpu\nthey work on.\n\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7def2be1dc679984f4c4fb3ef19a8a081b2454ec",
      "tree": "5be15957919d095cdbbc9ed3217d9dec939b234b",
      "parents": [
        "e958b3600484533ff801920290468adc8135f89d"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 05 14:49:58 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 10 12:17:28 2008 +0200"
      },
      "message": "sched: fix hotplug cpus on ia64\n\nCliff Wickman wrote:\n\n\u003e I built an ia64 kernel from Andrew\u0027s tree (2.6.26-rc2-mm1)\n\u003e and get a very predictable hotplug cpu problem.\n\u003e billberry1:/tmp/cpw # ./dis\n\u003e disabled cpu 17\n\u003e enabled cpu 17\n\u003e billberry1:/tmp/cpw # ./dis\n\u003e disabled cpu 17\n\u003e enabled cpu 17\n\u003e billberry1:/tmp/cpw # ./dis\n\u003e\n\u003e The script that disables the cpu always hangs (unkillable)\n\u003e on the 3rd attempt.\n\u003e\n\u003e And a bit further:\n\u003e The kstopmachine thread always sits on the run queue (real time) for about\n\u003e 30 minutes before running.\n\nthis fix solves some (but not all) issues between CPU hotplug and\nRT bandwidth throttling.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "16882c1e962b4be5122fc05aaf2afc10fd9e2d15",
      "tree": "c39cae4ae4874998d7e3486cd57d57613b05a89c",
      "parents": [
        "39b945a37bac2b692773a470890c8ba301485b15"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Sun Jun 08 21:20:41 2008 +0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 10 11:37:25 2008 +0200"
      },
      "message": "sched: fix TASK_WAKEKILL vs SIGKILL race\n\nschedule() has the special \"TASK_INTERRUPTIBLE \u0026\u0026 signal_pending()\" case,\nthis allows us to do\n\n\tcurrent-\u003estate \u003d TASK_INTERRUPTIBLE;\n\tschedule();\n\nwithout fear to sleep with pending signal.\n\nHowever, the code like\n\n\tcurrent-\u003estate \u003d TASK_KILLABLE;\n\tschedule();\n\nis not right, schedule() doesn\u0027t take TASK_WAKEKILL into account. This means\nthat mutex_lock_killable(), wait_for_completion_killable(), down_killable(),\nschedule_timeout_killable() can miss SIGKILL (and btw the second SIGKILL has\nno effect).\n\nIntroduce the new helper, signal_pending_state(), and change schedule() to\nuse it. Hopefully it will have more users, that is why the task\u0027s state is\npassed separately.\n\nNote this \"__TASK_STOPPED | __TASK_TRACED\" check in signal_pending_state().\nThis is needed to preserve the current behaviour (ptrace_notify). I hope\nthis check will be removed soon, but this (afaics good) change needs the\nseparate discussion.\n\nThe fast path is \"(state \u0026 (INTERRUPTIBLE | WAKEKILL)) + signal_pending(p)\",\nbasically the same that schedule() does now. However, this patch of course\nbloats schedule().\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "156a9ea43acb609ac89d48dbb9f0d05ee903a12e",
      "tree": "0b470e783c6f5012421a9a59aa8864c5fcc96407",
      "parents": [
        "c8d10bffdbea5f82a8e491467a23fb2cc7da921b",
        "ca05a99a54db1db5bca72eccb5866d2a86f8517f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 06 11:31:55 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 06 11:31:55 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/chrisw/lsm-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/chrisw/lsm-2.6:\n  capabilities: remain source compatible with 32-bit raw legacy capability support.\n  LSM: remove stale web site from MAINTAINERS\n"
    },
    {
      "commit": "37340746a66e5e7feed5945f28cb75d90a8fd9f6",
      "tree": "b056132aad9eab38886b7359797302cbeeabc3fa",
      "parents": [
        "aae8679b0ebcaa92f99c1c3cb0cd651594a43915"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Thu Jun 05 22:46:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 06 11:29:11 2008 -0700"
      },
      "message": "cpusets: fix bug when adding nonexistent cpu or mem\n\nAdding a nonexistent cpu to a cpuset will be omitted quietly.  It should\nreturn -EINVAL.\n\nExample: (real_nr_cpus \u003c\u003d 4 \u003c NR_CPUS or cpu#4 was just offline)\n\n# cat cpus\n0-1\n# /bin/echo 4 \u003e cpus\n# /bin/echo $?\n0\n# cat cpus\n\n#\n\nThe same occurs when add a nonexistent mem.\nThis patch will fix this bug.\nAnd when *buf \u003d\u003d \"\", the check is unneeded.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Paul Jackson \u003cpj@sgi.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e958b3600484533ff801920290468adc8135f89d",
      "tree": "09a1febbfdc467a5d73f4dee458785acc3b809b1",
      "parents": [
        "68f4f1ec08e3d95730a2693b99df8260aa0d06ae"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Jun 04 23:22:32 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:25:02 2008 +0200"
      },
      "message": "sched: move weighted_cpuload into #ifdef CONFIG_SMP section\n\nweighted_cpuload is only used on SMP. move it into the CONFIG_SMP\nsection.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "68f4f1ec08e3d95730a2693b99df8260aa0d06ae",
      "tree": "c5deab621f545eac80fcec6608d68cddf6705032",
      "parents": [
        "5c8e1ed1d204a6770ca2854cd3b3597070fe7e5a"
      ],
      "author": {
        "name": "Max Krasnyansky",
        "email": "maxk@qualcomm.com",
        "time": "Thu May 29 11:17:02 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:25:01 2008 +0200"
      },
      "message": "sched: Move cpu masks from kernel/sched.c into kernel/cpu.c\n\nkernel/cpu.c seems a more logical place for those maps since they do not really\nhave much to do with the scheduler these days.\n\nkernel/cpu.c is now built for the UP kernel too, but it does not affect the size\nthe kernel sections.\n\n$ size vmlinux\n\nbefore\n   text       data        bss        dec        hex    filename\n3313797     307060     310352    3931209     3bfc49    vmlinux\n\nafter\n   text       data        bss        dec        hex    filename\n3313797     307060     310352    3931209     3bfc49    vmlinux\n\nSigned-off-by: Max Krasnyansky \u003cmaxk@qualcomm.com\u003e\nCc: pj@sgi.com\nCc: menage@google.com\nCc: rostedt@goodmis.org\nCc: mingo@elte.hu\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "5c8e1ed1d204a6770ca2854cd3b3597070fe7e5a",
      "tree": "72a2bb4394d1f0b8492ea9566990a39ca597b840",
      "parents": [
        "1100ac91b6af02d8639d518fad5b434b1bf44ed6"
      ],
      "author": {
        "name": "Max Krasnyansky",
        "email": "maxk@qualcomm.com",
        "time": "Thu May 29 11:17:01 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:25:00 2008 +0200"
      },
      "message": "sched: CPU hotplug events must not destroy scheduler domains created by the cpusets\n\nFirst issue is not related to the cpusets. We\u0027re simply leaking doms_cur.\nIt\u0027s allocated in arch_init_sched_domains() which is called for every\nhotplug event. So we just keep reallocation doms_cur without freeing it.\nI introduced free_sched_domains() function that cleans things up.\n\nSecond issue is that sched domains created by the cpusets are\ncompletely destroyed by the CPU hotplug events. For all CPU hotplug\nevents scheduler attaches all CPUs to the NULL domain and then puts\nthem all into the single domain thereby destroying domains created\nby the cpusets (partition_sched_domains).\nThe solution is simple, when cpusets are enabled scheduler should not\ncreate default domain and instead let cpusets do that. Which is\nexactly what the patch does.\n\nSigned-off-by: Max Krasnyansky \u003cmaxk@qualcomm.com\u003e\nCc: pj@sgi.com\nCc: menage@google.com\nCc: rostedt@goodmis.org\nCc: mingo@elte.hu\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1100ac91b6af02d8639d518fad5b434b1bf44ed6",
      "tree": "4eda0e913e8bc5437fad37b723f24eec2b4e8680",
      "parents": [
        "e539d8fcd11af811db70707d47ea436d5621d0da"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 05 12:25:37 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:46 2008 +0200"
      },
      "message": "sched: fix cpuprio build bug\n\nthis patch was not built on !SMP:\n\n kernel/sched_rt.c: In function \u0027inc_rt_tasks\u0027:\n kernel/sched_rt.c:404: error: \u0027struct rq\u0027 has no member named \u0027online\u0027\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e539d8fcd11af811db70707d47ea436d5621d0da",
      "tree": "9bf41406ee7b635abf5a6769acd6a93cbd4df104",
      "parents": [
        "709d4b0c60f990bccf3e10ba7c6da407ad65c97f"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 05 10:28:00 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:44 2008 +0200"
      },
      "message": "sched: fix the cpuprio count really\n\nPeter pointed out that the last version of the \"fix\" was still one off\nunder certain circumstances. Use BITS_TO_LONG instead to get an\naccurate result.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "709d4b0c60f990bccf3e10ba7c6da407ad65c97f",
      "tree": "1d8c931a068f0957d52dc5cae75c7013138caa50",
      "parents": [
        "1f11eb6a8bc92536d9e93ead48fa3ffbd1478571"
      ],
      "author": {
        "name": "Gregory Haskins",
        "email": "ghaskins@novell.com",
        "time": "Wed Jun 04 15:04:10 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:43 2008 +0200"
      },
      "message": "sched: fix cpupri priocount\n\nA rounding error was pointed out by Peter Zijlstra which would result\nin the structure holding priorities to be off by one.\n\nSigned-off-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1f11eb6a8bc92536d9e93ead48fa3ffbd1478571",
      "tree": "40a123bd566bab8ddc726303e2725bae55b1a499",
      "parents": [
        "099f98c8a1f13501a98afbfff4756395a610581c"
      ],
      "author": {
        "name": "Gregory Haskins",
        "email": "ghaskins@novell.com",
        "time": "Wed Jun 04 15:04:05 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:42 2008 +0200"
      },
      "message": "sched: fix cpupri hotplug support\n\nThe RT folks over at RedHat found an issue w.r.t. hotplug support which\nwas traced to problems with the cpupri infrastructure in the scheduler:\n\nhttps://bugzilla.redhat.com/show_bug.cgi?id\u003d449676\n\nThis bug affects 23-rt12+, 24-rtX, 25-rtX, and sched-devel.  This patch\napplies to 25.4-rt4, though it should trivially apply to most cpupri enabled\nkernels mentioned above.\n\nIt turned out that the issue was that offline cpus could get inadvertently\nregistered with cpupri so that they were erroneously selected during\nmigration decisions.  The end result would be an OOPS as the offline cpu\nhad tasks routed to it.\n\nThis patch generalizes the old join/leave domain interface into an\nonline/offline interface, and adjusts the root-domain/hotplug code to\nutilize it.\n\nI was able to easily reproduce the issue prior to this patch, and am no\nlonger able to reproduce it after this patch.  I can offline cpus\nindefinately and everything seems to be in working order.\n\nThanks to Arnaldo (acme), Thomas, and Peter for doing the legwork to point\nme in the right direction.  Also thank you to Peter for reviewing the\nearly iterations of this patch.\n\nSigned-off-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "099f98c8a1f13501a98afbfff4756395a610581c",
      "tree": "7948f026ebd702b43575c74a7c839c632f66c67e",
      "parents": [
        "e29c98d12b3f02d6ac711c60b4a5f8a46d1cf19b"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Thu May 29 20:56:32 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:41 2008 +0200"
      },
      "message": "sched: print the sd-\u003elevel in sched_domain_debug code\n\nWhile printing out the visual representation of the sched-domains, print\nthe level (MC, SMT, CPU, NODE, ... ) of each of the sched_domains.\n\nCredit: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6d6bc0ad867c46896d0994bb039e7550ecb9b51d",
      "tree": "09d9d2cb0e8a6c344feb5ee441e8d470387303fa",
      "parents": [
        "e21f5b153b9b4a6775d7d41964e372e13a9178ab"
      ],
      "author": {
        "name": "Dhaval Giani",
        "email": "dhaval@linux.vnet.ibm.com",
        "time": "Fri May 30 14:23:45 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:38 2008 +0200"
      },
      "message": "sched: add comments for ifdefs in sched.c\n\nmake sched.c easier to read.\n\nSigned-off-by: Dhaval Giani \u003cdhaval@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "e21f5b153b9b4a6775d7d41964e372e13a9178ab",
      "tree": "2d57f30acb571f474ea1dc1c902882e01d4c8670",
      "parents": [
        "c7aceaba042702538b23cf4e0de1b2891ad8e671"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Fri May 23 09:05:58 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:37 2008 +0200"
      },
      "message": "sched: print module list in the \"scheduling while atomic\" warning\n\nFor the normal WARN_ON() etc we added a print-the-modules-list already,\nwhich is very useful to figure out candidates for certain types of bugs.\n\nThis patch adds the same print to the \"scheduling while atomic\" BUG warning,\nfor the same reason: when we get here it\u0027s very useful to see which modules\nare loaded, to narrow down the candidate code list.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: mingo@elte.hu\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "81d41d7ece23a1c3b4bcd1604026d3a06cc4dc79",
      "tree": "17d01a974c420cd0e32b27e8afda42af8416fc93",
      "parents": [
        "554ec22f075d46e4363520a407d2b7eeb5dfdd43"
      ],
      "author": {
        "name": "Rabin Vincent",
        "email": "rabin@rab.in",
        "time": "Sun May 11 05:55:33 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:34 2008 +0200"
      },
      "message": "sched: fix defined-but-unused warning\n\nFix this warning, which appears with !CONFIG_SMP:\nkernel/sched.c:1216: warning: `init_hrtick\u0027 defined but not used\n\nSigned-off-by: Rabin Vincent \u003crabin@rab.in\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "f7dcd80bbc8e7032443e6539ea1b830364f82200",
      "tree": "5454b3ba95981cf70d4a56cbfe40720b84e24b27",
      "parents": [
        "d07355f5def74d060333563b36ab51b89fd44cdd"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat May 24 23:20:38 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:32 2008 +0200"
      },
      "message": "namespacecheck: fixes in kernel/sched.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "d07355f5def74d060333563b36ab51b89fd44cdd",
      "tree": "e39af1fccaaa98b7ae4cc80628e8a8b69f73ebc1",
      "parents": [
        "6d299f1b53b84e2665f402d9bcc494800aba6386"
      ],
      "author": {
        "name": "Dmitry Adamushko",
        "email": "dmitry.adamushko@gmail.com",
        "time": "Mon May 12 21:21:15 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:30 2008 +0200"
      },
      "message": "sched: check for SD_SERIALIZE atomically in rebalance_domains()\n\nNothing really serious here, mainly just a matter of nit-picking :-/\n\nFrom: Dmitry Adamushko \u003cdmitry.adamushko@gmail.com\u003e\nFor CONFIG_SCHED_DEBUG \u0026\u0026 CONFIG_SYSCT configs, sd-\u003eflags can be altered\nwhile being manipulated in rebalance_domains(). Let\u0027s do an atomic check.\nWe rely here on the atomicity of read/write accesses for aligned words.\n\nSigned-off-by: Dmitry Adamushko \u003cdmitry.adamushko@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6d299f1b53b84e2665f402d9bcc494800aba6386",
      "tree": "52d44fb6e2fe84f180c7e47a0faa5da48be6ab26",
      "parents": [
        "6e0534f278199f1e3dd1049b9bc19a7a5b87ada1"
      ],
      "author": {
        "name": "Gregory Haskins",
        "email": "ghaskins@novell.com",
        "time": "Mon May 12 21:21:14 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:29 2008 +0200"
      },
      "message": "sched: fix SCHED_OTHER balance iterator to include all tasks\n\nThe currently logic inadvertently skips the last task on the run-queue,\nresulting in missed balance opportunities.\n\nSigned-off-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nSigned-off-by: David Bahi \u003cdbahi@novell.com\u003e\nCC: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6e0534f278199f1e3dd1049b9bc19a7a5b87ada1",
      "tree": "25f4da14ec32927742db9f599ac779b4e83d1763",
      "parents": [
        "f333fdc9098b71e2687e4e9b6349fcb352960d66"
      ],
      "author": {
        "name": "Gregory Haskins",
        "email": "ghaskins@novell.com",
        "time": "Mon May 12 21:21:01 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:28 2008 +0200"
      },
      "message": "sched: use a 2-d bitmap for searching lowest-pri CPU\n\nThe current code use a linear algorithm which causes scaling issues\non larger SMP machines.  This patch replaces that algorithm with a\n2-dimensional bitmap to reduce latencies in the wake-up path.\n\nSigned-off-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nAcked-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "f333fdc9098b71e2687e4e9b6349fcb352960d66",
      "tree": "0abe4a006b351aa2fc675e5fcc227aeea67c0ba6",
      "parents": [
        "45c01e824991b2dd0a332e19efc4901acb31209f"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Mon May 12 21:20:55 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:27 2008 +0200"
      },
      "message": "sched: make !hrtick faster\n\nit is safe to ignore timers and flags when the feature is disabled.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "45c01e824991b2dd0a332e19efc4901acb31209f",
      "tree": "20d889b97636410c6ae425ff5dec90479d8cbb1a",
      "parents": [
        "39b945a37bac2b692773a470890c8ba301485b15"
      ],
      "author": {
        "name": "Gregory Haskins",
        "email": "ghaskins@novell.com",
        "time": "Mon May 12 21:20:41 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 06 15:19:25 2008 +0200"
      },
      "message": "sched: prioritize non-migratable tasks over migratable ones\n\nDmitry Adamushko pointed out a known flaw in the rt-balancing algorithm\nthat could allow suboptimal balancing if a non-migratable task gets\nqueued behind a running migratable one.  It is discussed in this thread:\n\nhttp://lkml.org/lkml/2008/4/22/296\n\nThis issue has been further exacerbated by a recent checkin to\nsched-devel (git-id 5eee63a5ebc19a870ac40055c0be49457f3a89a3).\n\n\u003eFrom a pure priority standpoint, the run-queue is doing the \"right\"\nthing. Using Dmitry\u0027s nomenclature, if T0 is on cpu1 first, and T1\nwakes up at equal or lower priority (affined only to cpu1) later, it\n*should* wait for T0 to finish.  However, in reality that is likely\nsuboptimal from a system perspective if there are other cores that\ncould allow T0 and T1 to run concurrently.  Since T1 can not migrate,\nthe only choice for higher concurrency is to try to move T0.  This is\nnot something we addessed in the recent rt-balancing re-work.\n\nThis patch tries to enhance the balancing algorithm by accomodating this\nscenario.  It accomplishes this by incorporating the migratability of a\ntask into its priority calculation.  Within a numerical tsk-\u003eprio, a\nnon-migratable task is logically higher than a migratable one.  We\nmaintain this by introducing a new per-priority queue (xqueue, or\nexclusive-queue) for holding non-migratable tasks.  The scheduler will\ndraw from the xqueue over the standard shared-queue (squeue) when\navailable.\n\nThere are several details for utilizing this properly.\n\n1) During task-wake-up, we not only need to check if the priority\n   preempts the current task, but we also need to check for this\n   non-migratable condition.  Therefore, if a non-migratable task wakes\n   up and sees an equal priority migratable task already running, it\n   will attempt to preempt it *if* there is a likelyhood that the\n   current task will find an immediate home.\n\n2) Tasks only get this non-migratable \"priority boost\" on wake-up.  Any\n   requeuing will result in the non-migratable task being queued to the\n   end of the shared queue.  This is an attempt to prevent the system\n   from being completely unfair to migratable tasks during things like\n   SCHED_RR timeslicing.\n\nI am sure this patch introduces potentially \"odd\" behavior if you\nconcoct a scenario where a bunch of non-migratable threads could starve\nmigratable ones given the right pattern.  I am not yet convinced that\nthis is a problem since we are talking about tasks of equal RT priority\nanyway, and there never is much in the way of guarantees against\nstarvation under that scenario anyway. (e.g. you could come up with a\nsimilar scenario with a specific timing environment verses an affinity\nenvironment).  I can be convinced otherwise, but for now I think this is\n\"ok\".\n\nSigned-off-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nCC: Dmitry Adamushko \u003cdmitry.adamushko@gmail.com\u003e\nCC: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "3b5b60b821e0e97531df9b0ba295283ab5a8859a",
      "tree": "e94b3e4945f4b5bb592989445ebbda790a047b96",
      "parents": [
        "d430a227d272fa514bade388bf511dba4ec2962a",
        "b33cb815b565a94c654a0fe8e62e36f5b4053888"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 04 08:08:27 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 04 08:08:27 2008 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb:\n  kgdbts: Use HW breakpoints with CONFIG_DEBUG_RODATA\n  kgdb: use common ascii helpers and put_unaligned_be32 helper\n"
    },
    {
      "commit": "ca05a99a54db1db5bca72eccb5866d2a86f8517f",
      "tree": "b39fba6604da4b4f77103d2769bb783118b9b508",
      "parents": [
        "cc94bc37d5e02aaf8a6409a28e3c62bbd479b9a8"
      ],
      "author": {
        "name": "Andrew G. Morgan",
        "email": "morgan@kernel.org",
        "time": "Tue May 27 22:05:17 2008 -0700"
      },
      "committer": {
        "name": "Chris Wright",
        "email": "chrisw@sous-sol.org",
        "time": "Sat May 31 16:36:16 2008 -0700"
      },
      "message": "capabilities: remain source compatible with 32-bit raw legacy capability support.\n\nSource code out there hard-codes a notion of what the\n_LINUX_CAPABILITY_VERSION #define means in terms of the semantics of the\nraw capability system calls capget() and capset().  Its unfortunate, but\ntrue.\n\nSince the confusing header file has been in a released kernel, there is\nsoftware that is erroneously using 64-bit capabilities with the semantics\nof 32-bit compatibilities.  These recently compiled programs may suffer\ncorruption of their memory when sys_getcap() overwrites more memory than\nthey are coded to expect, and the raising of added capabilities when using\nsys_capset().\n\nAs such, this patch does a number of things to clean up the situation\nfor all. It\n\n  1. forces the _LINUX_CAPABILITY_VERSION define to always retain its\n     legacy value.\n\n  2. adopts a new #define strategy for the kernel\u0027s internal\n     implementation of the preferred magic.\n\n  3. deprecates v2 capability magic in favor of a new (v3) magic\n     number. The functionality of v3 is entirely equivalent to v2,\n     the only difference being that the v2 magic causes the kernel\n     to log a \"deprecated\" warning so the admin can find applications\n     that may be using v2 inappropriately.\n\n[User space code continues to be encouraged to use the libcap API which\nprotects the application from details like this.  libcap-2.10 is the first\nto support v3 capabilities.]\n\nFixes issue reported in https://bugzilla.redhat.com/show_bug.cgi?id\u003d447518.\nThanks to Bojan Smojver for the report.\n\n[akpm@linux-foundation.org: s/depreciate/deprecate/g]\n[akpm@linux-foundation.org: be robust about put_user size]\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Andrew G. Morgan \u003cmorgan@kernel.org\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: Bojan Smojver \u003cbojan@rexursive.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\n"
    },
    {
      "commit": "a7f75d3bed2871655d9806c62a5d6f46552b9a4a",
      "tree": "db44829cc8600184fb9edede658016349a5f071e",
      "parents": [
        "3897b82c3586e774260d6bca56cc1efca79cd335",
        "6715930654e06c4d2e66e718ea159079f71838f4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 29 09:26:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 29 09:26:17 2008 -0700"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: re-tune NUMA topologies\n  sched: stop wake_affine from causing serious imbalance\n  sched: fix sched_clock_cpu()\n  revert (\"sched: fair-group: SMP-nice for group scheduling\")\n  sched: cleanup\n  show_schedstat(): fix memleak\n  sched: unite unlikely pairs in rt_policy() and schedule_debug()\n  revert (\"sched: fair: weight calculations\")\n"
    },
    {
      "commit": "6715930654e06c4d2e66e718ea159079f71838f4",
      "tree": "6a0a19fb62f3e99cb5f6bf6c34ae541f7c30fb42",
      "parents": [
        "ea3f01f8afd3bc5daff915cc4ea5cc5ea9e7d427",
        "e490517a039a99d692cb3a5561941b0a5f576172"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 29 16:05:05 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 29 16:05:05 2008 +0200"
      },
      "message": "Merge commit \u0027linus/master\u0027 into sched-fixes-for-linus\n"
    },
    {
      "commit": "b3137bc8e77962a8e3b4dfdc1bcfd38e437bd278",
      "tree": "5131501b5575f933074cc89545ff997d277d1d57",
      "parents": [
        "a381759d6ad5c5dea5a981918e0b4493e9b66ac7"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Thu May 29 11:11:41 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 29 11:29:20 2008 +0200"
      },
      "message": "sched: stop wake_affine from causing serious imbalance\n\nPrevent short-running wakers of short-running threads from overloading a single\ncpu via wakeup affinity, and wire up disconnected debug option.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a381759d6ad5c5dea5a981918e0b4493e9b66ac7",
      "tree": "059df197fe2974c655fc098e3aaf6968a3cc2a3c",
      "parents": [
        "6363ca57c76b7b83639ca8c83fc285fa26a7880e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu May 29 10:07:15 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 29 11:29:19 2008 +0200"
      },
      "message": "sched: fix sched_clock_cpu()\n\nMake sched_clock_cpu() return 0 before it has been initialized and avoid\ncorrupting its state due to doing so.\n\nThis fixes the weird printk timestamp jump reported.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n"
    },
    {
      "commit": "6363ca57c76b7b83639ca8c83fc285fa26a7880e",
      "tree": "b8630b4af286409efdd648920a546fae24d4db88",
      "parents": [
        "4285f594f84d1f0641fc962d00e6638dec4a19c4"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 29 11:28:57 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 29 11:28:57 2008 +0200"
      },
      "message": "revert (\"sched: fair-group: SMP-nice for group scheduling\")\n\nYanmin Zhang reported:\n\nComparing with 2.6.25, volanoMark has big regression with kernel 2.6.26-rc1.\nIt\u0027s about 50% on my 8-core stoakley, 16-core tigerton, and Itanium Montecito.\n\nWith bisect, I located the following patch:\n\n| 18d95a2832c1392a2d63227a7a6d433cb9f2037e is first bad commit\n| commit 18d95a2832c1392a2d63227a7a6d433cb9f2037e\n| Author: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n| Date:   Sat Apr 19 19:45:00 2008 +0200\n|\n|     sched: fair-group: SMP-nice for group scheduling\n\nRevert it so that we get v2.6.25 behavior.\n\nBisected-by: Yanmin Zhang \u003cyanmin_zhang@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4285f594f84d1f0641fc962d00e6638dec4a19c4",
      "tree": "cb00af70f896e89bda957ddbf5123fe551d96698",
      "parents": [
        "c6fba5451a84143f34056a465e72ba187fcc651c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri May 16 17:47:14 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 29 11:25:15 2008 +0200"
      },
      "message": "sched: cleanup\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c6fba5451a84143f34056a465e72ba187fcc651c",
      "tree": "b552b99533703a0e63b809f6fa77f81255c384bc",
      "parents": [
        "3f33a7ce9567ded582af1ab71f9802165fe12f09"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed May 14 16:22:59 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 29 11:25:15 2008 +0200"
      },
      "message": "show_schedstat(): fix memleak\n\nThe Coverity checker spotted a memleak introduced by commit\n39106dcf85285e78f3b290022122c76f851379b8 (cpumask: use new cpus_scnprintf\nfunction).\n\nIt seems the kfree() got lost between v2 and v3 of this patch...\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3f33a7ce9567ded582af1ab71f9802165fe12f09",
      "tree": "04304757dc84bc36400f306677d3452635cf9f74",
      "parents": [
        "f9305d4a0968201b2818dbed0dc8cb0d4ee7aeb3"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Tue May 13 23:44:11 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 29 11:25:14 2008 +0200"
      },
      "message": "sched: unite unlikely pairs in rt_policy() and schedule_debug()\n\nRemoves obfuscation and may improve assembly.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f9305d4a0968201b2818dbed0dc8cb0d4ee7aeb3",
      "tree": "e171e568f04bd25c7c2ff99b5ef673b917b6eae6",
      "parents": [
        "f26a3988917913b3d11b2bd741601a2c64ab9204"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 29 11:23:17 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 29 11:24:01 2008 +0200"
      },
      "message": "revert (\"sched: fair: weight calculations\")\n\nYanmin Zhang reported:\n\nComparing with kernel 2.6.25, sysbench+mysql(oltp, readonly) has many\nregressions with 2.6.26-rc1:\n\n 1) 8-core stoakley: 28%;\n 2) 16-core tigerton: 20%;\n 3) Itanium Montvale: 50%.\n\nBisect located this patch:\n\n| 8f1bc385cfbab474db6c27b5af1e439614f3025c is first bad commit\n| commit 8f1bc385cfbab474db6c27b5af1e439614f3025c\n| Author: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n| Date:   Sat Apr 19 19:45:00 2008 +0200\n|\n|     sched: fair: weight calculations\n\nRevert it to the 2.6.25 state.\n\nBisected-by: Yanmin Zhang \u003cyanmin_zhang@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "827e609b4581282b98bdf7666f6e93ff1bd1a63e",
      "tree": "52b998e4204e77eb7a0d662f7ff04460d074164c",
      "parents": [
        "0a2ce2ffc358da96792d514c1024b72c52be9cc1"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed May 28 12:49:56 2008 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed May 28 12:49:56 2008 -0500"
      },
      "message": "kgdb: use common ascii helpers and put_unaligned_be32 helper\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "a82c53a0e3f57f02782330372b7adad67b417645",
      "tree": "3a4e65ab1a2420f8fc5d0091a6992d6f7e430ad8",
      "parents": [
        "1ec7d99c16e69a9ed8ffeaa6c1846025b84bebad"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "zanussi@comcast.net",
        "time": "Fri May 09 13:28:36 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 28 14:49:27 2008 +0200"
      },
      "message": "splice: fix sendfile() issue with relay\n\nSplice isn\u0027t always incrementing the ppos correctly, which broke\nrelay splice.\n\nSigned-off-by: Tom Zanussi \u003czanussi@comcast.net\u003e\nTested-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "cbaffba12ce08beb3e80bfda148ee0fa14aac188",
      "tree": "b35f29814b46593d864e8c8921e9eccac5a5a173",
      "parents": [
        "c8e85b4f4b9ee23bf0e79bdeb3da274a0f9c663f"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon May 26 20:55:42 2008 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 26 10:37:07 2008 -0700"
      },
      "message": "posix timers: discard SI_TIMER signals on exec\n\nBased on Roland\u0027s patch. This approach was suggested by Austin Clements\nfrom the very beginning, and then by Linus.\n\nAs Austin pointed out, the execing task can be killed by SI_TIMER signal\nbecause exec flushes the signal handlers, but doesn\u0027t discard the pending\nsignals generated by posix timers. Perhaps not a bug, but people find this\nsurprising. See http://bugzilla.kernel.org/show_bug.cgi?id\u003d10460\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Austin Clements \u003camdragon+kernelbugzilla@mit.edu\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c8e85b4f4b9ee23bf0e79bdeb3da274a0f9c663f",
      "tree": "5eadfdc177f24261379f36798c3366df9be4a00a",
      "parents": [
        "84a881657d391121cd88c37f0a312dec3528fa44"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon May 26 20:55:42 2008 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 26 10:37:06 2008 -0700"
      },
      "message": "posix timers: sigqueue_free: don\u0027t free sigqueue if it is queued\n\nCurrently sigqueue_free() removes sigqueue from list, but doesn\u0027t cancel the\npending signal. This is not consistent, the task should either receive the\n\"full\" signal along with siginfo_t, or it shouldn\u0027t receive the signal at all.\n\nChange sigqueue_free() to clear SIGQUEUE_PREALLOC but leave sigqueue on list\nif it is queued.\n\nThis is a user-visible change. If the signal is blocked, it stays queued\nafter sys_timer_delete() until unblocked with the \"stale\" si_code/si_value,\nand of course it is still counted wrt RLIMIT_SIGPENDING which also limits\nthe number of posix timers.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Austin Clements \u003camdragon+kernelbugzilla@mit.edu\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5c02b575780d0d785815a1e7b79a98edddee895a",
      "tree": "d77562541d5bdf30c19219f0af0db59162359963",
      "parents": [
        "12d15f0d51d47cec39d1d7250e81573c5cbd8b5d"
      ],
      "author": {
        "name": "Cedric Le Goater",
        "email": "clg@fr.ibm.com",
        "time": "Fri May 23 13:05:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 24 09:56:14 2008 -0700"
      },
      "message": "cgroups: remove node_ prefix_from ns subsystem\n\nThis is a slight change in the namespace cgroup subsystem api.\n\nThe change is that previously when cgroup_clone() was called (currently\nonly from the unshare path in ns_proxy cgroup, you\u0027d get a new group named\n\"node_$pid\" whereas now you\u0027ll get a group named after just your pid.)\n\nThe only users who would notice it are those who are using the ns_proxy\ncgroup subsystem to auto-create cgroups when namespaces are unshared -\nsomething of an experimental feature, which I think really needs more\ncomplete container/namespace support in order to be useful.  I suspect the\nonly users are Cedric and Serge, or maybe a few others on\ncontainers@lists.linux-foundation.org.  And in fact it would only be\nnoticed by the users who make the assumption about how the name is\ngenerated, rather than getting it from the /proc/\u003cpid\u003e/cgroups file for\nthe process in question.\n\nWhether the change is actually needed or not I\u0027m fairly agnostic on, but I\nguess it is more elegant to just use the pid as the new group name rather\nthan adding a fairly arbitrary \"node_\" prefix on the front.\n\n[menage@google.com: provided changelog]\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: \"Paul Menage\" \u003cmenage@google.com\u003e\nCc: \"Serge E. Hallyn\" \u003cserue@us.ibm.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7b26655f6208fdefa9ab0adc016116324f8d4ba8",
      "tree": "07f081c52da72a9730861c74ebea86ea48d402e2",
      "parents": [
        "f99c90094bffbe1cf38ef66f198a808c14a02d56"
      ],
      "author": {
        "name": "Shi Weihua",
        "email": "shiwh@cn.fujitsu.com",
        "time": "Fri May 23 13:04:59 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 24 09:56:13 2008 -0700"
      },
      "message": "sys_prctl(): fix return of uninitialized value\n\nIf none of the switch cases match, the PR_SET_PDEATHSIG and\nPR_SET_DUMPABLE cases of the switch statement will never write to local\nvariable `error\u0027.\n\nSigned-off-by: Shi Weihua \u003cshiwh@cn.fujitsu.com\u003e\nCc: Andrew G. Morgan \u003cmorgan@kernel.org\u003e\nAcked-by: \"Serge E. Hallyn\" \u003cserue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "da7978b0348d497688541e2d2f5739aa2a2c334f",
      "tree": "f4f55bf4293ff203f598e7a57959da1c5a7ad295",
      "parents": [
        "dfc7064500061677720fa26352963c772d3ebe6b"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri May 23 13:04:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 24 09:56:10 2008 -0700"
      },
      "message": "signals: fix sigqueue_free() vs __exit_signal() race\n\n__exit_signal() does flush_sigqueue(tsk-\u003epending) outside of -\u003esiglock.\nThis can race with another thread doing sigqueue_free(), we can free the\nsame SIGQUEUE_PREALLOC sigqueue twice or corrupt the pending-\u003elist.\n\nNote that even sys_exit_group() can trigger this race, not only\nsys_timer_delete().\n\nMove the callsite of flush_sigqueue(tsk-\u003epending) under -\u003esiglock.\n\nThis patch doesn\u0027t touch flush_sigqueue(-\u003eshared_pending) below, it is\ncalled when there are no other threads which can play with signals, and\nsigqueue_free() can\u0027t be used outside of our thread group.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3401a61e16a5b852d4e353c8850c857105a67a9c",
      "tree": "5e05731a790c48512c7fe41c5fc83b0fee6081e3",
      "parents": [
        "4d2e7d0d77e4e1e8a21cc990c607985fdba20e66"
      ],
      "author": {
        "name": "Christian Borntraeger",
        "email": "borntraeger@de.ibm.com",
        "time": "Thu May 08 15:20:38 2008 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri May 23 13:09:34 2008 +1000"
      },
      "message": "stop_machine: make stop_machine_run more virtualization friendly\n\nOn kvm I have seen some rare hangs in stop_machine when I used more guest\ncpus than hosts cpus. e.g. 32 guest cpus on 1 host cpu triggered the\nhang quite often. I could also reproduce the problem on a 4 way z/VM host with\na 64 way guest.\n\nIt turned out that the guest was consuming all available cpus mostly for\nspinning on scheduler locks like rq-\u003elock. This is expected as the threads are\ncalling yield all the time.\nThe problem is now, that the host scheduling decisings together with the guest\nscheduling decisions and spinlocks not being fair managed to create an\ninteresting scenario similar to a live lock. (Sometimes the hang resolved\nitself after some minutes)\n\nChanging stop_machine to yield the cpu to the hypervisor when yielding inside\nthe guest fixed the problem for me. While I am not completely happy with this\npatch, I think it causes no harm and it really improves the situation for me.\n\nI used cpu_relax for yielding to the hypervisor, does that work on all\narchitectures?\n\np.s.: If you want to reproduce the problem, cpu hotplug and kprobes use\nstop_machine_run and both triggered the problem after some retries.\n\nSigned-off-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nCC: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    }
  ],
  "next": "34e4e2fef4c7a2f7699b3d25e48d871d3ac4c3e7"
}
