)]}'
{
  "log": [
    {
      "commit": "b87f17242da6b2ac6db2d179b2f93fb84cff2fbe",
      "tree": "7c90ccd5b3a307670f939b944a2bf32d523a3b15",
      "parents": [
        "57fdc26d4a734a3e00c6b2fc0e1e40ff8da4dc31"
      ],
      "author": {
        "name": "Bharata B Rao",
        "email": "bharata@linux.vnet.ibm.com",
        "time": "Thu Sep 25 09:53:54 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Sep 25 11:24:11 2008 +0200"
      },
      "message": "sched: maintain only task entities in cfs_rq-\u003etasks list\n\ncfs_rq-\u003etasks list is used by the load balancer to iterate\nover all the tasks. Currently it holds all the entities\n(both task and group entities) because of which there is\na need to check for group entities explicitly during load\nbalancing. This patch changes the cfs_rq-\u003etasks list to\nhold only task entities.\n\nSigned-off-by: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "57fdc26d4a734a3e00c6b2fc0e1e40ff8da4dc31",
      "tree": "912951e86391fc23f33981f88dce7cf374f136e1",
      "parents": [
        "4653f803e6e0d970ffeac0efd2c01743eb6c5228"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Sep 23 15:33:45 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 23 16:23:17 2008 +0200"
      },
      "message": "sched: fixup buddy selection\n\nWe should set the buddy even though we might already have the\nTIF_RESCHED flag set.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4653f803e6e0d970ffeac0efd2c01743eb6c5228",
      "tree": "5de138ab4aa31c2df68062209f0b166a94739843",
      "parents": [
        "78333cdd0e472180743d35988e576d6ecc6f6ddb"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Sep 23 15:33:44 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 23 16:23:16 2008 +0200"
      },
      "message": "sched: more sanity checks on the bandwidth settings\n\nWhile playing around with it, I noticed we missed some sanity checks.\nAlso add some comments while we\u0027re there.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "78333cdd0e472180743d35988e576d6ecc6f6ddb",
      "tree": "e8fdb24dce820b62d96c368f20523b4eabc676be",
      "parents": [
        "940959e93949e839c14f8ddc3b9b0e34a2ab6e29"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Sep 23 15:33:43 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 23 16:23:16 2008 +0200"
      },
      "message": "sched: add some comments to the bandwidth code\n\nHopefully clarify some of this code a little.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "940959e93949e839c14f8ddc3b9b0e34a2ab6e29",
      "tree": "3566ce5a8bb8db206193377bca37f5877b70adf6",
      "parents": [
        "63e5c39859a41591662466028c4d1281c033c05a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Sep 23 15:33:42 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 23 16:23:15 2008 +0200"
      },
      "message": "sched: fixlet for group load balance\n\nWe should not only correct the increment for the initial group, but should\nbe consistent and do so for all the groups we encounter.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "63e5c39859a41591662466028c4d1281c033c05a",
      "tree": "1fbb0c2b76673e9557688ee607aa61d92855bebe",
      "parents": [
        "695698500912c4479ddf4723e492de3970ff8530",
        "fa748203175de7c08f2df80e5a0eeca40329b5e2",
        "c8bfff6dd4d41834f4952cbc49e28e31906a6188"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 23 16:23:05 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 23 16:23:05 2008 +0200"
      },
      "message": "Merge branches \u0027sched/urgent\u0027 and \u0027sched/rt\u0027 into sched/devel\n"
    },
    {
      "commit": "695698500912c4479ddf4723e492de3970ff8530",
      "tree": "b84c708843998d2124573b809b8618a4e304e253",
      "parents": [
        "1a73ef6ac3f4b44abc9d1875eb9240d7524a7cf7"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Sep 23 14:54:23 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 23 14:54:23 2008 +0200"
      },
      "message": "sched: rework wakeup preemption\n\nRework the wakeup preemption to work on real runtime instead of\nthe virtual runtime. This greatly simplifies the code.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "006c75f146e58e080d2b2725a6664f71886e112b",
      "tree": "63d4e651021422aa1b316568661c6a104aeb2ba1",
      "parents": [
        "caea8a03702c147e8ae90da0801e7ba8297b1d46"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Sep 22 14:55:46 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 23 11:02:31 2008 +0200"
      },
      "message": "sched: clarify ifdef tangle\n\n- Add some comments to try to make the ifdef puzzle a bit clearer\n\n- Explicitly inline one of the three init_hrtick() implementations.\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fa748203175de7c08f2df80e5a0eeca40329b5e2",
      "tree": "bead1aac37160b8232218bd947188a6ff5df2596",
      "parents": [
        "cec5eb7be3a104fffd27ca967ee8e15a123050e2"
      ],
      "author": {
        "name": "Rakib Mullick",
        "email": "rakib.mullick@gmail.com",
        "time": "Mon Sep 22 14:55:45 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 23 11:02:13 2008 +0200"
      },
      "message": "sched: fix init_hrtick() section mismatch warning\n\nLD      kernel/built-in.o\nWARNING: kernel/built-in.o(.text+0x326): Section mismatch in reference\nfrom the function init_hrtick() to the variable\n.cpuinit.data:hotplug_hrtick_nb.8\nThe function init_hrtick() references\nthe variable __cpuinitdata hotplug_hrtick_nb.8.\nThis is often because init_hrtick lacks a __cpuinitdata\nannotation or the annotation of hotplug_hrtick_nb.8 is wrong.\n\nSigned-off-by: Md.Rakib H. Mullick \u003crakib.mullick@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "caea8a03702c147e8ae90da0801e7ba8297b1d46",
      "tree": "7ff0746c3dbcc73bc241957c2b3149bcf8901fb2",
      "parents": [
        "f681bbd656b01439be904250a1581ca9c27505a1"
      ],
      "author": {
        "name": "Chris Friesen",
        "email": "cfriesen@nortel.com",
        "time": "Mon Sep 22 11:06:09 2008 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 22 19:43:10 2008 +0200"
      },
      "message": "sched: fix list traversal to use _rcu variant\n\nload_balance_fair() calls rcu_read_lock() but then traverses the list\n using the regular list traversal routine.  This patch converts the\nlist traversal to use the _rcu version.\n\nSigned-off-by: Chris Friesen \u003ccfriesen@nortel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f681bbd656b01439be904250a1581ca9c27505a1",
      "tree": "4cf4690c4005c3f1c1f98020af62b03b69dcc85a",
      "parents": [
        "15afe09bf496ae10c989e1a375a6b5da7bd3e16e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 22 16:29:00 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 22 16:29:00 2008 +0200"
      },
      "message": "sched: turn off WAKEUP_OVERLAP\n\nWAKEUP_OVERLAP is not a winner on a 16way box, running psql+sysbench:\n\n       .27-rc7-NO_WAKEUP_OVERLAP  .27-rc7-WAKEUP_OVERLAP\n-------------------------------------------------\n    1:             694              811    +14.39%\n    2:            1454             1427    -1.86%\n    4:            3017             3070    +1.70%\n    8:            5694             5808    +1.96%\n   16:           10592            10612    +0.19%\n   32:            9693             9647    -0.48%\n   64:            8507             8262    -2.97%\n  128:            8402             7087    -18.55%\n  256:            8419             5124    -64.30%\n  512:            7990             3671    -117.62%\n-------------------------------------------------\n  SUM:           64466            55524    -16.11%\n\n... so turn it off by default.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "15afe09bf496ae10c989e1a375a6b5da7bd3e16e",
      "tree": "4565659d1084e357eea42e6321a4d304ac950faa",
      "parents": [
        "09b22a2f678ae733801b888c44756d0abd686b8a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Sat Sep 20 23:38:02 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 22 16:28:32 2008 +0200"
      },
      "message": "sched: wakeup preempt when small overlap\n\nLin Ming reported a 10% OLTP regression against 2.6.27-rc4.\n\nThe difference seems to come from different preemption agressiveness,\nwhich affects the cache footprint of the workload and its effective\ncache trashing.\n\nAggresively preempt a task if its avg overlap is very small, this should\navoid the task going to sleep and find it still running when we schedule\nback to it - saving a wakeup.\n\nReported-by: Lin Ming \u003cming.m.lin@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b4df9d88a62c6db4cee0d96507a27527bf205dde",
      "tree": "ebd97fe13e070bff1f5b24d3de8b26ad3b7cf056",
      "parents": [
        "902f2ac9da7975a5a04fc835860f2a7096c481d3",
        "ec5d498991e87c74730509508b25c3959192b7e7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 19 16:17:12 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 19 16:17:12 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: fix deadlock in setting scheduler parameter to zero\n  sched: fix 2.6.27-rc5 couldn\u0027t boot on tulsa machine randomly\n"
    },
    {
      "commit": "902f2ac9da7975a5a04fc835860f2a7096c481d3",
      "tree": "9197a23f5a94ed7e0987e40e8191a3652df10263",
      "parents": [
        "06d4a22be3af824cfcbf53ac84d95bd700a949c2",
        "2344abbcbdb82140050e8be29d3d55e4f6fe860b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 19 16:16:50 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 19 16:16:50 2008 -0700"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  clockevents: make device shutdown robust\n  clocksource, acpi_pm.c: fix check for monotonicity\n  clockevents: remove WARN_ON which was used to gather information\n"
    },
    {
      "commit": "2344abbcbdb82140050e8be29d3d55e4f6fe860b",
      "tree": "46c1842fc2a47aa4d7ee0c2c558f54bc50772b69",
      "parents": [
        "f1926ce63b996b42772b39e4b47bb4ef4ba748b4"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 16 11:32:50 2008 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 16 13:47:02 2008 -0700"
      },
      "message": "clockevents: make device shutdown robust\n\nThe device shut down does not cleanup the next_event variable of the\nclock event device. So when the device is reactivated the possible\nstale next_event value can prevent the device to be reprogrammed as it\nclaims to wait on a event already.\n\nThis is the root cause of the resurfacing suspend/resume problem,\nwhere systems need key press to come back to life.\n\nFix this by setting next_event to KTIME_MAX when the device is shut\ndown. Use a separate function for shutdown which takes care of that\nand only keep the direct set mode call in the broadcast code, where we\ncan not touch the next_event value.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "4e74339af6a59c061cf02f1ac497766bca1de19a",
      "tree": "0903456d2aced7e2e9534b3b3d1c5f58e1056b53",
      "parents": [
        "dea420ce0e2973e8ef1fd11fde6804c8d03a82ad"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sat Sep 13 02:33:08 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 13 14:41:50 2008 -0700"
      },
      "message": "cpuset: avoid changing cpuset\u0027s cpus when -errno returned\n\nAfter the patch:\n\ncommit 0b2f630a28d53b5a2082a5275bc3334b10373508\nAuthor: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nDate:   Fri Jul 25 01:47:21 2008 -0700\n\n    cpusets: restructure the function update_cpumask() and update_nodemask()\n\nIt might happen that \u0027echo 0 \u003e /cpuset/sub/cpus\u0027 returned failure but \u0027cpus\u0027\nhas been changed, because cpus was changed before calling heap_init() which\nmay return -ENOMEM.\n\nThis patch restores the orginal behavior.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "09b22a2f678ae733801b888c44756d0abd686b8a",
      "tree": "6ca52d4011ce6b11c6450d3a574ea6a53cc0d339",
      "parents": [
        "3ba35573ad9a149a3af19625b502679283382f6b",
        "adee14b2e1557d0a8559f29681732d05a89dfc35"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Sep 11 13:37:28 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Sep 11 13:37:28 2008 +0200"
      },
      "message": "Merge commit \u0027v2.6.27-rc6\u0027 into sched/devel\n"
    },
    {
      "commit": "ec5d498991e87c74730509508b25c3959192b7e7",
      "tree": "fb5e9eb769ea7a6468f3c9de3c5d9865ba2d70de",
      "parents": [
        "baf25731e54d06eb13dc4eda78c6dc7da4ce84e8"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Wed Sep 10 17:00:19 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Sep 11 09:39:18 2008 +0200"
      },
      "message": "sched: fix deadlock in setting scheduler parameter to zero\n\nAndrei Gusev wrote:\n\n\u003e I played witch scheduler settings. After doing something like:\n\u003e echo -n 1000000 \u003esched_rt_period_us\n\u003e\n\u003e command is locked. I found in kernel.log:\n\u003e\n\u003e Sep 11 00:39:34 zaratustra\n\u003e Sep 11 00:39:34 zaratustra Pid: 4495, comm: bash Tainted: G        W\n\u003e (2.6.26.3 #12)\n\u003e Sep 11 00:39:34 zaratustra EIP: 0060:[\u003cc0213fc7\u003e] EFLAGS: 00210246 CPU: 0\n\u003e Sep 11 00:39:34 zaratustra EIP is at div64_u64+0x57/0x80\n\u003e Sep 11 00:39:34 zaratustra EAX: 0000389f EBX: 00000000 ECX: 00000000\n\u003e EDX: 00000000\n\u003e Sep 11 00:39:34 zaratustra ESI: d9800000 EDI: d9800000 EBP: 0000389f\n\u003e ESP: ea7a6edc\n\u003e Sep 11 00:39:34 zaratustra DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068\n\u003e Sep 11 00:39:34 zaratustra Process bash (pid: 4495, ti\u003dea7a6000\n\u003e task\u003dea744000 task.ti\u003dea7a6000)\n\u003e Sep 11 00:39:34 zaratustra Stack: 00000000 000003e8 d9800000 0000389f\n\u003e c0119042 00000000 00000000 00000001\n\u003e Sep 11 00:39:34 zaratustra 00000000 00000000 ea7a6f54 00010000 00000000\n\u003e c04d2e80 00000001 000e7ef0\n\u003e Sep 11 00:39:34 zaratustra c01191a3 00000000 00000000 ea7a6fa0 00000001\n\u003e ffffffff c04d2e80 ea5b2480\n\u003e Sep 11 00:39:34 zaratustra Call Trace:\n\u003e Sep 11 00:39:34 zaratustra [\u003cc0119042\u003e] __rt_schedulable+0x52/0x130\n\u003e Sep 11 00:39:34 zaratustra [\u003cc01191a3\u003e] sched_rt_handler+0x83/0x120\n\u003e Sep 11 00:39:34 zaratustra [\u003cc01a76a6\u003e] proc_sys_call_handler+0xb6/0xd0\n\u003e Sep 11 00:39:34 zaratustra [\u003cc01a76c0\u003e] proc_sys_write+0x0/0x20\n\u003e Sep 11 00:39:34 zaratustra [\u003cc01a76d9\u003e] proc_sys_write+0x19/0x20\n\u003e Sep 11 00:39:34 zaratustra [\u003cc016cc68\u003e] vfs_write+0xa8/0x140\n\u003e Sep 11 00:39:34 zaratustra [\u003cc016cdd1\u003e] sys_write+0x41/0x80\n\u003e Sep 11 00:39:34 zaratustra [\u003cc0103051\u003e] sysenter_past_esp+0x6a/0x91\n\u003e Sep 11 00:39:34 zaratustra \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\u003e Sep 11 00:39:34 zaratustra Code: c8 41 0f ad f3 d3 ee f6 c1 20 0f 45 de\n\u003e 31 f6 0f ad ef d3 ed f6 c1 20 0f 45 fd 0f 45 ee 31 c9 39 eb 89 fe 89 ea\n\u003e 77 08 89 e8 31 d2 \u003cf7\u003e f3 89 c1 89 f0 8b 7c 24 08 f7 f3 8b 74 24 04 89\n\u003e ca 8b 1c 24\n\u003e Sep 11 00:39:34 zaratustra EIP: [\u003cc0213fc7\u003e] div64_u64+0x57/0x80 SS:ESP\n\u003e 0068:ea7a6edc\n\u003e Sep 11 00:39:34 zaratustra ---[ end trace 4eaa2a86a8e2da22 ]---\n\nfix the boundary condition.\n\nsysctl_sched_rt_period\u003d0 makes exception at to_ratio().\n\nSigned-off-by: Hiroshi Shimamoto \u003ch-shimamoto@ct.jp.nec.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "baf25731e54d06eb13dc4eda78c6dc7da4ce84e8",
      "tree": "af5cbd2b004a2258ebfd332d4871249d1c32f41f",
      "parents": [
        "291c54ff764d12ecc9a916cb478a0bbb45c5990e"
      ],
      "author": {
        "name": "Zhang, Yanmin",
        "email": "yanmin_zhang@linux.intel.com",
        "time": "Tue Sep 09 11:26:33 2008 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Sep 11 09:34:28 2008 +0200"
      },
      "message": "sched: fix 2.6.27-rc5 couldn\u0027t boot on tulsa machine randomly\n\nOn my tulsa x86-64 machine, kernel 2.6.25-rc5 couldn\u0027t boot randomly.\n\nBasically, function __enable_runtime forgets to reset rt_rq-\u003ert_throttled\nto 0. When every cpu is up, per-cpu migration_thread is created and it runs\nvery fast, sometimes to mark the corresponding rt_rq-\u003ert_throttled to 1 very\nquickly. After all cpus are up, with below calling chain:\n\n   sched_init_smp \u003d\u003e arch_init_sched_domains \u003d\u003e build_sched_domains \u003d\u003e ...\n\u003d\u003e cpu_attach_domain \u003d\u003e rq_attach_root \u003d\u003e set_rq_online \u003d\u003e ...\n\u003d\u003e _enable_runtime\n\n_enable_runtime is called against every rt_rq again, so rt_rq-\u003ert_time is\nreset to 0, but rt_rq-\u003ert_throttled might be still 1. Later on function\ndo_sched_rt_period_timer couldn\u0027t reset it, and all RT tasks couldn\u0027t be\nscheduled to run on that cpu. here is RT task migration_thread which is\nwoken up when a task is migrated to another cpu.\n\nBelow patch fixes it against 2.6.27-rc5.\n\nSigned-off-by: Zhang Yanmin \u003cyanmin_zhang@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "61c22c34c6f80a8e89cff5ff717627c54cc14fd4",
      "tree": "33349263152d3ed4fd7d65e4c3d60340e6676b5c",
      "parents": [
        "82a28c794f27aac17d7a3ebd7f14d731a11a5532"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 09 21:38:57 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 09 22:20:01 2008 +0200"
      },
      "message": "clockevents: remove WARN_ON which was used to gather information\n\nThe issue of the endless reprogramming loop due to a too small\nmin_delta_ns was fixed with the previous updates of the clock events\ncode, but we had no information about the spread of this problem. I\nadded a WARN_ON to get automated information via kerneloops.org and to\nget some direct reports, which allowed me to analyse the affected\nmachines.\n\nThe WARN_ON has served its purpose and would be annoying for a release\nkernel. Remove it and just keep the information about the increase of\nthe min_delta_ns value.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "e1d7bf14999469b16e86889ac71c94a9d0d2f5f4",
      "tree": "32d56c2faac08ac02730a46498183e7222744705",
      "parents": [
        "e228c1b51ef572843827630e643a682ef492b933",
        "291c54ff764d12ecc9a916cb478a0bbb45c5990e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 08 15:47:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 08 15:47:21 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: arch_reinit_sched_domains() must destroy domains to force rebuild\n  sched, cpuset: rework sched domains and CPU hotplug handling (v4)\n"
    },
    {
      "commit": "f5325225658737e6c9cb8e24373e2c281a90be2a",
      "tree": "f1daf00b394b543876b6ffbfd67c050c3bb1b114",
      "parents": [
        "4747832b56a95dbeb0cef4714e6fcc766eed0a95",
        "4ab6a219113197425ac112e35e1ec8062c69888e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 06 19:33:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Sep 06 19:33:26 2008 -0700"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  clocksource, acpi_pm.c: check for monotonicity\n  clocksource, acpi_pm.c: use proper read function also in errata mode\n  ntp: fix calculation of the next jiffie to trigger RTC sync\n  x86: HPET: read back compare register before reading counter\n  x86: HPET fix moronic 32/64bit thinko\n  clockevents: broadcast fixup possible waiters\n  HPET: make minimum reprogramming delta useful\n  clockevents: prevent endless loop lockup\n  clockevents: prevent multiple init/shutdown\n  clockevents: enforce reprogram in oneshot setup\n  clockevents: prevent endless loop in periodic broadcast handler\n  clockevents: prevent clockevent event_handler ending up handler_noop\n"
    },
    {
      "commit": "291c54ff764d12ecc9a916cb478a0bbb45c5990e",
      "tree": "bb89231e59e51520d91f102663b793bd34125c41",
      "parents": [
        "49048622eae698e5c4ae61f7e71200f265ccc529",
        "dfb512ec4834116124da61d6c1ee10fd0aa32bd6"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 06 21:03:16 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 06 21:03:16 2008 +0200"
      },
      "message": "Merge branch \u0027sched/cpuset\u0027 into sched/urgent\n"
    },
    {
      "commit": "dfb512ec4834116124da61d6c1ee10fd0aa32bd6",
      "tree": "ea4f847f2a29face1b5774c6d44ec41bf92e302b",
      "parents": [
        "cf417141cbb3a4ceb5cca15b2c1f099bd0a6603c"
      ],
      "author": {
        "name": "Max Krasnyansky",
        "email": "maxk@qualcomm.com",
        "time": "Fri Aug 29 13:11:41 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 06 19:22:15 2008 +0200"
      },
      "message": "sched: arch_reinit_sched_domains() must destroy domains to force rebuild\n\nWhat I realized recently is that calling rebuild_sched_domains() in\narch_reinit_sched_domains() by itself is not enough when cpusets are enabled.\npartition_sched_domains() code is trying to avoid unnecessary domain rebuilds\nand will not actually rebuild anything if new domain masks match the old ones.\n\nWhat this means is that doing\n     echo 1 \u003e /sys/devices/system/cpu/sched_mc_power_savings\non a system with cpusets enabled will not take affect untill something changes\nin the cpuset setup (ie new sets created or deleted).\n\nThis patch fixes restore correct behaviour where domains must be rebuilt in\norder to enable MC powersaving flags.\n\nTest on quad-core Core2 box with both CONFIG_CPUSETS and !CONFIG_CPUSETS.\nAlso tested on dual-core Core2 laptop. Lockdep is happy and things are working\nas expected.\n\nSigned-off-by: Max Krasnyansky \u003cmaxk@qualcomm.com\u003e\nTested-by: Vaidyanathan Srinivasan \u003csvaidy@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3ba35573ad9a149a3af19625b502679283382f6b",
      "tree": "01e19ef5be3a247e310745c09134837b990dda77",
      "parents": [
        "38736f475071b80b66be28af7b44c854073699cc"
      ],
      "author": {
        "name": "Manfred Spraul",
        "email": "manfred@colorfullife.com",
        "time": "Sun Aug 31 19:58:49 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 06 19:13:59 2008 +0200"
      },
      "message": "kernel/cpu.c: Move the CPU_DYING notifiers\n\nWhen a cpu is taken offline, the CPU_DYING notifiers are called on the\ndying cpu. According to \u003clinux/notifiers.h\u003e, the cpu should be \"not\nrunning any task, not handling interrupts, soon dead\".\n\nFor the current implementation, this is not true:\n- __cpu_disable can fail. If it fails, then the cpu will remain alive\n  and happy.\n- At least on x86, __cpu_disable() briefly enables the local interrupts\n  to handle any outstanding interrupts.\n\nWhat about moving CPU_DYING down a few lines, behind the __cpu_disable()\nline?\nThere are only two CPU_DYING handlers in the kernel right now: one in\nkvm, one in the scheduler. Both should work with the patch applied\n[and: I\u0027m not sure if either one handles a failing __cpu_disable()]\n\nThe patch survives simple offlining a cpu. kvm untested due to lack\nof a test setup.\n\nSigned-off-By: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "38736f475071b80b66be28af7b44c854073699cc",
      "tree": "853b00d9fcf27093f75dbfe7d38922792c2c1a04",
      "parents": [
        "7f79d852ed30a06eebf7497afe9334a726db3d40"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Sat Sep 06 14:50:23 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 06 16:53:34 2008 +0200"
      },
      "message": "sched: fix __load_balance_iterator() for cfq with only one task\n\nThe __load_balance_iterator() returns a NULL when there\u0027s only one\nsched_entity which is a task. It is caused by the following code-path.\n\n\t/* Skip over entities that are not tasks */\n\tdo {\n\t\tse \u003d list_entry(next, struct sched_entity, group_node);\n\t\tnext \u003d next-\u003enext;\n\t} while (next !\u003d \u0026cfs_rq-\u003etasks \u0026\u0026 !entity_is_task(se));\n\n\tif (next \u003d\u003d \u0026cfs_rq-\u003etasks)\n\t\treturn NULL;\n\t^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n      This will return NULL even when se is a task.\n\nAs a side-effect, there was a regression in sched_mc behavior since 2.6.25,\nsince iter_move_one_task() when it calls load_balance_start_fair(),\nwould not get any tasks to move!\n\nFix this by checking if the last entity was a task or not.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7f79d852ed30a06eebf7497afe9334a726db3d40",
      "tree": "0057281f17501b635d3d88cda9a14203706f5dcc",
      "parents": [
        "aef745fca016aea45adae5c98e8698904dd8ad51",
        "70bb08962ea9bd50797ae9f16b2493f5f7c65053"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 06 16:51:57 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 06 16:51:57 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into sched/devel\n"
    },
    {
      "commit": "4ff4b9e19a80b73959ebeb28d1df40176686f0a8",
      "tree": "0b9068da53ae13d253d7c21a76a58be9cc5f7fc3",
      "parents": [
        "72d43d9bc9210d24d09202eaf219eac09e17b339"
      ],
      "author": {
        "name": "Maciej W. Rozycki",
        "email": "macro@linux-mips.org",
        "time": "Fri Sep 05 14:05:31 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 06 15:31:48 2008 +0200"
      },
      "message": "ntp: fix calculation of the next jiffie to trigger RTC sync\n\nWe have a bug in the calculation of the next jiffie to trigger the RTC\nsynchronisation.  The aim here is to run sync_cmos_clock() as close as\npossible to the middle of a second.  Which means we want this function to\nbe called less than or equal to half a jiffie away from when now.tv_nsec\nequals 5e8 (500000000).\n\nIf this is not the case for a given call to the function, for this purpose\ninstead of updating the RTC we calculate the offset in nanoseconds to the\nnext point in time where now.tv_nsec will be equal 5e8.  The calculated\noffset is then converted to jiffies as these are the unit used by the\ntimer.\n\nHovewer timespec_to_jiffies() used here uses a ceil()-type rounding mode,\nwhere the resulting value is rounded up.  As a result the range of\nnow.tv_nsec when the timer will trigger is from 5e8 to 5e8 + TICK_NSEC\nrather than the desired 5e8 - TICK_NSEC / 2 to 5e8 + TICK_NSEC / 2.\n\nAs a result if for example sync_cmos_clock() happens to be called at the\ntime when now.tv_nsec is between 5e8 + TICK_NSEC / 2 and 5e8 to 5e8 +\nTICK_NSEC, it will simply be rescheduled HZ jiffies later, falling in the\nsame range of now.tv_nsec again.  Similarly for cases offsetted by an\ninteger multiple of TICK_NSEC.\n\nThis change addresses the problem by subtracting TICK_NSEC / 2 from the\nnanosecond offset to the next point in time where now.tv_nsec will be\nequal 5e8, effectively shifting the following rounding in\ntimespec_to_jiffies() so that it produces a rounded-to-nearest result.\n\nSigned-off-by: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c8bfff6dd4d41834f4952cbc49e28e31906a6188",
      "tree": "023ce4fb0b61ffa40b48cb96539f0f91c06cb853",
      "parents": [
        "7940ca3605b77f20cc6e9852e4ca6f2d725b5653"
      ],
      "author": {
        "name": "Krzysztof Helt",
        "email": "krzysztof.h1@poczta.fm",
        "time": "Fri Sep 05 23:46:19 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 06 15:17:09 2008 +0200"
      },
      "message": "sched: compilation fix with gcc 3.4.6\n\nI found that 2.6.27-rc5-mm1 does not compile with gcc 3.4.6.\nThe error is:\n  CC      kernel/sched.o\nkernel/sched.c: In function `start_rt_bandwidth\u0027:\nkernel/sched.c:208: sorry, unimplemented: inlining failed in call to \u0027rt_bandwidth_enabled\u0027: function body not available\nkernel/sched.c:214: sorry, unimplemented: called from here\nmake[1]: *** [kernel/sched.o] Error 1\nmake: *** [kernel] Error 2\n\nIt seems that the gcc 3.4.6 requires full inline definition before first usage.\nThe patch below fixes the compilation problem.\n\nSigned-off-by: Krzysztof Helt \u003ckrzysztof.h1@wp.pl\u003e (if needed\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7300711e8c6824fcfbd42a126980ff50439d8dd0",
      "tree": "20183d1ce4fa8237042644b2a79fbf01471da18d",
      "parents": [
        "7cfb0435330364f90f274a26ecdc5f47f738498c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Sep 06 03:01:45 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Sep 06 07:21:17 2008 +0200"
      },
      "message": "clockevents: broadcast fixup possible waiters\n\nUntil the C1E patches arrived there where no users of periodic broadcast\nbefore switching to oneshot mode. Now we need to trigger a possible\nwaiter for a periodic broadcast when switching to oneshot mode.\nOtherwise we can starve them for ever.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "49048622eae698e5c4ae61f7e71200f265ccc529",
      "tree": "e568595fe5329e1293eafc3a3cc833dfe89ffbf2",
      "parents": [
        "56c7426b3951e4f35a71d695f1c982989399d6fd"
      ],
      "author": {
        "name": "Balbir Singh",
        "email": "balbir@linux.vnet.ibm.com",
        "time": "Fri Sep 05 18:12:23 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 05 18:14:35 2008 +0200"
      },
      "message": "sched: fix process time monotonicity\n\nSpencer reported a problem where utime and stime were going negative despite\nthe fixes in commit b27f03d4bdc145a09fb7b0c0e004b29f1ee555fa. The suspected\nreason for the problem is that signal_struct maintains it\u0027s own utime and\nstime (of exited tasks), these are not updated using the new task_utime()\nroutine, hence sig-\u003eutime can go backwards and cause the same problem\nto occur (sig-\u003eutime, adds tsk-\u003eutime and not task_utime()). This patch\nfixes the problem\n\nTODO: using max(task-\u003eprev_utime, derived utime) works for now, but a more\ngeneric solution is to implement cputime_max() and use the cputime_gt()\nfunction for comparison.\n\nReported-by: spencer@bluehost.com\nSigned-off-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "56c7426b3951e4f35a71d695f1c982989399d6fd",
      "tree": "26001a24308baceab1ff36eb8ab1ed43fb831a4f",
      "parents": [
        "b380b0d4f7dffcc235c0facefa537d4655619101"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Sep 01 16:44:23 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 05 18:14:08 2008 +0200"
      },
      "message": "sched_clock: fix NOHZ interaction\n\nIf HLT stops the TSC, we\u0027ll fail to account idle time, thereby inflating the\nactual process times. Fix this by re-calibrating the clock against GTOD when\nleaving nohz mode.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Avi Kivity \u003cavi@qumranet.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1fb9b7d29d8e85ba3196eaa7ab871bf76fc98d36",
      "tree": "1fbefa54e16e76f76616202d8abf9607725afeff",
      "parents": [
        "9c17bcda991000351cb2373f78be7e4b1c44caa3"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Sep 03 21:37:14 2008 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Sep 05 11:11:53 2008 +0200"
      },
      "message": "clockevents: prevent endless loop lockup\n\nThe C1E/HPET bug reports on AMDX2/RS690 systems where tracked down to a\ntoo small value of the HPET minumum delta for programming an event.\n\nThe clockevents code needs to enforce an interrupt event on the clock event\ndevice in some cases. The enforcement code was stupid and naive, as it just\nadded the minimum delta to the current time and tried to reprogram the device.\nWhen the minimum delta is too small, then this loops forever.\n\nAdd a sanity check. Allow reprogramming to fail 3 times, then print a warning\nand double the minimum delta value to make sure, that this does not happen again.\nUse the same function for both tick-oneshot and tick-broadcast code.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9c17bcda991000351cb2373f78be7e4b1c44caa3",
      "tree": "769385b50e512a3aafa8735be23c199bf83c56e7",
      "parents": [
        "7205656ab48da29a95d7f55e43a81db755d3cb3a"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Sep 03 21:37:08 2008 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Sep 05 11:11:52 2008 +0200"
      },
      "message": "clockevents: prevent multiple init/shutdown\n\nWhile chasing the C1E/HPET bugreports I went through the clock events\ncode inch by inch and found that the broadcast device can be initialized\nand shutdown multiple times. Multiple shutdowns are not critical, but\nuseless waste of time. Multiple initializations are simply broken. Another\nCPU might have the device in use already after the first initialization and\nthe second init could just render it unusable again.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7205656ab48da29a95d7f55e43a81db755d3cb3a",
      "tree": "7721904e6912a9dcd09fc4041dfb07807c2ef4b7",
      "parents": [
        "d4496b39559c6d43f83e4c08b899984f8b8089b5"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Sep 03 21:37:03 2008 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Sep 05 11:11:52 2008 +0200"
      },
      "message": "clockevents: enforce reprogram in oneshot setup\n\nIn tick_oneshot_setup we program the device to the given next_event,\nbut we do not check the return value. We need to make sure that the\ndevice is programmed enforced so the interrupt handler engine starts\nworking. Split out the reprogramming function from tick_program_event()\nand call it with the device, which was handed in to tick_setup_oneshot().\nSet the force argument, so the devices is firing an interrupt.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d4496b39559c6d43f83e4c08b899984f8b8089b5",
      "tree": "2d2007eab7942fef1c4dee43f7be24e3bfbcfe62",
      "parents": [
        "7c1e76897492d92b6a1c2d6892494d39ded9680c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Sep 03 21:36:57 2008 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Sep 05 11:11:51 2008 +0200"
      },
      "message": "clockevents: prevent endless loop in periodic broadcast handler\n\nThe reprogramming of the periodic broadcast handler was broken,\nwhen the first programming returned -ETIME. The clockevents code\nstores the new expiry value in the clock events device next_event field\nonly when the programming time has not been elapsed yet. The loop in\nquestion calculates the new expiry value from the next_event value\nand therefor never increases.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7c1e76897492d92b6a1c2d6892494d39ded9680c",
      "tree": "ea04e1be252e176fe5a665a28fd1c26a562cb1fa",
      "parents": [
        "d210baf53b699fc61aa891c177b71d7082d3b957"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Wed Sep 03 21:36:50 2008 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Sep 05 11:11:51 2008 +0200"
      },
      "message": "clockevents: prevent clockevent event_handler ending up handler_noop\n\nThere is a ordering related problem with clockevents code, due to which\nclockevents_register_device() called after tickless/highres switch\nwill not work. The new clockevent ends up with clockevents_handle_noop as\nevent handler, resulting in no timer activity.\n\nThe problematic path seems to be\n\n* old device already has hrtimer_interrupt as the event_handler\n* new clockevent device registers with a higher rating\n* tick_check_new_device() is called\n  * clockevents_exchange_device() gets called\n    * old-\u003eevent_handler is set to clockevents_handle_noop\n  * tick_setup_device() is called for the new device\n    * which sets new-\u003eevent_handler using the old-\u003eevent_handler which is noop.\n\nChange the ordering so that new device inherits the proper handler.\n\nThis does not have any issue in normal case as most likely all the clockevent\ndevices are setup before the highres switch. But, can potentially be affecting\nsome corner case where HPET force detect happens after the highres switch.\nThis was a problem with HPET in MSI mode code that we have been experimenting\nwith.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b380b0d4f7dffcc235c0facefa537d4655619101",
      "tree": "fdc1785d6136ee64659065fed558efef2c41e822",
      "parents": [
        "5f17cfce5776c566d64430f543a289e5cfa4538b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Thu Sep 04 17:05:57 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 04 11:06:21 2008 -0700"
      },
      "message": "forgotten refcount on sysctl root table\n\nWe should\u0027ve set refcount on the root sysctl table; otherwise we\u0027ll blow\nup the first time we get down to zero dynamically registered sysctl\ntables.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nTested-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9d3593574702ae1899e23a1535da1ac71f928042",
      "tree": "0ea17d5e2a922df5e1d2f52c545728084afee78c",
      "parents": [
        "74c4633da7994eddcfcd2762a448c6889cc2b5bd"
      ],
      "author": {
        "name": "John Kacur",
        "email": "jkacur@gmail.com",
        "time": "Tue Sep 02 14:36:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 19:21:40 2008 -0700"
      },
      "message": "pm_qos_requirement might sleep\n\nMake PM_QOS and CPU_IDLE play nicer when run with the RT-Preempt kernel.\n\nThe purpose of the patch is to remove the spin_lock around the read in the\nfunction pm_qos_requirement - since spinlocks can sleep in -rt and this\nfunction is called from idle.\n\nCPU_IDLE polls the target_value\u0027s of some of the pm_qos parameters from\nthe idle loop causing sleeping locking warnings.  Changing the\ntarget_value to an atomic avoids this issue.\n\nRemove the spinlock in pm_qos_requirement by making target_value an atomic\ntype.\n\nSigned-off-by: mark gross \u003cmgross@linux.intel.com\u003e\nSigned-off-by: John Kacur \u003cjkacur@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "950bbabb5a804690a0201190de5c22837f72f83f",
      "tree": "0d198ac02244138936acdf201c80aa4cd2da0bbc",
      "parents": [
        "add0d4dfd660e9e4fd0af3eac3cad23583c9558f"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Sep 02 14:35:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 19:21:38 2008 -0700"
      },
      "message": "pid_ns: (BUG 11391) change -\u003echild_reaper when init-\u003egroup_leader exits\n\nWe don\u0027t change pid_ns-\u003echild_reaper when the main thread of the\nsubnamespace init exits.  As Robert Rex \u003crobert.rex@exasol.com\u003e pointed\nout this is wrong.\n\nYes, the re-parenting itself works correctly, but if the reparented task\nexits it needs -\u003eparent-\u003ensproxy-\u003epid_ns in do_notify_parent(), and if the\nmain thread is zombie its -\u003ensproxy was already cleared by\nexit_task_namespaces().\n\nIntroduce the new function, find_new_reaper(), which finds the new\n-\u003eparent for the re-parenting and changes -\u003echild_reaper if needed.  Kill\nthe now unneeded exit_child_reaper().\n\nAlso move the changing of -\u003echild_reaper from zap_pid_ns_processes() to\nfind_new_reaper(), this consolidates the games with -\u003echild_reaper and\nmakes it stable under tasklist_lock.\n\nAddresses http://bugzilla.kernel.org/show_bug.cgi?id\u003d11391\n\nReported-by: Robert Rex \u003crobert.rex@exasol.com\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Sukadev Bhattiprolu \u003csukadev@linux.vnet.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": "add0d4dfd660e9e4fd0af3eac3cad23583c9558f",
      "tree": "8bba7c39efcd5999c0925bed083a0ca68d6a5e40",
      "parents": [
        "e385ea63f44b475e034a78b6d8bc6bb50caf72ca"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Sep 02 14:35:48 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 19:21:38 2008 -0700"
      },
      "message": "pid_ns: zap_pid_ns_processes: fix the -\u003echild_reaper changing\n\nzap_pid_ns_processes() sets pid_ns-\u003echild_reaper \u003d NULL, this is wrong.\n\nYes, we have already killed all tasks in this namespace, and sys_wait4()\ndoesn\u0027t see any child.  But this doesn\u0027t mean -\u003echildren list is empty, we\nmay have EXIT_DEAD tasks which are not visible to do_wait().  In that case\nthe subsequent forget_original_parent() will crash the kernel because it\nwill try to re-parent these tasks to the NULL reaper.\n\nEven if there are no childs, it is not good that forget_original_parent()\nuses reaper \u003d\u003d NULL.\n\nChange the code to set -\u003echild_reaper \u003d init_pid_ns.child_reaper instead.\nWe could use pid_ns-\u003eparent-\u003echild_reaper as well, I think this does not\nreally matter.  These EXIT_DEAD tasks are not visible to the new -\u003eparent\nafter re-parenting, they will silently do release_task() eventually.\n\nNote that we must change -\u003echild_reaper, otherwise\nforget_original_parent() will use reaper \u003d\u003d father, and in that case we\nwill hit the (correct) BUG_ON(!list_empty(\u0026father-\u003echildren)).\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Sukadev Bhattiprolu \u003csukadev@linux.vnet.ibm.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "99039e1352fa451bd46e2c020dc78bcaf2a159d9",
      "tree": "e12d929e43525e1153418e431646399722dfa195",
      "parents": [
        "72a8d129cf5811b77f0d6c8acef9ac34a12bccf4",
        "c4bacefb7aaf49da11a695f29d85d40909f17693"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 11:04:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 11:04:47 2008 -0700"
      },
      "message": "Merge branch \u0027audit.b57\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current\n\n* \u0027audit.b57\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current:\n  [PATCH] audit: Moved variable declaration to beginning of function\n"
    },
    {
      "commit": "cbaed698f37494b30b2449b51c728ae48630cb2b",
      "tree": "470908bdfe0a5f6e5321c0e1010e80ebced701a4",
      "parents": [
        "6781f4ae30bbb8ebf31187b3c9304be16966f5a0"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Sat Aug 30 21:08:40 2008 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 10:49:51 2008 -0700"
      },
      "message": "softlockup: minor cleanup, don\u0027t check task-\u003estate twice\n\nThe recent commit 16d9679f33caf7e683471647d1472bfe133d858 changed\ncheck_hung_task() to filter out the TASK_KILLABLE tasks. We can\nmove this check to the caller which has to test t-\u003estate anyway.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6781f4ae30bbb8ebf31187b3c9304be16966f5a0",
      "tree": "5f2e75906fa34220bf69dc6a45eac52c28313043",
      "parents": [
        "6b9886a173ff6c9ed528979c4d0a3566c1f61013"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Sun Aug 31 20:31:55 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 10:47:30 2008 -0700"
      },
      "message": "kernel/resource.c: fix new kernel-doc warning\n\nFix kernel-doc warning for new function:\n\nWarning(linux-2.6.27-rc5-git2//kernel/resource.c:448): No description found for parameter \u0027root\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c4bacefb7aaf49da11a695f29d85d40909f17693",
      "tree": "f79955a37bab3ebe9942cba292ae560fb281c8bf",
      "parents": [
        "bef69ea0dcce574a425feb0a5aa4c63dd108b9a6"
      ],
      "author": {
        "name": "Cordelia",
        "email": "cordsam@linux.vnet.ibm.com",
        "time": "Mon Aug 18 09:45:51 2008 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Sep 01 23:06:45 2008 -0400"
      },
      "message": "[PATCH] audit: Moved variable declaration to beginning of function\n\ngot rid of compilation warning:\nISO C90 forbids mixed declarations and code\n\nSigned-off-by: Cordelia Sam \u003ccordesam@gmail.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bef69ea0dcce574a425feb0a5aa4c63dd108b9a6",
      "tree": "b678fa44657d63cb30a29ba0b73a442537f7826c",
      "parents": [
        "00aeb429a0f2daeb21979873060b81095cafe4bd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 29 20:18:31 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 29 20:25:20 2008 -0700"
      },
      "message": "Resource handling: add \u0027insert_resource_expand_to_fit()\u0027 function\n\nNot used anywhere yet, but this complements the existing plain\n\u0027insert_resource()\u0027 functionality with a version that can expand the\nresource we are adding in order to fix up any conflicts it has with\nexisting resources.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "316d9679f33caf7e683471647d1472bfe133d858",
      "tree": "46271cdd7405468fbc4e9abbaf65e01edd6ae0a3",
      "parents": [
        "b4609472116bb806a95e98d04767189406c74c70"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Aug 29 20:06:23 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 29 14:46:29 2008 -0700"
      },
      "message": "Don\u0027t trigger softlockup detector on network fs blocked tasks\n\nPulling the ethernet cable on a 2.6.27-rc system with NFS mounts\ncurrently leads to an ongoing flood of soft lockup detector backtraces\nfor all tasks blocked on the NFS mounts when the hickup takes\nlonger than 120s.\n\nI don\u0027t think NFS problems should be all that noisy.\n\nLuckily there\u0027s a reasonably easy way to distingush this case.\n\nDon\u0027t report task softlockup warnings for tasks in TASK_KILLABLE\nstate, which is used by the network file systems.\n\nI believe this patch is a 2.6.27 candidate.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "66833d5f3934a19d0988b7d0de58149bfd7a5884",
      "tree": "a34ce3de726fdd5d7617da51e3a06a3c7c309341",
      "parents": [
        "0234bf1d98ebd1cb8ea1630957f6d14170cc0ba0",
        "2633f0e57b1127f4060d70bf460140dc9bb19386"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 28 12:31:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 28 12:31:49 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  exit signals: use of uninitialized field notify_count\n  lockdep: fix invalid list_del_rcu in zap_class\n  lockstat: repair erronous contention statistics\n  lockstat: fix numerical output rounding error\n"
    },
    {
      "commit": "0234bf1d98ebd1cb8ea1630957f6d14170cc0ba0",
      "tree": "3eea55e96ac50278da3d2cab4ba26da16a4abe40",
      "parents": [
        "e52c8857e0ca3214aa7e2a746000ac0f3016b345",
        "cc2991cf15ae92fa30b3ea9f56a8a5a337bd33c7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 28 12:31:12 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 28 12:31:12 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: rt-bandwidth accounting fix\n  sched: fix sched_rt_rq_enqueue() resched idle\n"
    },
    {
      "commit": "e52c8857e0ca3214aa7e2a746000ac0f3016b345",
      "tree": "9fdc6bbe990a8d8dd5fc74c2145e990ae8f2f916",
      "parents": [
        "9c2bdac40eba639c438690b1245a020e7c2530df",
        "c1b362e3b4d331a63915b268a33207311a439d60"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 28 12:30:59 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 28 12:30:59 2008 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86: update defconfigs\n  x86: msr: fix bogus return values from rdmsr_safe/wrmsr_safe\n  x86: cpuid: correct return value on partial operations\n  x86: msr: correct return value on partial operations\n  x86: cpuid: propagate error from smp_call_function_single()\n  x86: msr: propagate errors from smp_call_function_single()\n  smp: have smp_call_function_single() detect invalid CPUs\n"
    },
    {
      "commit": "41108eb10142e0552f2de1e4c0675b108c5f018f",
      "tree": "bb9ef817e2729915fbbe29291c827e7eef83eb54",
      "parents": [
        "b09331e530777963ed65ce2fdf074b7b077768c7"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Aug 28 14:39:12 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 28 12:27:39 2008 -0700"
      },
      "message": "ftrace: disable tracing for hibernation\n\nIn accordance with commit f42ac38c59e0a03d6da0c24a63fb211393f484b0\n(\"ftrace: disable tracing for suspend to ram\"), disable tracing\naround the suspend code in hibernation code paths.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc2991cf15ae92fa30b3ea9f56a8a5a337bd33c7",
      "tree": "a286839539678bb2b36e7e059b50a2e575e93782",
      "parents": [
        "f3ade837808121ff8bab9c56725f4fe40ec85a56"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Aug 19 12:33:03 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 28 13:42:38 2008 +0200"
      },
      "message": "sched: rt-bandwidth accounting fix\n\nIt fixes an accounting bug where we would continue accumulating runtime\neven though the bandwidth control is disabled. This would lead to very long\nthrottle periods once bandwidth control gets turned on again.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7940ca3605b77f20cc6e9852e4ca6f2d725b5653",
      "tree": "7c509228518a6a67e71a5ff889f08dd745e09f6f",
      "parents": [
        "9a7e0b180da21885988d47558671cf580279f9d6"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 19 13:40:47 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 28 12:08:00 2008 +0200"
      },
      "message": "sched: extract walk_tg_tree(), fix\n\nfix:\n\n kernel/sched.c: In function \u0027__rt_schedulable\u0027:\n kernel/sched.c:8771: error: implicit declaration of function \u0027walk_tg_tree\u0027\n kernel/sched.c:8771: error: \u0027tg_nop\u0027 undeclared (first use in this function)\n kernel/sched.c:8771: error: (Each undeclared identifier is reported only once\n kernel/sched.c:8771: error: for each function it appears in.)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "aef745fca016aea45adae5c98e8698904dd8ad51",
      "tree": "fc5278fc828ba274ab8c5f8382345113ef14277c",
      "parents": [
        "29cbef4869bf288256ab76c7dc674cb132b35de2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 28 11:34:43 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 28 11:36:03 2008 +0200"
      },
      "message": "sched: clean up __might_sleep()\n\nadd KERN_ to the printout and clean up the flow a bit.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "29cbef4869bf288256ab76c7dc674cb132b35de2",
      "tree": "a3b4feba846ffc14ecef52822d4248007322974b",
      "parents": [
        "aec0a5142cb52aaa152d962d84a838e25d520742"
      ],
      "author": {
        "name": "Joe Korty",
        "email": "joe.korty@ccur.com",
        "time": "Wed Aug 27 11:21:39 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 28 11:36:02 2008 +0200"
      },
      "message": "make might_sleep() display the oopsing process\n\nExpand might_sleep\u0027s printk to indicate the oopsing process.\n\nSigned-off-by: Joe Korty \u003cjoe.korty@ccur.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "aec0a5142cb52aaa152d962d84a838e25d520742",
      "tree": "8cf21e8fd5c5bc513923fd38acfc562ae0ab39d1",
      "parents": [
        "65eb3dc609dec17deea48dcd4de2e549d29a9824"
      ],
      "author": {
        "name": "Bharata B Rao",
        "email": "bharata@linux.vnet.ibm.com",
        "time": "Thu Aug 28 14:42:49 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 28 11:35:51 2008 +0200"
      },
      "message": "sched: call resched_task() conditionally from new task wake up path\n\n- During wake up of a new task, task_new_fair() can do a resched_task()\n  on the current task. Later in the code path, check_preempt_curr() also ends\n  up doing the same, which can be avoided. Check if TIF_NEED_RESCHED is\n  already set for the current task.\n\n- task_new_fair() does a resched_task() on the current task unconditionally.\n  This can be done only in case when child runs before the parent.\n\nSo this is a small speedup.\n\nSigned-off-by: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f3ade837808121ff8bab9c56725f4fe40ec85a56",
      "tree": "eb9a8d87bff0a7d11eade583a7582e3c765e3b80",
      "parents": [
        "354879bb977e06695993435745f06a0f6d39ce2b"
      ],
      "author": {
        "name": "John Blackwood",
        "email": "john.blackwood@ccur.com",
        "time": "Tue Aug 26 15:09:43 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 28 11:13:24 2008 +0200"
      },
      "message": "sched: fix sched_rt_rq_enqueue() resched idle\n\nWhen sysctl_sched_rt_runtime is set to something other than -1 and the\nCONFIG_RT_GROUP_SCHED kernel parameter is NOT enabled, we get into a state\nwhere we see one or more CPUs idling forvever even though there are\nreal-time\ntasks in their rt runqueue that are able to run (no longer throttled).\n\nThe sequence is:\n\n- A real-time task is running when the timer sets the rt runqueue\n    to throttled, and the rt task is resched_task()ed and switched\n    out, and idle is switched in since there are no non-rt tasks to\n    run on that cpu.\n\n- Eventually the do_sched_rt_period_timer() runs and un-throttles\n    the rt runqueue, but we just exit the timer interrupt and go back\n    to executing the idle task in the idle loop forever.\n\nIf we change the sched_rt_rq_enqueue() routine to use some of the code\nfrom the CONFIG_RT_GROUP_SCHED enabled version of this same routine and\nresched_task() the currently executing task (idle in our case) if it is\na lower priority task than the higher rt task in the now un-throttled\nrunqueue, the problem is no longer observed.\n\nSigned-off-by: John Blackwood \u003cjohn.blackwood@ccur.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f42ac38c59e0a03d6da0c24a63fb211393f484b0",
      "tree": "1020864d18c6652444fe0ba2d39dd6e9e2f3c7d6",
      "parents": [
        "8560c650f340565b720fd57d1f9c99ab216d99d0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Aug 27 09:14:40 2008 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 27 13:54:20 2008 -0700"
      },
      "message": "ftrace: disable tracing for suspend to ram\n\nI\u0027ve been painstakingly debugging the issue with suspend to ram and\nftraced. The 2.6.28 code does not have this issue, but since the mcount\nrecording is not going to be in 27, this must be solved for the ftrace\ndaemon version.\n\nThe resume from suspend to ram would reboot because it was triple\nfaulting. Debugging further, I found that calling the mcount function\nitself was not an issue, but it would fault when it incremented\npreempt_count. preempt_count is on the tasks info structure that is on the\nlow memory address of the task\u0027s stack.  For some reason, it could not\nwrite to it. Resuming out of suspend to ram does quite a lot of funny\ntricks to get to work, so it is not surprising at all that simply doing a\npreempt_disable() would cause a fault.\n\nThanks to Rafael for suggesting to add a \"while (1);\" to find the place in\nresuming that is causing the fault. I would place the loop somewhere in\nthe code, compile and reboot and see if it would either reboot (hit the\nfault) or simply hang (hit the loop).  Doing this over and over again, I\nnarrowed it down that it was happening in enable_nonboot_cpus.\n\nAt this point, I found that it is easier to simply disable tracing around\nthe suspend code, instead of searching for the particular function that\ncan not handle doing a preempt_disable.\n\nThis patch disables the tracer as it suspends and reenables it on resume.\n\nI tested this patch on my Laptop, and it can resume fine with the patch.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2633f0e57b1127f4060d70bf460140dc9bb19386",
      "tree": "db67beb9715fee165f8c8baaee47fc023b26dceb",
      "parents": [
        "74870172824a78640ec4f03058d9bd35dfa08618"
      ],
      "author": {
        "name": "Steve VanDeBogart",
        "email": "vandebo-lkml@NerdBox.Net",
        "time": "Tue Aug 26 15:14:36 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Aug 27 09:10:09 2008 +0200"
      },
      "message": "exit signals: use of uninitialized field notify_count\n\ntask-\u003esignal-\u003enotify_count is only initialized if\ntask-\u003esignal-\u003egroup_exit_task is not NULL.  Reorder a conditional so\nthat uninitialised memory is not used.  Found by Valgrind.\n\nSigned-off-by: Steve VanDeBogart \u003cvandebo-lkml@nerdbox.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "74870172824a78640ec4f03058d9bd35dfa08618",
      "tree": "7e65428c4aa8603c7b7090628ea07af2badc1b6c",
      "parents": [
        "04148b73b89d49fe0fe201bcee395e51f7d637ce"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Wed Aug 27 14:33:00 2008 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Aug 27 08:40:36 2008 +0200"
      },
      "message": "lockdep: fix invalid list_del_rcu in zap_class\n\nThe problem is found during iwlagn driver testing on\nv2.6.27-rc4-176-gb8e6c91 kernel, but it turns out to be a lockdep bug.\nIn our testing, we frequently load and unload the iwlagn driver\n(\u003e50 times). Then the MAX_STACK_TRACE_ENTRIES is reached (expected\nbehaviour?). The error message with the call trace is as below.\n\nBUG: MAX_STACK_TRACE_ENTRIES too low!\nturning off the locking correctness validator.\nPid: 4895, comm: iwlagn Not tainted 2.6.27-rc4 #13\n\nCall Trace:\n [\u003cffffffff81014aa1\u003e] save_stack_trace+0x22/0x3e\n [\u003cffffffff8105390a\u003e] save_trace+0x8b/0x91\n [\u003cffffffff81054e60\u003e] mark_lock+0x1b0/0x8fa\n [\u003cffffffff81056f71\u003e] __lock_acquire+0x5b9/0x716\n [\u003cffffffffa00d818a\u003e] ieee80211_sta_work+0x0/0x6ea [mac80211]\n [\u003cffffffff81057120\u003e] lock_acquire+0x52/0x6b\n [\u003cffffffff81045f0e\u003e] run_workqueue+0x97/0x1ed\n [\u003cffffffff81045f5e\u003e] run_workqueue+0xe7/0x1ed\n [\u003cffffffff81045f0e\u003e] run_workqueue+0x97/0x1ed\n [\u003cffffffff81046ae4\u003e] worker_thread+0xd8/0xe3\n [\u003cffffffff81049503\u003e] autoremove_wake_function+0x0/0x2e\n [\u003cffffffff81046a0c\u003e] worker_thread+0x0/0xe3\n [\u003cffffffff810493ec\u003e] kthread+0x47/0x73\n [\u003cffffffff8128e3ab\u003e] trace_hardirqs_on_thunk+0x3a/0x3f\n [\u003cffffffff8100cea9\u003e] child_rip+0xa/0x11\n [\u003cffffffff8100c4df\u003e] restore_args+0x0/0x30\n [\u003cffffffff810316e1\u003e] finish_task_switch+0x0/0xcc\n [\u003cffffffff810493a5\u003e] kthread+0x0/0x73\n [\u003cffffffff8100ce9f\u003e] child_rip+0x0/0x11\n\nAlthough the above is harmless, when the ilwagn module is removed\nlater lockdep will trigger a kernel oops as below.\n\nBUG: unable to handle kernel NULL pointer dereference at\n0000000000000008\nIP: [\u003cffffffff810531e1\u003e] zap_class+0x24/0x82\nPGD 73128067 PUD 7448c067 PMD 0\nOops: 0002 [1] SMP\nCPU 0\nModules linked in: rfcomm l2cap bluetooth autofs4 sunrpc\nnf_conntrack_ipv6 xt_state nf_conntrack xt_tcpudp ip6t_ipv6header\nip6t_REJECT ip6table_filter ip6_tables x_tables ipv6 cpufreq_ondemand\nacpi_cpufreq dm_mirror dm_log dm_multipath dm_mod snd_hda_intel sr_mod\nsnd_seq_dummy snd_seq_oss snd_seq_midi_event battery snd_seq\nsnd_seq_device cdrom button snd_pcm_oss snd_mixer_oss snd_pcm\nsnd_timer snd_page_alloc e1000e snd_hwdep sg iTCO_wdt\niTCO_vendor_support ac pcspkr i2c_i801 i2c_core snd soundcore video\noutput ata_piix ata_generic libata sd_mod scsi_mod ext3 jbd mbcache\nuhci_hcd ohci_hcd ehci_hcd [last unloaded: mac80211]\nPid: 4941, comm: modprobe Not tainted 2.6.27-rc4 #10\nRIP: 0010:[\u003cffffffff810531e1\u003e]  [\u003cffffffff810531e1\u003e]\nzap_class+0x24/0x82\nRSP: 0000:ffff88007bcb3eb0  EFLAGS: 00010046\nRAX: 0000000000068ee8 RBX: ffffffff8192a0a0 RCX: 0000000000000000\nRDX: 0000000000000000 RSI: 0000000000001dfb RDI: ffffffff816e70b0\nRBP: ffffffffa00cd000 R08: ffffffff816818f8 R09: ffff88007c923558\nR10: ffffe20002ad2408 R11: ffffffff811028ec R12: ffffffff8192a0a0\nR13: 000000000002bd90 R14: 0000000000000000 R15: 0000000000000296\nFS:  00007f9d1cee56f0(0000) GS:ffffffff814a58c0(0000)\nknlGS:0000000000000000\nCS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\nCR2: 0000000000000008 CR3: 0000000073047000 CR4: 00000000000006e0\nDR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\nDR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\nProcess modprobe (pid: 4941, threadinfo ffff88007bcb2000, task\nffff8800758d1fc0)\nStack:  ffffffff81057376 0000000000000000 ffffffffa00f7b00\n0000000000000000\n 0000000000000080 0000000000618278 00007fff24f16720 0000000000000000\n ffffffff8105d37a ffffffffa00f7b00 ffffffff8105d591 313132303863616d\nCall Trace:\n [\u003cffffffff81057376\u003e] ? lockdep_free_key_range+0x61/0xf5\n [\u003cffffffff8105d37a\u003e] ? free_module+0xd4/0xe4\n [\u003cffffffff8105d591\u003e] ? sys_delete_module+0x1de/0x1f9\n [\u003cffffffff8106dbfa\u003e] ? audit_syscall_entry+0x12d/0x160\n [\u003cffffffff8100be2b\u003e] ? system_call_fastpath+0x16/0x1b\n\nCode: b2 00 01 00 00 00 c3 31 f6 49 c7 c0 10 8a 61 81 eb 32 49 39 38\n75 26 48 98 48 6b c0 38 48 8b 90 08 8a 61 81 48 8b 88 00 8a 61 81 \u003c48\u003e\n89 51 08 48 89 0a 48 c7 80 08 8a 61 81 00 02 20 00 48 ff c6\nRIP  [\u003cffffffff810531e1\u003e] zap_class+0x24/0x82\n RSP \u003cffff88007bcb3eb0\u003e\nCR2: 0000000000000008\n---[ end trace a1297e0c4abb0f2e ]---\n\nThe root cause for this oops is in add_lock_to_list() when\nsave_trace() fails due to MAX_STACK_TRACE_ENTRIES is reached,\nentry-\u003eclass is assigned but entry is never added into any lock list.\nThis makes the list_del_rcu() in zap_class() oops later when the\nmodule is unloaded. This patch fixes the problem by assigning\nentry-\u003eclass after save_trace() returns success.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "04148b73b89d49fe0fe201bcee395e51f7d637ce",
      "tree": "ba55c40dcd5ef2c5e42914a48acf45d1625d670b",
      "parents": [
        "2189459d25a47401c69a17794c9d390c890351f9"
      ],
      "author": {
        "name": "Joe Korty",
        "email": "joe.korty@ccur.com",
        "time": "Mon Aug 25 17:16:23 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 26 10:37:47 2008 +0200"
      },
      "message": "lockstat: repair erronous contention statistics\n\nFix bad contention counting in /proc/lock_stat.\n\n/proc/lockstat tries to gather per-ip contention\nstatistics per-lock.  This was failing due to\na garbage per-ip index selector being used.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2189459d25a47401c69a17794c9d390c890351f9",
      "tree": "1e22875e4b4fd29e2af5e8078f5d82f814cc56fd",
      "parents": [
        "83097aca8567a0bd593534853b71fe0fa9a75d69"
      ],
      "author": {
        "name": "Joe Korty",
        "email": "joe.korty@ccur.com",
        "time": "Mon Aug 25 17:15:33 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 26 10:37:46 2008 +0200"
      },
      "message": "lockstat: fix numerical output rounding error\n\nFix rounding error in /proc/lock_stat numerical output.\n\nOn occasion the two digit fractional part contains the three\ndigit value \u0027100\u0027.  This is due to a bug in the rounding algorithm\nwhich pushes values in the range \u002795..99\u0027 to \u0027100\u0027 rather than\nto \u002700\u0027 + an increment to the integer part.  For example,\n\n\t- 123456.100      old display\n\t+ 123457.00\t  new display\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "65eb3dc609dec17deea48dcd4de2e549d29a9824",
      "tree": "e54f0c7f05c7d503c9c3f3bb4c234623f02638f4",
      "parents": [
        "3cf430b0636045dc524759a0852293ba037732a7"
      ],
      "author": {
        "name": "Kevin Diggs",
        "email": "kevdig@hypersurf.com",
        "time": "Tue Aug 26 10:26:54 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 26 10:26:54 2008 +0200"
      },
      "message": "sched: add kernel doc for the completion, fix kernel-doc-nano-HOWTO.txt\n\nThis patch adds kernel doc for the completion feature.\n\nAn error in the split-man.pl PERL snippet in kernel-doc-nano-HOWTO.txt is\nalso fixed.\n\nSigned-off-by: Kevin Diggs \u003ckevdig@hypersurf.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3cf430b0636045dc524759a0852293ba037732a7",
      "tree": "2c4e03f9028dc23ab4e6ca5a3a5a263af397984f",
      "parents": [
        "93dcf55f828b035fc93fc19eb03c1390e1e6d570",
        "83097aca8567a0bd593534853b71fe0fa9a75d69"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 26 10:25:59 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 26 10:25:59 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into sched/devel\n"
    },
    {
      "commit": "f73be6dedf4fa058ce80846dae604b08fa805ca1",
      "tree": "eb38c111bedf6b356db3af20ab124dff846643cb",
      "parents": [
        "2a61812af2e564cba2c8170cf96e1c823210f619"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Aug 25 17:07:14 2008 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Aug 25 17:45:48 2008 -0700"
      },
      "message": "smp: have smp_call_function_single() detect invalid CPUs\n\nHave smp_call_function_single() return invalid CPU indicies and return\n-ENXIO.  This function is already executed inside a\nget_cpu()..put_cpu() which locks out CPU removal, so rather than\nhaving the higher layers doing another layer of locking to guard\nagainst unplugged CPUs do the test here.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "cc556c5c92a45763e23015a31efb27005a6132fa",
      "tree": "80765cc72264717cdff9119ff9438a0815c2e09d",
      "parents": [
        "a56cb4ecbdb66a504601dfacc31cd0cf91c97e7f",
        "354879bb977e06695993435745f06a0f6d39ce2b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 25 11:26:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 25 11:26:02 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_clock: fix cpu_clock()\n"
    },
    {
      "commit": "ffb4ba76a25ab6c9deeec33e4f58395586ca747c",
      "tree": "378ee35adc486466c88c7423dbb0ecc6f027ef45",
      "parents": [
        "83097aca8567a0bd593534853b71fe0fa9a75d69"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 25 11:10:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 25 11:10:26 2008 -0700"
      },
      "message": "[module] Don\u0027t let gcc inline load_module()\n\n\u0027load_module()\u0027 is a complex function that contains all the ELF section\nlogic, and inlining it is utterly insane.  But gcc will do it, simply\nbecause there is only one call-site.  As a result, all the stack space\nthat is allocated for all the work to load the module will still be\nactive when we actually call the module init sequence, and the deep call\nchain makes stack overflows happen.\n\nAnd stack overflows are really hard to debug, because they not only\ncorrupt random pages below the stack, but also corrupt the thread_info\nstructure that is allocated under the stack.\n\nIn this case, Alan Brunelle reported some crazy oopses at bootup, after\nloading the processor module that ends up doing complex ACPI stuff and\nhas quite a deep callchain.  This should fix it, and is the sane thing\nto do regardless.\n\nCc: Alan D. Brunelle \u003cAlan.Brunelle@hp.com\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "354879bb977e06695993435745f06a0f6d39ce2b",
      "tree": "b811b4ec423fac8bdb671dafbf422aa4245bdcb3",
      "parents": [
        "efc2dead2c82cae31943828f6d977c483942b0eb"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Aug 25 17:15:34 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 25 17:39:57 2008 +0200"
      },
      "message": "sched_clock: fix cpu_clock()\n\nThis patch fixes 3 issues:\n\na) it removes the dependency on jiffies, because jiffies are incremented\n   by a single CPU, and the tick is not synchronized between CPUs. Therefore\n   relying on it to calculate a window to clip whacky TSC values doesn\u0027t work\n   as it can drift around.\n\n   So instead use [GTOD, GTOD+TICK_NSEC) as the window.\n\nb) __update_sched_clock() did (roughly speaking):\n\n   delta \u003d sched_clock() - scd-\u003etick_raw;\n   clock +\u003d delta;\n\n   Which gives exponential growth, instead of linear.\n\nc) allows the sched_clock_cpu() value to warp the u64 without breaking.\n\nthe results are more reliable sched_clock() deltas:\n\n           before       after   sched_clock\n\ncpu_clock: 15750        51312   51488\ncpu_clock: 59719        51052   50947\ncpu_clock: 15879        51249   51061\ncpu_clock: 1            50933   51198\ncpu_clock: 1            50931   51039\ncpu_clock: 1            51093   50981\ncpu_clock: 1            51043   51040\ncpu_clock: 1            50959   50938\ncpu_clock: 1            50981   51011\ncpu_clock: 1            51364   51212\ncpu_clock: 1            51219   51273\ncpu_clock: 1            51389   51048\ncpu_clock: 1            51285   51611\ncpu_clock: 1            50964   51137\ncpu_clock: 1            50973   50968\ncpu_clock: 1            50967   50972\ncpu_clock: 1            58910   58485\ncpu_clock: 1            51082   51025\ncpu_clock: 1            50957   50958\ncpu_clock: 1            50958   50957\ncpu_clock: 1006128      51128   50971\ncpu_clock: 1            51107   51155\ncpu_clock: 1            51371   51081\ncpu_clock: 1            51104   51365\ncpu_clock: 1            51363   51309\ncpu_clock: 1            51107   51160\ncpu_clock: 1            51139   51100\ncpu_clock: 1            51216   51136\ncpu_clock: 1            51207   51215\ncpu_clock: 1            51087   51263\ncpu_clock: 1            51249   51177\ncpu_clock: 1            51519   51412\ncpu_clock: 1            51416   51255\ncpu_clock: 1            51591   51594\ncpu_clock: 1            50966   51374\ncpu_clock: 1            50966   50966\ncpu_clock: 1            51291   50948\ncpu_clock: 1            50973   50867\ncpu_clock: 1            50970   50970\ncpu_clock: 998306       50970   50971\ncpu_clock: 1            50971   50970\ncpu_clock: 1            50970   50970\ncpu_clock: 1            50971   50971\ncpu_clock: 1            50970   50970\ncpu_clock: 1            51351   50970\ncpu_clock: 1            50970   51352\ncpu_clock: 1            50971   50970\ncpu_clock: 1            50970   50970\ncpu_clock: 1            51321   50971\ncpu_clock: 1            50974   51324\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7a8fc9b248e77a4eab0613acf30a6811799786b3",
      "tree": "24b3beb8bc0633db27ffdb791f94dce95d51b1d0",
      "parents": [
        "d3ee1b405872214609868f3cde631ac157026dd0"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sun Aug 17 17:36:59 2008 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 23 12:14:12 2008 -0700"
      },
      "message": "removed unused #include \u003clinux/version.h\u003e\u0027s\n\nThis patch lets the files using linux/version.h match the files that\n#include it.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43cc071db83b6311a8135f5cc56ae7fae1023504",
      "tree": "b53b87e4b658b0a739eb55d4e25968e147ade4fd",
      "parents": [
        "05f57f50e04aec3c629a652a776497b2c76c0d0b",
        "efc2dead2c82cae31943828f6d977c483942b0eb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 22 08:36:55 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 22 08:36:55 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: enable LB_BIAS by default\n"
    },
    {
      "commit": "05f57f50e04aec3c629a652a776497b2c76c0d0b",
      "tree": "20d29885d45c612229fc8322c8dd87a6b87dbeae",
      "parents": [
        "3ffc3f947de2b64f35f6bc4361e83a2bb9e12c71",
        "01dcb0443ed89eccf26c2b43f1ea13b368ae740d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 22 08:36:42 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 22 08:36:42 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  rcu: fix synchronize_rcu() so that kernel-doc works\n"
    },
    {
      "commit": "93dcf55f828b035fc93fc19eb03c1390e1e6d570",
      "tree": "8a5b2ee5c5bb664ff856483244cec1f249a129a3",
      "parents": [
        "f31e11d87a5d7601636710195891ba462ad99f11"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed Aug 20 16:54:44 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Aug 22 15:17:31 2008 +0200"
      },
      "message": "wait_task_inactive: \"improve\" the returned value for -\u003envcsw \u003d\u003d 0\n\nwait_task_inactive() returns 1 when p-\u003envcsw \u003d\u003d 0 || p-\u003envcsw \u003d\u003d 1.  This\nmeans that two subsequent calls can return the same number while the task\nwas scheduled in between.\n\nChange the code to return \"nvcsw | LONG_MIN\" instead of \"nvcsw ?: 1\", now\nthe overlap always needs LONG_MAX schedules.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f31e11d87a5d7601636710195891ba462ad99f11",
      "tree": "84cabe2eccab1bec8a5302f9a6105ebda1fec492",
      "parents": [
        "94d3d8247de22c5b0624aa00616ceca459498e55"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed Aug 20 16:54:44 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Aug 22 15:17:29 2008 +0200"
      },
      "message": "wait_task_inactive(): don\u0027t consider task-\u003enivcsw\n\nIf wait_task_inactive() returns success the task was deactivated.  In that\ncase schedule() always increments -\u003envcsw which alone can be used as a\n\"generation counter\".\n\nIf the next call returns the same number, we can be sure that the task was\nunscheduled.  Otherwise, because we know that .on_rq \u003d\u003d 0 again, -\u003envcsw\nshould have been changed in between.\n\nQ: perhaps it is better to do \"ncsw \u003d (p-\u003envcsw \u003c\u003c 1) | 1\" ?  This\ndecreases the possibility of \"was it unscheduled\" false positive when\n-\u003envcsw \u003d\u003d 0.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "94d3d8247de22c5b0624aa00616ceca459498e55",
      "tree": "a01dedc8fb47010b27107c0a13ef0e926cc82589",
      "parents": [
        "f58e2c33ffa31b8d4a71609a5e71e8d893574a07"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed Aug 20 16:54:41 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Aug 22 15:17:28 2008 +0200"
      },
      "message": "sched: do_wait_for_common: use signal_pending_state()\n\nChange do_wait_for_common() to use signal_pending_state() instead of open\ncoding.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3c4fbe5e01d7e5309be5045e7ae0db20a049e6dc",
      "tree": "550195cb1a2ed58bc343e9a4f54d773e8abd5f90",
      "parents": [
        "6a55617ed5d1aa62b850de2cf66f5ede2eef4825"
      ],
      "author": {
        "name": "Miao Xie",
        "email": "miaox@cn.fujitsu.com",
        "time": "Wed Aug 20 16:37:38 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 21 09:54:06 2008 +0200"
      },
      "message": "nohz: fix wrong event handler after online an offlined cpu\n\nOn the tickless system(CONFIG_NO_HZ\u003dy and CONFIG_HIGH_RES_TIMERS\u003dn), after\nI made an offlined cpu online, I found this cpu\u0027s event handler was\ntick_handle_periodic, not tick_nohz_handler.\n\nAfter debuging, I found this bug was caused by the wrong tick mode.  the\ntick mode is not changed to NOHZ_MODE_INACTIVE when the cpu is offline.\n\nThis patch fixes this bug.\n\nSigned-off-by: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "01dcb0443ed89eccf26c2b43f1ea13b368ae740d",
      "tree": "30b6c33a6074dd28b15f0441cc96df716360fa68",
      "parents": [
        "6a55617ed5d1aa62b850de2cf66f5ede2eef4825"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Wed Aug 20 16:35:19 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 21 09:31:44 2008 +0200"
      },
      "message": "rcu: fix synchronize_rcu() so that kernel-doc works\n\nFix RCU\u0027s synchronize_rcu() so that it looks like a C function, enabling\nit to be recognized as a function with kernel-doc annotation.\n\nWarning(linux-2.6.26-git11//kernel/rcupdate.c:81): No description found for parameter \u0027synchronize_rcu\u0027\nWarning(linux-2.6.26-git11//kernel/rcupdate.c:81): No description found for parameter \u0027call_rcu\u0027\n\n[akpm@linux-foundation.org: fix comment]\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "efc2dead2c82cae31943828f6d977c483942b0eb",
      "tree": "1eabd7b84aacf1a314ec03f667512222d5d599f9",
      "parents": [
        "1fca25427482387689fa27594c992a961d98768f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Aug 20 12:44:55 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 21 08:18:02 2008 +0200"
      },
      "message": "sched: enable LB_BIAS by default\n\nYanmin reported a significant regression on his 16-core machine due to:\n\n  commit 93b75217df39e6d75889cc6f8050343286aff4a5\n  Author: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n  Date:   Fri Jun 27 13:41:33 2008 +0200\n\nFlip back to the old behaviour.\n\nReported-by: \"Zhang, Yanmin\" \u003cyanmin_zhang@linux.intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2d70b68d42b5196a48ccb639e3797f097ef5bea3",
      "tree": "b3040706cd69e0e7bc6d846e08fd91a441b34310",
      "parents": [
        "141d87e7debe3334018e46859c7565c44cebda65"
      ],
      "author": {
        "name": "Ken Chen",
        "email": "kenchen@google.com",
        "time": "Wed Aug 20 14:09:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 20 15:40:32 2008 -0700"
      },
      "message": "fix setpriority(PRIO_PGRP) thread iterator breakage\n\nWhen user calls sys_setpriority(PRIO_PGRP ...) on a NPTL style multi-LWP\nprocess, only the task leader of the process is affected, all other\nsibling LWP threads didn\u0027t receive the setting.  The problem was that the\niterator used in sys_setpriority() only iteartes over one task for each\nprocess, ignoring all other sibling thread.\n\nIntroduce a new macro do_each_pid_thread / while_each_pid_thread to walk\neach thread of a process.  Convert 4 call sites in {set/get}priority and\nioprio_{set/get}.\n\nSigned-off-by: Ken Chen \u003ckenchen@google.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1b04624f93bb1c4f9495b8476d1dd0200af019e2",
      "tree": "aa64cc4706f5dc396b1e9a74ce951b29aa294964",
      "parents": [
        "1fca25427482387689fa27594c992a961d98768f"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Tue Aug 19 20:37:07 2008 -0700"
      },
      "committer": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Tue Aug 19 20:37:07 2008 -0700"
      },
      "message": "tracehook: fix SA_NOCLDWAIT\n\nI outwitted myself again in commit 2b2a1ff64afbadac842bbc58c5166962cf4f7664,\nand broke the SA_NOCLDWAIT behavior so it leaks zombies.  This fixes it.\n\nReported-by: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\n"
    },
    {
      "commit": "9a7e0b180da21885988d47558671cf580279f9d6",
      "tree": "ab1e69b08eb393a91f7bcfa1cc97170d81f36814",
      "parents": [
        "eb755805f21bd5ded84026e167b7a90887ac42e5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Aug 19 12:33:06 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 19 13:10:12 2008 +0200"
      },
      "message": "sched: rt-bandwidth fixes\n\nThe last patch allows sysctl_sched_rt_runtime to disable bandwidth accounting\nfor the group scheduler - however it doesn\u0027t deal with sched_setscheduler(),\nwhich will keep tasks out of groups that have no assigned runtime.\n\nIf we relax this, we get into the situation where RT tasks can get into a group\nwhen we disable bandwidth control, and then starve them by enabling it again.\n\nRework the schedulability code to check for this condition and fail to turn\non bandwidth control with -EBUSY when this situation is found.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "eb755805f21bd5ded84026e167b7a90887ac42e5",
      "tree": "fab10d5e9189f93a5ee3f3f614ed1fbdbb34de6e",
      "parents": [
        "0b148fa04852859972abbf848177b92daeef138a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Aug 19 12:33:05 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 19 13:10:11 2008 +0200"
      },
      "message": "sched: extract walk_tg_tree()\n\nExtract walk_tg_tree() and make it a little more generic so we can use it\nin the schedulablity test.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0b148fa04852859972abbf848177b92daeef138a",
      "tree": "12d4b0daa8292fe406871b5aa034d7c9b2fae13d",
      "parents": [
        "6f0d5c390e4206dcb3804a5072a048fdb7d2b428"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Aug 19 12:33:04 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 19 13:10:10 2008 +0200"
      },
      "message": "sched: rt-bandwidth group disable fixes\n\nMore extensive disable of bandwidth control. It allows sysctl_sched_rt_runtime\nto disable full group bandwidth control.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6f0d5c390e4206dcb3804a5072a048fdb7d2b428",
      "tree": "60e25ec2076091c1deb9d414e84e276320be44bf",
      "parents": [
        "af4491e51632d01fbc2b856ffa9ebcd4b38db68c"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Aug 19 12:33:03 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 19 13:10:09 2008 +0200"
      },
      "message": "sched: rt-bandwidth accounting fix\n\nIt fixes an accounting bug where we would continue accumulating runtime\neven though the bandwidth control is disabled. This would lead to very long\nthrottle periods once bandwidth control gets turned on again.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "af4491e51632d01fbc2b856ffa9ebcd4b38db68c",
      "tree": "220ae302256cfca2d87e1fc6291b7b3ff26036e5",
      "parents": [
        "1fca25427482387689fa27594c992a961d98768f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Aug 19 12:33:02 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 19 13:10:09 2008 +0200"
      },
      "message": "sched: rt-bandwidth for user grouping interface\n\nrt_runtime is a signed value\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6951b12a0fe7fc64789f2c4d62d2a304e93836a8",
      "tree": "85588afbb9fce0ab0f6aac7c9a5d885562f2c51f",
      "parents": [
        "b09c3e3f1710b554348c98e78fbf4a661918779a"
      ],
      "author": {
        "name": "Dmitry Baryshkov",
        "email": "dbaryshkov@gmail.com",
        "time": "Mon Aug 18 04:26:37 2008 +0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 18 09:42:31 2008 +0200"
      },
      "message": "lockdep: fix spurious \u0027inconsistent lock state\u0027 warning\n\nSince f82b217e3513fe3af342c0f3ee1494e86250c21c lockdep can output spurious\nwarnings related to hwirqs due to hardirq_off shrinkage from int to bit-sized\nflag. Guard it with double negation to fix the warning.\n\nSigned-off-by: Dmitry Baryshkov \u003cdbaryshkov@gmail.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "406703f8de33bed0d34c6a083d58178317e27183",
      "tree": "9b63d1fc0ffbb59d007309b785ce6a04cd9a22f8",
      "parents": [
        "c100548d4610f727b95faffd69cb54cb280cd114",
        "df60a8441866153d691ae69b77934904c2de5e0d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 16 17:16:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 16 17:16:07 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  lockdep: fix build if CONFIG_PROVE_LOCKING not defined\n  lockdep: use WARN() in kernel/lockdep.c\n  lockdep: spin_lock_nest_lock(), checkpatch fixes\n  lockdep: build fix\n"
    },
    {
      "commit": "c100548d4610f727b95faffd69cb54cb280cd114",
      "tree": "0add41ffba7ced1f4742a327684fdb2bb57148c8",
      "parents": [
        "0473b7992943ee7b182aa4afeb602ba5d37d36e0",
        "55cd53404c5cc5fd94708232e3b4aa4a9388917b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 16 17:15:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 16 17:15:32 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: scale sysctl_sched_shares_ratelimit with nr_cpus\n  sched: fix rt-bandwidth hotplug race\n  sched: fix the race between walk_tg_tree and sched_create_group\n"
    },
    {
      "commit": "71ef2a46fce43042a60d7ccbf55ecbd789c03c2e",
      "tree": "247c3e25958ff362b8a7b5b735a1e7d2ef6842c7",
      "parents": [
        "d121db94eb50b29a202b5f6a8671cbebdf2c4142",
        "5cd9c58fbe9ec92b45b27e131719af4f2bd9eb40"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 15:32:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 15:32:13 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:\n  security: Fix setting of PF_SUPERPRIV by __capable()\n"
    },
    {
      "commit": "df60a8441866153d691ae69b77934904c2de5e0d",
      "tree": "3a893c0d5bf497408f6e670e38e6a480f7e8b035",
      "parents": [
        "2df8b1d656021e180ab93c8a4b2c9c2923d30b82"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Fri Aug 15 09:33:05 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Aug 15 19:22:04 2008 +0200"
      },
      "message": "lockdep: fix build if CONFIG_PROVE_LOCKING not defined\n\nIf CONFIG_PROVE_LOCKING not defined, then no dependency information\nis available.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "55cd53404c5cc5fd94708232e3b4aa4a9388917b",
      "tree": "08a3fe8cf626735bc8cdb96508824c4c49aad265",
      "parents": [
        "f1679d08480008e06fd619c71635ed33274e2595"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Aug 04 08:54:26 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Aug 15 18:25:07 2008 +0200"
      },
      "message": "sched: scale sysctl_sched_shares_ratelimit with nr_cpus\n\nDavid reported that his Niagra spend a little too much time in\ntg_shares_up(), which considering he has a large cpu count makes sense.\n\nSo scale the ratelimit value with the number of cpus like we do for\nother controls as well.\n\nReported-by: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "be4de35263f59ca1f4740edfffbfb02cc3f2189e",
      "tree": "7e560d01fdd56172b098e33b7c643de129e93b7b",
      "parents": [
        "e48880e02e7e7ead9daa47fe3a20486f550668d3"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Fri Aug 15 00:40:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:44 2008 -0700"
      },
      "message": "completions: uninline try_wait_for_completion and completion_done\n\nm68k fails to build with these functions inlined in completion.h.  Move\nthem out of line into sched.c and export them to avoid this problem.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8c5a1cf0ad3ac5fcdf51314a63b16a440870f6a2",
      "tree": "6b2d9084e05083daf6de69421f323c958b1d46ec",
      "parents": [
        "3122c331190e9d1622bf1c8cf6ce3b17cca67c9e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Fri Aug 15 00:40:27 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:43 2008 -0700"
      },
      "message": "kexec: use a mutex for locking rather than xchg()\n\nFunctionally the same, but more conventional.\n\nCc: Huang Ying \u003cying.huang@intel.com\u003e\nTested-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3122c331190e9d1622bf1c8cf6ce3b17cca67c9e",
      "tree": "e856b7a59f5ea5ba4f1662cefdae267b26af30dd",
      "parents": [
        "9bdeb7b5d34f197dea7859d24475943395ffea5e"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Aug 15 00:40:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:43 2008 -0700"
      },
      "message": "kexec jump: fix for ftrace\n\nFtrace depends on some processor state that we destroyed during kexec and\nrestored by restore_processor_state().  So save_processor_state() and\nrestore_processor_state() are moved into machine_kexec() and ftrace is\nrestored after restore_processor_state().\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "73bd9c72a29be1e8de008186eea55d333a938804",
      "tree": "f01823f4f93ca08fa7619b093dd8eed6ba5b58ab",
      "parents": [
        "ca195b7f6da3d5dde0bb85a7c322d7de73352653"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Aug 15 00:40:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:42 2008 -0700"
      },
      "message": "kexec jump: in sync with hibernation implementation\n\nAdd device_pm_lock() and device_pm_unlock() in kernel_kexec() in sync with\ncurrent hibernation implementation.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ca195b7f6da3d5dde0bb85a7c322d7de73352653",
      "tree": "1f8a31634ddc2bd4ba8a5fc081b39babab62323b",
      "parents": [
        "fb45daa69d287b394eca1619b3fadff7c0215c71"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Aug 15 00:40:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:42 2008 -0700"
      },
      "message": "kexec jump: remove duplication of kexec_restart_prepare()\n\nCall kernel_restart_prepare() in kernel_kexec() instead of duplicating the\ncode.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "163f6876f5c3ff8215e900b93779e960a56b3694",
      "tree": "9ba2df8417dedd3a17cf3ba4cba5a2acd578ee3a",
      "parents": [
        "7ade3fcc1fe2801336112027a884070c9ca451af"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Aug 15 00:40:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:42 2008 -0700"
      },
      "message": "kexec jump: rename KEXEC_CONTROL_CODE_SIZE to KEXEC_CONTROL_PAGE_SIZE\n\nRename KEXEC_CONTROL_CODE_SIZE to KEXEC_CONTROL_PAGE_SIZE, because control\npage is used for not only code on some platform.  For example in kexec\njump, it is used for data and stack too.\n\n[akpm@linux-foundation.org: unbreak powerpc and arm, finish conversion]\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7ade3fcc1fe2801336112027a884070c9ca451af",
      "tree": "add446bef1fc2ada030f1e749245075a6baa86a7",
      "parents": [
        "4cd69b986ebf0f8da93f82ffbb89c032ee09c2e1"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Aug 15 00:40:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:42 2008 -0700"
      },
      "message": "kexec jump: clean up #ifdef and comments\n\nMove if (kexec_image-\u003epreserve_context) { ...  } into #ifdef\nCONFIG_KEXEC_JUMP to make code looks cleaner.\n\nFix no longer correct comments of kernel_kexec().\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4cd69b986ebf0f8da93f82ffbb89c032ee09c2e1",
      "tree": "cb4085d0b8f18e86b892c5bd88a5d6280c698300",
      "parents": [
        "ce289e89726948b50a58c9e8f4e81174a8c9c254"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Aug 15 00:40:20 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:42 2008 -0700"
      },
      "message": "kexec: fix compilation warning on xchg(\u0026kexec_lock, 0) in kernel_kexec()\n\nkernel/kexec.c: In function \u0027kernel_kexec\u0027:\nkernel/kexec.c:1506: warning: value computed is not used\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f1679d08480008e06fd619c71635ed33274e2595",
      "tree": "bf38250a5b7c969a6b91ef1043f0cfdd02f966d4",
      "parents": [
        "09f2724a786f76475ef2985cf84f5359c553aade"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Aug 14 15:49:00 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 14 15:50:58 2008 +0200"
      },
      "message": "sched: fix rt-bandwidth hotplug race\n\nWhen we hot-unplug a cpu and rebuild the sched-domain, all cpus will be\ndetatched. Alex observed the case where a runqueue was stealing bandwidth\nfrom an already disabled runqueue to satisfy its own needs.\n\nStop this by skipping over already disabled runqueues.\n\nReported-by: Alex Nixon \u003calex.nixon@citrix.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Alex Nixon \u003calex.nixon@citrix.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5cd9c58fbe9ec92b45b27e131719af4f2bd9eb40",
      "tree": "8573db001b4dc3c2ad97102dda42b841c40b5f6c",
      "parents": [
        "8d0968abd03ec6b407df117adc773562386702fa"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Aug 14 11:37:28 2008 +0100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Aug 14 22:59:43 2008 +1000"
      },
      "message": "security: Fix setting of PF_SUPERPRIV by __capable()\n\nFix the setting of PF_SUPERPRIV by __capable() as it could corrupt the flags\nthe target process if that is not the current process and it is trying to\nchange its own flags in a different way at the same time.\n\n__capable() is using neither atomic ops nor locking to protect t-\u003eflags.  This\npatch removes __capable() and introduces has_capability() that doesn\u0027t set\nPF_SUPERPRIV on the process being queried.\n\nThis patch further splits security_ptrace() in two:\n\n (1) security_ptrace_may_access().  This passes judgement on whether one\n     process may access another only (PTRACE_MODE_ATTACH for ptrace() and\n     PTRACE_MODE_READ for /proc), and takes a pointer to the child process.\n     current is the parent.\n\n (2) security_ptrace_traceme().  This passes judgement on PTRACE_TRACEME only,\n     and takes only a pointer to the parent process.  current is the child.\n\n     In Smack and commoncap, this uses has_capability() to determine whether\n     the parent will be permitted to use PTRACE_ATTACH if normal checks fail.\n     This does not set PF_SUPERPRIV.\n\nTwo of the instances of __capable() actually only act on current, and so have\nbeen changed to calls to capable().\n\nOf the places that were using __capable():\n\n (1) The OOM killer calls __capable() thrice when weighing the killability of a\n     process.  All of these now use has_capability().\n\n (2) cap_ptrace() and smack_ptrace() were using __capable() to check to see\n     whether the parent was allowed to trace any process.  As mentioned above,\n     these have been split.  For PTRACE_ATTACH and /proc, capable() is now\n     used, and for PTRACE_TRACEME, has_capability() is used.\n\n (3) cap_safe_nice() only ever saw current, so now uses capable().\n\n (4) smack_setprocattr() rejected accesses to tasks other than current just\n     after calling __capable(), so the order of these two tests have been\n     switched and capable() is used instead.\n\n (5) In smack_file_send_sigiotask(), we need to allow privileged processes to\n     receive SIGIO on files they\u0027re manipulating.\n\n (6) In smack_task_wait(), we let a process wait for a privileged process,\n     whether or not the process doing the waiting is privileged.\n\nI\u0027ve tested this with the LTP SELinux and syscalls testscripts.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nAcked-by: Andrew G. Morgan \u003cmorgan@kernel.org\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    }
  ],
  "next": "cf417141cbb3a4ceb5cca15b2c1f099bd0a6603c"
}
