)]}'
{
  "log": [
    {
      "commit": "c5989bd43645dbb5d48197b02397565d1ceffa29",
      "tree": "bda6cd4ad20680299c06d3c459804f92ec44dbdb",
      "parents": [
        "33d588d0d93e7bf0af4b05420585bfc5df474e63"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Apr 20 13:05:45 2012 +0000"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sat Mar 29 00:49:53 2014 -0700"
      },
      "message": "smp: Provide generic idle thread allocation\n\nAll SMP architectures have magic to fork the idle task and to store it\nfor reusage when cpu hotplug is enabled. Provide a generic\ninfrastructure for it.\n\nCreate/reinit the idle thread for the cpu which is brought up in the\ngeneric code and hand the thread pointer to the architecture code via\n__cpu_up().\n\nNote, that fork_idle() is called via a workqueue, because this\nguarantees that the idle thread does not get a reference to a user\nspace VM. This can happen when the boot process did not bring up all\npossible cpus and a later cpu_up() is initiated via the sysfs\ninterface. In that case fork_idle() would be called in the context of\nthe user space task and take a reference on the user space VM.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: Richard Kuo \u003crkuo@codeaurora.org\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: James E.J. Bottomley \u003cjejb@parisc-linux.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nCc: x86@kernel.org\nAcked-by: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nLink: http://lkml.kernel.org/r/20120420124557.102478630@linutronix.de\n\nChange-Id: Ie2d32789f3a69ee15f38ba704aaa84d6be85bcd4\n"
    },
    {
      "commit": "66d383de0963dd351051304e36247e9a6fa66b77",
      "tree": "5cd17ffcb6edfa4385a2ceddb63ada9efdea2ee1",
      "parents": [
        "c523abc466c9b7c693e4a528ca2f54c6e931b6a6",
        "2606524141e4ff9b6a5d0bcbd9d601dfc5a8285c"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Mar 07 11:56:04 2014 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Mar 07 11:56:04 2014 -0800"
      },
      "message": "Merge tag \u0027v3.4.82\u0027 into cm-11.0\n\nThis is the 3.4.82 stable release\n\nConflicts:\n\tarch/arm/kernel/traps.c\n\tmm/internal.h\n\nChange-Id: Ie3b1ffdfe133e76cfa3eaaa4305535af8490d7cc\n"
    },
    {
      "commit": "f5a4c4b79e57f875b6788f6f8352ca246bfd8450",
      "tree": "936b2200d4581b36faa0c94fab560013486885be",
      "parents": [
        "e2d51f27e382be7b70a755f3ea2fbbeacdb50834"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu May 17 17:15:29 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 20 10:45:32 2014 -0800"
      },
      "message": "sched/nohz: Fix rq-\u003ecpu_load calculations some more\n\ncommit 5aaa0b7a2ed5b12692c9ffb5222182bd558d3146 upstream.\n\nFollow up on commit 556061b00 (\"sched/nohz: Fix rq-\u003ecpu_load[]\ncalculations\") since while that fixed the busy case it regressed the\nmostly idle case.\n\nAdd a callback from the nohz exit to also age the rq-\u003ecpu_load[]\narray. This closes the hole where either there was no nohz load\nbalance pass during the nohz, or there was a \u0027significant\u0027 amount of\nidle time between the last nohz balance and the nohz exit.\n\nSo we\u0027ll update unconditionally from the tick to not insert any\naccidental 0 load periods while busy, and we try and catch up from\nnohz idle balance and nohz exit. Both these are still prone to missing\na jiffy, but that has always been the case.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: pjt@google.com\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nLink: http://lkml.kernel.org/n/tip-kt0trz0apodbf84ucjfdbr1a@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Li Zefan \u003clizefan@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "e2d51f27e382be7b70a755f3ea2fbbeacdb50834",
      "tree": "893a14b43a9eda39df07c1a6879c74f197977358",
      "parents": [
        "1c2bd0db1189643691557ff34406906b053cef92"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 11 17:31:26 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 20 10:45:32 2014 -0800"
      },
      "message": "sched/nohz: Fix rq-\u003ecpu_load[] calculations\n\ncommit 556061b00c9f2fd6a5524b6bde823ef12f299ecf upstream.\n\nWhile investigating why the load-balancer did funny I found that the\nrq-\u003ecpu_load[] tables were completely screwy.. a bit more digging\nrevealed that the updates that got through were missing ticks followed\nby a catchup of 2 ticks.\n\nThe catchup assumes the cpu was idle during that time (since only nohz\ncan cause missed ticks and the machine is idle etc..) this means that\nesp. the higher indices were significantly lower than they ought to\nbe.\n\nThe reason for this is that its not correct to compare against jiffies\non every jiffy on any other cpu than the cpu that updates jiffies.\n\nThis patch cludges around it by only doing the catch-up stuff from\nnohz_idle_balance() and doing the regular stuff unconditionally from\nthe tick.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: pjt@google.com\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nLink: http://lkml.kernel.org/n/tip-tp4kj18xdd5aj4vvj0qg55s2@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Li Zefan \u003clizefan@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "dbf3239455b155c3e72deacda93ef3a041e190c9",
      "tree": "c7a8cfce370fa0de4cdeaab1b75925061fe9ccf1",
      "parents": [
        "f61eb9ceb26cee3fdbb8c7a4920f171f7661fb4f"
      ],
      "author": {
        "name": "Ying Xue",
        "email": "ying.xue@windriver.com",
        "time": "Tue Jul 17 15:03:43 2012 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 13 11:51:19 2014 -0800"
      },
      "message": "sched/rt: Avoid updating RT entry timeout twice within one tick period\n\ncommit 57d2aa00dcec67afa52478730f2b524521af14fb upstream.\n\nThe issue below was found in 2.6.34-rt rather than mainline rt\nkernel, but the issue still exists upstream as well.\n\nSo please let me describe how it was noticed on 2.6.34-rt:\n\nOn this version, each softirq has its own thread, it means there\nis at least one RT FIFO task per cpu. The priority of these\ntasks is set to 49 by default. If user launches an RT FIFO task\nwith priority lower than 49 of softirq RT tasks, it\u0027s possible\nthere are two RT FIFO tasks enqueued one cpu runqueue at one\nmoment. By current strategy of balancing RT tasks, when it comes\nto RT tasks, we really need to put them off to a CPU that they\ncan run on as soon as possible. Even if it means a bit of cache\nline flushing, we want RT tasks to be run with the least latency.\n\nWhen the user RT FIFO task which just launched before is\nrunning, the sched timer tick of the current cpu happens. In this\ntick period, the timeout value of the user RT task will be\nupdated once. Subsequently, we try to wake up one softirq RT\ntask on its local cpu. As the priority of current user RT task\nis lower than the softirq RT task, the current task will be\npreempted by the higher priority softirq RT task. Before\npreemption, we check to see if current can readily move to a\ndifferent cpu. If so, we will reschedule to allow the RT push logic\nto try to move current somewhere else. Whenever the woken\nsoftirq RT task runs, it first tries to migrate the user FIFO RT\ntask over to a cpu that is running a task of lesser priority. If\nmigration is done, it will send a reschedule request to the found\ncpu by IPI interrupt. Once the target cpu responds the IPI\ninterrupt, it will pick the migrated user RT task to preempt its\ncurrent task. When the user RT task is running on the new cpu,\nthe sched timer tick of the cpu fires. So it will tick the user\nRT task again. This also means the RT task timeout value will be\nupdated again. As the migration may be done in one tick period,\nit means the user RT task timeout value will be updated twice\nwithin one tick.\n\nIf we set a limit on the amount of cpu time for the user RT task\nby setrlimit(RLIMIT_RTTIME), the SIGXCPU signal should be posted\nupon reaching the soft limit.\n\nBut exactly when the SIGXCPU signal should be sent depends on the\nRT task timeout value. In fact the timeout mechanism of sending\nthe SIGXCPU signal assumes the RT task timeout is increased once\nevery tick.\n\nHowever, currently the timeout value may be added twice per\ntick. So it results in the SIGXCPU signal being sent earlier\nthan expected.\n\nTo solve this issue, we prevent the timeout value from increasing\ntwice within one tick time by remembering the jiffies value of\nlast updating the timeout. As long as the RT task\u0027s jiffies is\ndifferent with the global jiffies value, we allow its timeout to\nbe updated.\n\nSigned-off-by: Ying Xue \u003cying.xue@windriver.com\u003e\nSigned-off-by: Fan Du \u003cfan.du@windriver.com\u003e\nReviewed-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/1342508623-2887-1-git-send-email-ying.xue@windriver.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n[ lizf: backported to 3.4: adjust context ]\nSigned-off-by: Li Zefan \u003clizefan@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "f61eb9ceb26cee3fdbb8c7a4920f171f7661fb4f",
      "tree": "7ef1b69d19fdc57f57ce58dc78988ce4a653aa8e",
      "parents": [
        "1e5c13ec422f665432bfc9f7c5fc1f9fd614afd3"
      ],
      "author": {
        "name": "Peter Boonstoppel",
        "email": "pboonstoppel@nvidia.com",
        "time": "Thu Aug 09 15:34:47 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 13 11:51:19 2014 -0800"
      },
      "message": "sched: Unthrottle rt runqueues in __disable_runtime()\n\ncommit a4c96ae319b8047f62dedbe1eac79e321c185749 upstream.\n\nmigrate_tasks() uses _pick_next_task_rt() to get tasks from the\nreal-time runqueues to be migrated. When rt_rq is throttled\n_pick_next_task_rt() won\u0027t return anything, in which case\nmigrate_tasks() can\u0027t move all threads over and gets stuck in an\ninfinite loop.\n\nInstead unthrottle rt runqueues before migrating tasks.\n\nAdditionally: move unthrottle_offline_cfs_rqs() to rq_offline_fair()\n\nSigned-off-by: Peter Boonstoppel \u003cpboonstoppel@nvidia.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Turner \u003cpjt@google.com\u003e\nLink: http://lkml.kernel.org/r/5FBF8E85CA34454794F0F7ECBA79798F379D3648B7@HQMAIL04.nvidia.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n[ lizf: backported to 3.4: adjust context ]\nSigned-off-by: Li Zefan \u003clizefan@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "1e5c13ec422f665432bfc9f7c5fc1f9fd614afd3",
      "tree": "8588210c14890e4a797a9ea5402d6fa42ba3ceb6",
      "parents": [
        "21b53baf40aecb134593ec74eb787f16c569cfc5"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Aug 07 10:02:38 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 13 11:51:18 2014 -0800"
      },
      "message": "sched,rt: fix isolated CPUs leaving root_task_group indefinitely throttled\n\ncommit e221d028bb08b47e624c5f0a31732c642db9d19a upstream.\n\nRoot task group bandwidth replenishment must service all CPUs, regardless of\nwhere the timer was last started, and regardless of the isolation mechanism,\nlest \u0027Quoth the Raven, \"Nevermore\"\u0027 become rt scheduling policy.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1344326558.6968.25.camel@marge.simpson.net\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Li Zefan \u003clizefan@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "21b53baf40aecb134593ec74eb787f16c569cfc5",
      "tree": "c4c8bb46216c1baf4fe84d8787f5f6b7e01fe2f9",
      "parents": [
        "d5c20298b6d817b069c69d94df9cd8ed76b2ff15"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed May 16 21:34:23 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Feb 13 11:51:18 2014 -0800"
      },
      "message": "sched/rt: Fix SCHED_RR across cgroups\n\ncommit 454c79999f7eaedcdf4c15c449e43902980cbdf5 upstream.\n\ntask_tick_rt() has an optimization to only reschedule SCHED_RR tasks\nif they were the only element on their rq.  However, with cgroups\na SCHED_RR task could be the only element on its per-cgroup rq but\nstill be competing with other SCHED_RR tasks in its parent\u0027s\ncgroup.  In this case, the SCHED_RR task in the child cgroup would\nnever yield at the end of its timeslice.  If the child cgroup\nrt_runtime_us was the same as the parent cgroup rt_runtime_us,\nthe task in the parent cgroup would starve completely.\n\nModify task_tick_rt() to check that the task is the only task on its\nrq, and that the each of the scheduling entities of its ancestors\nis also the only entity on its rq.\n\nSigned-off-by: Colin Cross \u003cccross@android.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1337229266-15798-1-git-send-email-ccross@android.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Li Zefan \u003clizefan@huawei.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "3be9a220c1be739e7cc13aa778c2d97064ff430e",
      "tree": "f36ebe7bd393590e677348e8b26b1dcfa00149cb",
      "parents": [
        "f2ee187924b3fdb2475fc86641a8508f3c579abd"
      ],
      "author": {
        "name": "Matt Wagantall",
        "email": "mattw@codeaurora.org",
        "time": "Thu Dec 05 20:01:32 2013 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:29 2014 -0800"
      },
      "message": "sched/debug: Make sysrq prints of sched debug data optional\n\nCalls to sysrq_sched_debug_show() can yield rather verbose output\nwhich contributes to log spew and, under heavy load, may increase\nthe chances of a watchdog bark.\n\nMake printing of this data optional with the introduction of a\nnew Kconfig, CONFIG_SYSRQ_SCHED_DEBUG.\n\nChange-Id: I5f54d901d0dea403109f7ac33b8881d967a899ed\nSigned-off-by: Matt Wagantall \u003cmattw@codeaurora.org\u003e\n"
    },
    {
      "commit": "70d01bbd5d9dd6d6cbf0ad9a49e82ed615d4f957",
      "tree": "e7eb9d7ded2a6b53f883dacfa8f6179627c80fc1",
      "parents": [
        "eaf001971e9feaecfb88c7905666d74800e25b78"
      ],
      "author": {
        "name": "Vincent Guittot",
        "email": "vincent.guittot@linaro.org",
        "time": "Wed Jun 05 10:13:11 2013 +0200"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:28 2014 -0800"
      },
      "message": "sched: Fix clear NOHZ_BALANCE_KICK\n\nI have faced a sequence where the Idle Load Balance was sometime not\ntriggered for a while on my platform, in the following scenario:\n\n CPU 0 and CPU 1 are running tasks and CPU 2 is idle\n\n CPU 1 kicks the Idle Load Balance\n CPU 1 selects CPU 2 as the new Idle Load Balancer\n CPU 2 sets NOHZ_BALANCE_KICK for CPU 2\n CPU 2 sends a reschedule IPI to CPU 2\n\n While CPU 3 wakes up, CPU 0 or CPU 1 migrates a waking up task A on CPU 2\n\n CPU 2 finally wakes up, runs task A and discards the Idle Load Balance\n       task A quickly goes back to sleep (before a tick occurs on CPU 2)\n CPU 2 goes back to idle with NOHZ_BALANCE_KICK set\n\nWhenever CPU 2 will be selected as the ILB, no reschedule IPI will be sent\nbecause NOHZ_BALANCE_KICK is already set and no Idle Load Balance will be\nperformed.\n\nWe must wait for the sched softirq to be raised on CPU 2 thanks to another\npart the kernel to come back to clear NOHZ_BALANCE_KICK.\n\nThe proposed solution clears NOHZ_BALANCE_KICK in schedule_ipi if\nwe can\u0027t raise the sched_softirq for the Idle Load Balance.\n\nChange since V1:\n\n- move the clear of NOHZ_BALANCE_KICK in got_nohz_idle_kick if the ILB\n  can\u0027t run on this CPU (as suggested by Peter)\n\nChange-Id: Ia206acc5e1109dcb6e7cd09d96c238721b4ad044\nSigned-off-by: Vincent Guittot \u003cvincent.guittot@linaro.org\u003e\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/1370419991-13870-1-git-send-email-vincent.guittot@linaro.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nGit-commit: 873b4c65b519fd769940eb281f77848227d4e5c1\nGit-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n[smuckle@codeaurora.org: minor merge resolution for 3.4 in scheduler_ipi()]\nCRs-Fixed: 583754\nSigned-off-by: Steve Muckle \u003csmuckle@codeaurora.org\u003e\n"
    },
    {
      "commit": "eaf001971e9feaecfb88c7905666d74800e25b78",
      "tree": "580b0ae4877d5012e29a3536fdbda8490afcbe94",
      "parents": [
        "2dcea87b2a1ba331711661e34c3ce0a4c54c6ca8"
      ],
      "author": {
        "name": "Steve Muckle",
        "email": "smuckle@codeaurora.org",
        "time": "Tue Nov 19 14:16:53 2013 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:27 2014 -0800"
      },
      "message": "tracing/sched: add load balancer tracepoint\n\nWhen doing performance analysis it can be useful to see exactly\nwhat is going on with the load balancer - when it runs and why\nexactly it may not be redistributing load.\n\nThis additional tracepoint will show the idle context of the\nload balance operation (idle, not idle, newly idle), various\nvalues from the load balancing operation, the final result,\nand the new balance interval.\n\nChange-Id: I9e5c97ae3878bea44e60d189ff3cec2275f2c75e\nCRs-Fixed: 583754\nSigned-off-by: Steve Muckle \u003csmuckle@codeaurora.org\u003e\n"
    },
    {
      "commit": "450e8d5d9c5ceb54831aa4220833706e35aa7115",
      "tree": "feed12d303771c7c82c9c1690744e64444b093a1",
      "parents": [
        "4e12d515ff158a3f985d953d434623814cbf26c5"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "bitbucket@online.de",
        "time": "Mon Jan 28 12:19:25 2013 +0100"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:24 2014 -0800"
      },
      "message": "sched: Fix select_idle_sibling() bouncing cow syndrome\n\nIf the previous CPU is cache affine and idle, select it.\n\nThe current implementation simply traverses the sd_llc domain,\ntaking the first idle CPU encountered, which walks buddy pairs\nhand in hand over the package, inflicting excruciating pain.\n\n1 tbench pair (worst case) in a 10 core + SMT package:\n\n  pre   15.22 MB/sec 1 procs\n  post 252.01 MB/sec 1 procs\n\nSigned-off-by: Mike Galbraith \u003cbitbucket@online.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1359371965.5783.127.camel@marge.simpson.net\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "e38ca498b972d0246551cac1c3dd4f7535e48458",
      "tree": "0cba69c1b374e80eb66fd8f76469efc7878147f7",
      "parents": [
        "67bed6808090539cefdc0ecd2738e12ba8bc037e"
      ],
      "author": {
        "name": "Peter Boonstoppel",
        "email": "pboonstoppel@nvidia.com",
        "time": "Thu Aug 09 15:34:47 2012 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:13 2014 -0800"
      },
      "message": "sched: Unthrottle rt runqueues in __disable_runtime()\n\nmigrate_tasks() uses _pick_next_task_rt() to get tasks from the\nreal-time runqueues to be migrated. When rt_rq is throttled\n_pick_next_task_rt() won\u0027t return anything, in which case\nmigrate_tasks() can\u0027t move all threads over and gets stuck in an\ninfinite loop.\n\nInstead unthrottle rt runqueues before migrating tasks.\n\nAdditionally: move unthrottle_offline_cfs_rqs() to rq_offline_fair()\n\nChange-Id: If8a4a399f1a14b7f4789c1b205dcfadbde555214\nSigned-off-by: Peter Boonstoppel \u003cpboonstoppel@nvidia.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Turner \u003cpjt@google.com\u003e\nLink: http://lkml.kernel.org/r/5FBF8E85CA34454794F0F7ECBA79798F379D3648B7@HQMAIL04.nvidia.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nGit-commit: a4c96ae319b8047f62dedbe1eac79e321c185749\nGit-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\nSigned-off-by: Syed Rameez Mustafa \u003crameezmustafa@codeaurora.org\u003e\n"
    },
    {
      "commit": "279070e4a14ee1f1be82ba4ca104238a8ac2934f",
      "tree": "6f95cfe791ab4d1553552228c571ba7fba7ad28c",
      "parents": [
        "c44229e4367f7a19dbfdc279458e77e0e26bbd39"
      ],
      "author": {
        "name": "Steve Muckle",
        "email": "smuckle@codeaurora.org",
        "time": "Tue Jul 30 14:22:33 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:12 2014 -0800"
      },
      "message": "sched: change WARN_ON_ONCE to WARN_ON in try_to_wake_up_local()\n\nThe WARN_ON_ONCE() calls at the beginning of try_to_wake_up_local()\nwere recently converted from BUG_ON() calls. If these hit it indicates\nsomething is wrong and that may contribute to other system instability.\nTo eliminate the risk of an instance of one of these errors going\nun-noticed because there was an earlier instance that occured long ago,\nchange to WARN_ON(). If there ever is a flood of these there are bigger\nproblems.\n\nChange-Id: I392832e2b6ec24b3569b001b1af9ecd4ed6828e7\nSigned-off-by: Steve Muckle \u003csmuckle@codeaurora.org\u003e\n"
    },
    {
      "commit": "c44229e4367f7a19dbfdc279458e77e0e26bbd39",
      "tree": "5d17f28b2410f3f7c3f5716ce9e306ffcb71b20a",
      "parents": [
        "267ddac4c6b3ccbdeb88ed8afdf044436ce9d882"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue May 22 14:04:28 2012 +0200"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:12 2014 -0800"
      },
      "message": "sched: Make sure to not re-read variables after validation\n\nWe could re-read rq-\u003ert_avg after we validated it was smaller than\ntotal, invalidating the check and resulting in an unintended negative.\n\nChange-Id: I8543974aad539107768e9e513ca3a8c4cb79b2ff\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nLink: http://lkml.kernel.org/r/1337688268.9698.29.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nCRs-Fixed: 497236\nGit-commit: b654f7de41b0e3903ee2b51d3b8db77fe52ce728\nGit-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\nSigned-off-by: Srivatsa Vaddagiri \u003cvatsa@codeaurora.org\u003e\n"
    },
    {
      "commit": "267ddac4c6b3ccbdeb88ed8afdf044436ce9d882",
      "tree": "3899c44fcdc00ef2ddaa669f22d55be01522be63",
      "parents": [
        "e8c21d18999d624a75aa146abb45430929b8cf2c"
      ],
      "author": {
        "name": "Srivatsa Vaddagiri",
        "email": "vatsa@codeaurora.org",
        "time": "Tue Jun 11 17:43:09 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:12 2014 -0800"
      },
      "message": "sched: re-calculate a cpu\u0027s next_balance point upon sched domain changes\n\nCommit 55ddeb0f (sched: Reset rq-\u003enext_interval before going idle) reset\na cpu\u0027s rq-\u003enext_balance when pulled_task \u003d 0, which will be true when\nthe cpu failed to pull any task, causing it go idle. However that patch\nrelied on next_balance being calculated as a result of traversing cpu\u0027s\nsched domain hierarchy.\n\nA cpu that is the only online cpu will however not be attached to any\nsched domain hierarchy. When such a cpu calls into idle_balance(), we\nwill end up initializing next_balance to be 1sec away! Such a CPU will\ndefer load balance check for another 1sec, even though we may bring up\nmore cpus in the meantime requiring it to check for load imbalance more\nfrequently. This could then lead to increased scheduling latency for\nsome tasks.\n\nThis patch results in a cpu\u0027s next_balance being re-calculated when its\nattaching to a new sched domain hierarchy.  This should let cpus call\nload balance checks at the right time we expect them to!\n\nChange-Id: I855cff8da5ca28d278596c3bb0163b839d4704bc\nSigned-off-by: Srivatsa Vaddagiri \u003cvatsa@codeaurora.org\u003e\n"
    },
    {
      "commit": "e8c21d18999d624a75aa146abb45430929b8cf2c",
      "tree": "b03270fdebc1438cf92a9c215125980b9009ca95",
      "parents": [
        "f12accedccd3ca00a205151de2063224b4b380eb"
      ],
      "author": {
        "name": "Srivatsa Vaddagiri",
        "email": "vatsa@codeaurora.org",
        "time": "Mon May 13 15:11:55 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:11 2014 -0800"
      },
      "message": "sched: fix reference to wrong cfs_rq\n\nCommit 7db16c8c (sched: Fix SCHED_HRTICK bug leading to late preemption\nof tasks) introduced a bug in sched_slice() calculation by using wrong\ncfs_rq for tasks. rq-\u003ecfs was incorrectly used as task\u0027s cfs_rq, rather\nthan the correct one to which they belonged.\n\nFix the bug by using correct cfs_rq for tasks.\n\nSigned-off-by: Srivatsa Vaddagiri \u003cvatsa@codeaurora.org\u003e\n"
    },
    {
      "commit": "f12accedccd3ca00a205151de2063224b4b380eb",
      "tree": "16206f5c76e64a4b4a3ac2a59be3b4f852eafdfb",
      "parents": [
        "ce1a041e68c83a7f49982d353318fc409bc15970"
      ],
      "author": {
        "name": "Srivatsa Vaddagiri",
        "email": "vatsa@codeaurora.org",
        "time": "Thu Apr 18 11:42:22 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:11 2014 -0800"
      },
      "message": "sched: Fix SCHED_HRTICK bug leading to late preemption of tasks\n\nSCHED_HRTICK feature is useful to preempt SCHED_FAIR tasks on-the-dot\n(just when they would have exceeded their ideal_runtime). It makes use\nof a a per-cpu hrtimer resource and hence alarming that hrtimer should\nbe based on total SCHED_FAIR tasks a cpu has across its various cfs_rqs,\nrather than being based on number of tasks in a particular cfs_rq (as\nimplemented currently). As a result, with current code, its possible for\na running task (which is the sole task in its cfs_rq) to be preempted\nmuch after its ideal_runtime has elapsed, resulting in increased latency\nfor tasks in other cfs_rq on same cpu.\n\nFix this by alarming sched hrtimer based on total number of SCHED_FAIR\ntasks a CPU has across its various cfs_rqs.\n\nChange-Id: I1f23680a64872f8ce0f451ac4bcae28e8967918f\nSigned-off-by: Srivatsa Vaddagiri \u003cvatsa@codeaurora.org\u003e\n"
    },
    {
      "commit": "ce1a041e68c83a7f49982d353318fc409bc15970",
      "tree": "51040569270b4629e10bd688835923a248e07ef0",
      "parents": [
        "7af150bd625ba9b4f822b5692c2c00cc2097281e"
      ],
      "author": {
        "name": "Srivatsa Vaddagiri",
        "email": "vatsa@codeaurora.org",
        "time": "Thu Mar 07 12:14:53 2013 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:11 2014 -0800"
      },
      "message": "sched: Reset rq-\u003enext_interval before going idle\n\nnext_balance, the point in jiffy time scale when a cpu will next load\nbalance, could have been calculated when the cpu was busy. A busy cpu\nwill apply its sched domain\u0027s busy_factor (usually \u003e 1) in computing\nnext_balance for that sched domain, which causes the (busy) cpu to load\nbalance less frequently in its sched domains. However when the same cpu\nis going idle, its next_balance needs to be reset without consideration\nof busy_factor. Failure to do so would not trigger nohz idle balancer on\nthat cpu for unnecessarily long time (introducing additional scheduling\nlatencies for tasks). Fix bug in scheduler which aims to reset\nnext_balance before a cpu goes idle (as per existing comment) but is\nclearly not doing so.\n\nChange-Id: I7e027a51686528c4092d770c7d33c874d38f5df4\nSigned-off-by: Srivatsa Vaddagiri \u003cvatsa@codeaurora.org\u003e\n"
    },
    {
      "commit": "7af150bd625ba9b4f822b5692c2c00cc2097281e",
      "tree": "d909593ba721c4e96dcfc01b7cc630da2147a687",
      "parents": [
        "dcb32ee6fa05937ee15b27c1634e39d0d6e67f99"
      ],
      "author": {
        "name": "Steve Muckle",
        "email": "smuckle@codeaurora.org",
        "time": "Thu May 23 15:24:57 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:11 2014 -0800"
      },
      "message": "sched: remove migration notification from RT class\n\nCommit 88a7e37d265 (sched: provide per cpu-cgroup option to\nnotify on migrations) added a notifier call when a task is moved\nto a different CPU. Unfortunately the two call sites in the RT\nsched class where this occurs happens with a runqueue lock held.\nThis can result in a deadlock if the notifier call attempts to do\nsomething like wake up a task.\n\nFortunately the benefit of 88a7e37d265 comes mainly from notifying\non migration of non-RT tasks, so we can simply ignore the movements\nof RT tasks.\n\nCRs-Fixed: 491370\nChange-Id: I8849d826bf1eeaf85a6f6ad872acb475247c5926\nSigned-off-by: Steve Muckle \u003csmuckle@codeaurora.org\u003e\n"
    },
    {
      "commit": "9af6b695ac764184cdbdd42b77da3e600d337d14",
      "tree": "c4a5ae98b8872f62d290396b457f72d57ac72330",
      "parents": [
        "03d35a39f4de9f2e9d7fbc5c2d03dbcc5b882df7"
      ],
      "author": {
        "name": "Paul Turner",
        "email": "pjt@google.com",
        "time": "Wed Oct 16 11:16:27 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Jan 15 15:27:12 2014 -0800"
      },
      "message": "sched: Guarantee new group-entities always have weight\n\ncommit 0ac9b1c21874d2490331233b3242085f8151e166 upstream.\n\nCurrently, group entity load-weights are initialized to zero. This\nadmits some races with respect to the first time they are re-weighted in\nearlty use. ( Let g[x] denote the se for \"g\" on cpu \"x\". )\n\nSuppose that we have root-\u003ea and that a enters a throttled state,\nimmediately followed by a[0]-\u003et1 (the only task running on cpu[0])\nblocking:\n\n  put_prev_task(group_cfs_rq(a[0]), t1)\n  put_prev_entity(..., t1)\n  check_cfs_rq_runtime(group_cfs_rq(a[0]))\n  throttle_cfs_rq(group_cfs_rq(a[0]))\n\nThen, before unthrottling occurs, let a[0]-\u003eb[0]-\u003et2 wake for the first\ntime:\n\n  enqueue_task_fair(rq[0], t2)\n  enqueue_entity(group_cfs_rq(b[0]), t2)\n  enqueue_entity_load_avg(group_cfs_rq(b[0]), t2)\n  account_entity_enqueue(group_cfs_ra(b[0]), t2)\n  update_cfs_shares(group_cfs_rq(b[0]))\n  \u003c skipped because b is part of a throttled hierarchy \u003e\n  enqueue_entity(group_cfs_rq(a[0]), b[0])\n  ...\n\nWe now have b[0] enqueued, yet group_cfs_rq(a[0])-\u003eload.weight \u003d\u003d 0\nwhich violates invariants in several code-paths. Eliminate the\npossibility of this by initializing group entity weight.\n\nSigned-off-by: Paul Turner \u003cpjt@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/20131016181627.22647.47543.stgit@sword-of-the-dawn.mtv.corp.google.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Chris J Arges \u003cchris.j.arges@canonical.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "03d35a39f4de9f2e9d7fbc5c2d03dbcc5b882df7",
      "tree": "be90a817103d24c521ba427819374fd0600cef40",
      "parents": [
        "9b318052acd24780f4dba1349ef3a30a7aef52ad"
      ],
      "author": {
        "name": "Ben Segall",
        "email": "bsegall@google.com",
        "time": "Wed Oct 16 11:16:22 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Jan 15 15:27:11 2014 -0800"
      },
      "message": "sched: Fix hrtimer_cancel()/rq-\u003elock deadlock\n\ncommit 927b54fccbf04207ec92f669dce6806848cbec7d upstream.\n\n__start_cfs_bandwidth calls hrtimer_cancel while holding rq-\u003elock,\nwaiting for the hrtimer to finish. However, if sched_cfs_period_timer\nruns for another loop iteration, the hrtimer can attempt to take\nrq-\u003elock, resulting in deadlock.\n\nFix this by ensuring that cfs_b-\u003etimer_active is cleared only if the\n_latest_ call to do_sched_cfs_period_timer is returning as idle. Then\n__start_cfs_bandwidth can just call hrtimer_try_to_cancel and wait for\nthat to succeed or timer_active \u003d\u003d 1.\n\nSigned-off-by: Ben Segall \u003cbsegall@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: pjt@google.com\nLink: http://lkml.kernel.org/r/20131016181622.22647.16643.stgit@sword-of-the-dawn.mtv.corp.google.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Chris J Arges \u003cchris.j.arges@canonical.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "9b318052acd24780f4dba1349ef3a30a7aef52ad",
      "tree": "0e64c6925ec778aee88dad406f04c83763ee210c",
      "parents": [
        "16e7480c23d33d9475d45be92c1ddf218575a647"
      ],
      "author": {
        "name": "Ben Segall",
        "email": "bsegall@google.com",
        "time": "Wed Oct 16 11:16:17 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Jan 15 15:27:11 2014 -0800"
      },
      "message": "sched: Fix cfs_bandwidth misuse of hrtimer_expires_remaining\n\ncommit db06e78cc13d70f10877e0557becc88ab3ad2be8 upstream.\n\nhrtimer_expires_remaining does not take internal hrtimer locks and thus\nmust be guarded against concurrent __hrtimer_start_range_ns (but\nreturning HRTIMER_RESTART is safe). Use cfs_b-\u003elock to make it safe.\n\nSigned-off-by: Ben Segall \u003cbsegall@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: pjt@google.com\nLink: http://lkml.kernel.org/r/20131016181617.22647.73829.stgit@sword-of-the-dawn.mtv.corp.google.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Chris J Arges \u003cchris.j.arges@canonical.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "16e7480c23d33d9475d45be92c1ddf218575a647",
      "tree": "7cf3d25a05f42f95407ab5ea844d88ce451164ec",
      "parents": [
        "a63f31f1f2cdb459b121f644ccbd07ae84f45d4e"
      ],
      "author": {
        "name": "Ben Segall",
        "email": "bsegall@google.com",
        "time": "Wed Oct 16 11:16:12 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Jan 15 15:27:11 2014 -0800"
      },
      "message": "sched: Fix race on toggling cfs_bandwidth_used\n\ncommit 1ee14e6c8cddeeb8a490d7b54cd9016e4bb900b4 upstream.\n\nWhen we transition cfs_bandwidth_used to false, any currently\nthrottled groups will incorrectly return false from cfs_rq_throttled.\nWhile tg_set_cfs_bandwidth will unthrottle them eventually, currently\nrunning code (including at least dequeue_task_fair and\ndistribute_cfs_runtime) will cause errors.\n\nFix this by turning off cfs_bandwidth_used only after unthrottling all\ncfs_rqs.\n\nTested: toggle bandwidth back and forth on a loaded cgroup. Caused\ncrashes in minutes without the patch, hasn\u0027t crashed with it.\n\nSigned-off-by: Ben Segall \u003cbsegall@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: pjt@google.com\nLink: http://lkml.kernel.org/r/20131016181611.22647.80365.stgit@sword-of-the-dawn.mtv.corp.google.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Chris J Arges \u003cchris.j.arges@canonical.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "fda73056f62d84376a3d29926708b4a08155da31",
      "tree": "0080c4eec02c23179f59a50d269f48f7662b61ce",
      "parents": [
        "cf8f2e58d0893f9785b8056b29d9bbcb4758765f",
        "94f578e6aba14bb2aeb00db2e7f6e5f704fee937"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Tue Jan 14 21:50:44 2014 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Tue Jan 14 21:50:44 2014 -0800"
      },
      "message": "Merge tag \u0027v3.4.76\u0027 into cm-11.0\n\nThis is the 3.4.76 stable release\n\nConflicts:\n\tdrivers/gpio/gpio-msm-v2.c\n\nChange-Id: Ic80b29098bdf656b5e5c9b95d98d2ec64bba1f28\n"
    },
    {
      "commit": "dfb473b35096a0ffae221c7eeb49c34882ea6f9c",
      "tree": "a071f807c029cc0d39a46bceffea0f7c7990f7f3",
      "parents": [
        "05bbcdd32afbfd520c71ae8104a8bf531aed9163"
      ],
      "author": {
        "name": "Ben Segall",
        "email": "bsegall@google.com",
        "time": "Wed Oct 16 11:16:32 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Jan 08 09:42:12 2014 -0800"
      },
      "message": "sched: Avoid throttle_cfs_rq() racing with period_timer stopping\n\ncommit f9f9ffc237dd924f048204e8799da74f9ecf40cf upstream.\n\nthrottle_cfs_rq() doesn\u0027t check to make sure that period_timer is running,\nand while update_curr/assign_cfs_runtime does, a concurrently running\nperiod_timer on another cpu could cancel itself between this cpu\u0027s\nupdate_curr and throttle_cfs_rq(). If there are no other cfs_rqs running\nin the tg to restart the timer, this causes the cfs_rq to be stranded\nforever.\n\nFix this by calling __start_cfs_bandwidth() in throttle if the timer is\ninactive.\n\n(Also add some sched_debug lines for cfs_bandwidth.)\n\nTested: make a run/sleep task in a cgroup, loop switching the cgroup\nbetween 1ms/100ms quota and unlimited, checking for timer_active\u003d0 and\nthrottled\u003d1 as a failure. With the throttle_cfs_rq() change commented out\nthis fails, with the full patch it passes.\n\nSigned-off-by: Ben Segall \u003cbsegall@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: pjt@google.com\nLink: http://lkml.kernel.org/r/20131016181632.22647.84174.stgit@sword-of-the-dawn.mtv.corp.google.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Chris J Arges \u003cchris.j.arges@canonical.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "3f8878956c833443d6c6e498e9ed6a18ee30e0f5",
      "tree": "4d82b3f085f1085301ebee2c9415ff13c09af66b",
      "parents": [
        "a1192c0e5d037def6763f3873d3340615c241fe7"
      ],
      "author": {
        "name": "Kirill Tkhai",
        "email": "tkhai@yandex.ru",
        "time": "Wed Nov 27 19:59:13 2013 +0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Jan 08 09:42:11 2014 -0800"
      },
      "message": "sched/rt: Fix rq\u0027s cpupri leak while enqueue/dequeue child RT entities\n\ncommit 757dfcaa41844595964f1220f1d33182dae49976 upstream.\n\nThis patch touches the RT group scheduling case.\n\nFunctions inc_rt_prio_smp() and dec_rt_prio_smp() change (global) rq\u0027s\npriority, while rt_rq passed to them may be not the top-level rt_rq.\nThis is wrong, because changing of priority on a child level does not\nguarantee that the priority is the highest all over the rq. So, this\nleak makes RT balancing unusable.\n\nThe short example: the task having the highest priority among all rq\u0027s\nRT tasks (no one other task has the same priority) are waking on a\nthrottle rt_rq.  The rq\u0027s cpupri is set to the task\u0027s priority\nequivalent, but real rq-\u003ert.highest_prio.curr is less.\n\nThe patch below fixes the problem.\n\nSigned-off-by: Kirill Tkhai \u003ctkhai@yandex.ru\u003e\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCC: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLink: http://lkml.kernel.org/r/49231385567953@web4m.yandex.ru\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "2a38ada0f1ab9f894eea4428731ebc811b51c3f3",
      "tree": "759c765808a23a3a35e4ba10d8306c847c0205b7",
      "parents": [
        "19218e895cefdd389c96af12c93c89e7276bbaad",
        "44d19f5a04ae4e433548ba2f25e4d2ccfcac765e"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sun Dec 08 12:50:38 2013 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sun Dec 08 12:50:38 2013 -0800"
      },
      "message": "Merge tag \u0027v3.4.72\u0027 into tmp\n\nThis is the 3.4.72 stable release\n\nConflicts:\n\tarch/arm/Kconfig\n\tarch/arm/include/asm/mutex.h\n\tarch/arm/kernel/perf_event.c\n\tarch/arm/kernel/traps.c\n\tarch/arm/mm/dma-mapping.c\n\tdrivers/base/power/main.c\n\tdrivers/bluetooth/ath3k.c\n\tdrivers/bluetooth/btusb.c\n\tdrivers/gpu/drm/radeon/radeon_mode.h\n\tdrivers/mmc/card/block.c\n\tdrivers/mmc/host/sdhci.c\n\tdrivers/usb/core/message.c\n\tdrivers/usb/host/xhci-plat.c\n\tdrivers/usb/host/xhci.h\n\tdrivers/virtio/virtio_ring.c\n\tfs/ubifs/dir.c\n\tinclude/linux/freezer.h\n\tinclude/linux/virtio.h\n\tinclude/media/v4l2-ctrls.h\n\tinclude/net/bluetooth/hci_core.h\n\tinclude/net/bluetooth/mgmt.h\n\tkernel/cgroup.c\n\tkernel/futex.c\n\tkernel/signal.c\n\tnet/bluetooth/hci_conn.c\n\tnet/bluetooth/hci_core.c\n\tnet/bluetooth/hci_event.c\n\tnet/bluetooth/l2cap_core.c\n\tnet/bluetooth/mgmt.c\n\tnet/bluetooth/rfcomm/sock.c\n\tnet/bluetooth/smp.c\n\nChange-Id: I4fb0d5de74ca76f933d95d98e1a9c2c859402f34\n"
    },
    {
      "commit": "8f77c2895be7f4cb22c918c1aab1270fd8885ecd",
      "tree": "c0598ef38714b949d4ffa81ce5bad361c922d64e",
      "parents": [
        "a4710c60a66743df6277ce37ae2f9ed19fcdec09"
      ],
      "author": {
        "name": "Steve Muckle",
        "email": "smuckle@codeaurora.org",
        "time": "Mon Mar 11 16:33:42 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Tue Dec 03 22:08:22 2013 -0800"
      },
      "message": "sched: provide per cpu-cgroup option to notify on migrations\n\nOn systems where CPUs may run asynchronously, task migrations\nbetween CPUs running at grossly different speeds can cause\nproblems.\n\nThis change provides a mechanism to notify a subsystem\nin the kernel if a task in a particular cgroup migrates to a\ndifferent CPU. Other subsystems (such as cpufreq) may then\nregister for this notifier to take appropriate action when\nsuch a task is migrated.\n\nThe cgroup attribute to set for this behavior is\n\"notify_on_migrate\" .\n\nChange-Id: Ie1868249e53ef901b89c837fdc33b0ad0c0a4590\nSigned-off-by: Steve Muckle \u003csmuckle@codeaurora.org\u003e\n"
    },
    {
      "commit": "62875332eafea9ee150a6037c0a1a20669e02aa1",
      "tree": "71c673017dc9991b143ad989e6b3d20802a13719",
      "parents": [
        "ebce1a846aa297022fc372d59e6829d0453125f2"
      ],
      "author": {
        "name": "Daisuke Nishimura",
        "email": "nishimura@mxp.nes.nec.co.jp",
        "time": "Tue Sep 10 18:16:36 2013 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Oct 01 09:10:51 2013 -0700"
      },
      "message": "sched/fair: Fix small race where child-\u003ese.parent,cfs_rq might point to invalid ones\n\ncommit 6c9a27f5da9609fca46cb2b183724531b48f71ad upstream.\n\nThere is a small race between copy_process() and cgroup_attach_task()\nwhere child-\u003ese.parent,cfs_rq points to invalid (old) ones.\n\n        parent doing fork()      | someone moving the parent to another cgroup\n  -------------------------------+---------------------------------------------\n    copy_process()\n      + dup_task_struct()\n        -\u003e parent-\u003ese is copied to child-\u003ese.\n           se.parent,cfs_rq of them point to old ones.\n\n                                     cgroup_attach_task()\n                                       + cgroup_task_migrate()\n                                         -\u003e parent-\u003ecgroup is updated.\n                                       + cpu_cgroup_attach()\n                                         + sched_move_task()\n                                           + task_move_group_fair()\n                                             +- set_task_rq()\n                                                -\u003e se.parent,cfs_rq of parent\n                                                   are updated.\n\n      + cgroup_fork()\n        -\u003e parent-\u003ecgroup is copied to child-\u003ecgroup. (*1)\n      + sched_fork()\n        + task_fork_fair()\n          -\u003e se.parent,cfs_rq of child are accessed\n             while they point to old ones. (*2)\n\nIn the worst case, this bug can lead to \"use-after-free\" and cause a panic,\nbecause it\u0027s new cgroup\u0027s refcount that is incremented at (*1),\nso the old cgroup(and related data) can be freed before (*2).\n\nIn fact, a panic caused by this bug was originally caught in RHEL6.4.\n\n    BUG: unable to handle kernel NULL pointer dereference at (null)\n    IP: [\u003cffffffff81051e3e\u003e] sched_slice+0x6e/0xa0\n    [...]\n    Call Trace:\n     [\u003cffffffff81051f25\u003e] place_entity+0x75/0xa0\n     [\u003cffffffff81056a3a\u003e] task_fork_fair+0xaa/0x160\n     [\u003cffffffff81063c0b\u003e] sched_fork+0x6b/0x140\n     [\u003cffffffff8106c3c2\u003e] copy_process+0x5b2/0x1450\n     [\u003cffffffff81063b49\u003e] ? wake_up_new_task+0xd9/0x130\n     [\u003cffffffff8106d2f4\u003e] do_fork+0x94/0x460\n     [\u003cffffffff81072a9e\u003e] ? sys_wait4+0xae/0x100\n     [\u003cffffffff81009598\u003e] sys_clone+0x28/0x30\n     [\u003cffffffff8100b393\u003e] stub_clone+0x13/0x20\n     [\u003cffffffff8100b072\u003e] ? system_call_fastpath+0x16/0x1b\n\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/039601ceae06$733d3130$59b79390$@mxp.nes.nec.co.jp\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "1836cd176170d39f5b1fda9cd47d3c3f0f10dad2",
      "tree": "6452080dec303b174785e4b68ffaff2673e2a33c",
      "parents": [
        "ee9ef037ac99b542df34848fca2c9765910535e6"
      ],
      "author": {
        "name": "Zhu Yanhai",
        "email": "gaoyang.zyh@taobao.com",
        "time": "Tue Jan 08 12:56:52 2013 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Aug 11 15:38:43 2013 -0700"
      },
      "message": "sched: Fix the broken sched_rr_get_interval()\n\ncommit a59f4e079d19464eebb9b06513a1d4f55fdae5ba upstream.\n\nThe caller of sched_sliced() should pass se.cfs_rq and se as the\narguments, however in sched_rr_get_interval() we gave it\nrq.cfs_rq and se, which made the following computation obviously\nwrong.\n\nThe change was introduced by commit:\n\n  77034937dc45 sched: fix crash in sys_sched_rr_get_interval()\n\n... 5 years ago, while it had been the correct \u0027cfs_rq_of\u0027 before\nthe commit. The change seems to be irrelevant to the commit\nmsg, which was to return a 0 timeslice for tasks that are on an\nidle runqueue. So I believe that was just a plain typo.\n\nSigned-off-by: Zhu Yanhai \u003cgaoyang.zyh@taobao.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Turner \u003cpjt@google.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/1357621012-15039-1-git-send-email-gaoyang.zyh@taobao.com\n[ Since this is an ABI and an old bug, we\u0027ll test this via a\n  slow upstream route, to hopefully discover any app breakage. ]\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "1c9ce1e6c11777c95b974883be2f0313873d6f14",
      "tree": "68b149cb9f9e7988fc0955239208d9ab104d7bb6",
      "parents": [
        "849520777e464fa051188d1118d43f21babb9dbe",
        "00709f7f01c3a10252f030f0bdacecbb349d7be4"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Jul 22 22:10:20 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Jul 22 22:10:20 2013 -0700"
      },
      "message": "Merge tag \u0027v3.4.11\u0027 into cm-10.1\n\nThis is the 3.4.11 stable release\n\nConflicts:\n\tarch/arm/vfp/vfpmodule.c\n\tnet/bluetooth/hci_event.c\n\tnet/bluetooth/l2cap_core.c\n\nChange-Id: I164bf611358e14afd3ff48e55a99c0d7c7afc45f\n"
    },
    {
      "commit": "dde448d95d8698ee4c8373bb48fe08a22f41052f",
      "tree": "7fe87fa93bfa5b81e6f87b147e32512d2e8198e3",
      "parents": [
        "ac4f6190fae02a3dc30133f90488b996f726bf7a",
        "f95b978981a7d154ba40d14c18e8ed5c694e6124"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Thu Jun 20 11:32:42 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Thu Jun 20 11:32:42 2013 -0700"
      },
      "message": "Merge tag \u0027v3.4.10\u0027 into cm-10.1\n\nThis is the 3.4.10 stable release\n\nConflicts:\n\tarch/arm/mm/tlb-v7.S\n\tarch/arm/vfp/entry.S\n\tdrivers/base/power/main.c\n\tdrivers/mmc/host/sdhci.c\n\tdrivers/net/tun.c\n\tdrivers/usb/core/hub.c\n\tdrivers/usb/host/xhci.h\n\tinclude/linux/sched.h\n\tkernel/power/suspend.c\n\nChange-Id: Ia2477ec93ceb64b13dd1a2d8aa646cb233387d14\n"
    },
    {
      "commit": "410537558144cc886d780a02af9a09a122bff35b",
      "tree": "4bb0fec2c15698657d1d5929db9ca3f8d5759954",
      "parents": [
        "2a6b0247eee46f424e032fb7431cc4700ad19ea5"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Mar 18 12:22:34 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Apr 25 21:19:55 2013 -0700"
      },
      "message": "sched: Convert BUG_ON()s in try_to_wake_up_local() to WARN_ON_ONCE()s\n\ncommit 383efcd00053ec40023010ce5034bd702e7ab373 upstream.\n\ntry_to_wake_up_local() should only be invoked to wake up another\ntask in the same runqueue and BUG_ON()s are used to enforce the\nrule. Missing try_to_wake_up_local() can stall workqueue\nexecution but such stalls are likely to be finite either by\nanother work item being queued or the one blocked getting\nunblocked.  There\u0027s no reason to trigger BUG while holding rq\nlock crashing the whole system.\n\nConvert BUG_ON()s in try_to_wake_up_local() to WARN_ON_ONCE()s.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/20130318192234.GD3042@htj.dyndns.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "fdd9ce008f3de39fa7fcd17717f1d7a0895269ea",
      "tree": "f69986fac5f79f8dc785ef2b490162d17f80c8a7",
      "parents": [
        "bff6627568427d14375d84426f491646fdf71a1f"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Apr 06 10:10:27 2013 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Apr 16 21:27:27 2013 -0700"
      },
      "message": "sched_clock: Prevent 64bit inatomicity on 32bit systems\n\ncommit a1cbcaa9ea87b87a96b9fc465951dcf36e459ca2 upstream.\n\nThe sched_clock_remote() implementation has the following inatomicity\nproblem on 32bit systems when accessing the remote scd-\u003eclock, which\nis a 64bit value.\n\nCPU0\t\t\tCPU1\n\nsched_clock_local()\tsched_clock_remote(CPU0)\n...\n\t\t\tremote_clock \u003d scd[CPU0]-\u003eclock\n\t\t\t    read_low32bit(scd[CPU0]-\u003eclock)\ncmpxchg64(scd-\u003eclock,...)\n\t\t\t    read_high32bit(scd[CPU0]-\u003eclock)\n\nWhile the update of scd-\u003eclock is using an atomic64 mechanism, the\nreadout on the remote cpu is not, which can cause completely bogus\nreadouts.\n\nIt is a quite rare problem, because it requires the update to hit the\nnarrow race window between the low/high readout and the update must go\nacross the 32bit boundary.\n\nThe resulting misbehaviour is, that CPU1 will see the sched_clock on\nCPU1 ~4 seconds ahead of it\u0027s own and update CPU1s sched_clock value\nto this bogus timestamp. This stays that way due to the clamping\nimplementation for about 4 seconds until the synchronization with\nCLOCK_MONOTONIC undoes the problem.\n\nThe issue is hard to observe, because it might only result in a less\naccurate SCHED_OTHER timeslicing behaviour. To create observable\ndamage on realtime scheduling classes, it is necessary that the bogus\nupdate of CPU1 sched_clock happens in the context of an realtime\nthread, which then gets charged 4 seconds of RT runtime, which results\nin the RT throttler mechanism to trigger and prevent scheduling of RT\ntasks for a little less than 4 seconds. So this is quite unlikely as\nwell.\n\nThe issue was quite hard to decode as the reproduction time is between\n2 days and 3 weeks and intrusive tracing makes it less likely, but the\nfollowing trace recorded with trace_clock\u003dglobal, which uses\nsched_clock_local(), gave the final hint:\n\n  \u003cidle\u003e-0   0d..30 400269.477150: hrtimer_cancel: hrtimer\u003d0xf7061e80\n  \u003cidle\u003e-0   0d..30 400269.477151: hrtimer_start:  hrtimer\u003d0xf7061e80 ...\nirq/20-S-587 1d..32 400273.772118: sched_wakeup:   comm\u003d ... target_cpu\u003d0\n  \u003cidle\u003e-0   0dN.30 400273.772118: hrtimer_cancel: hrtimer\u003d0xf7061e80\n\nWhat happens is that CPU0 goes idle and invokes\nsched_clock_idle_sleep_event() which invokes sched_clock_local() and\nCPU1 runs a remote wakeup for CPU0 at the same time, which invokes\nsched_remote_clock(). The time jump gets propagated to CPU0 via\nsched_remote_clock() and stays stale on both cores for ~4 seconds.\n\nThere are only two other possibilities, which could cause a stale\nsched clock:\n\n1) ktime_get() which reads out CLOCK_MONOTONIC returns a sporadic\n   wrong value.\n\n2) sched_clock() which reads the TSC returns a sporadic wrong value.\n\n#1 can be excluded because sched_clock would continue to increase for\n   one jiffy and then go stale.\n\n#2 can be excluded because it would not make the clock jump\n   forward. It would just result in a stale sched_clock for one jiffy.\n\nAfter quite some brain twisting and finding the same pattern on other\ntraces, sched_clock_remote() remained the only place which could cause\nsuch a problem and as explained above it\u0027s indeed racy on 32bit\nsystems.\n\nSo while on 64bit systems the readout is atomic, we need to verify the\nremote readout on 32bit machines. We need to protect the local-\u003eclock\nreadout in sched_clock_remote() on 32bit as well because an NMI could\nhit between the low and the high readout, call sched_clock_local() and\nmodify local-\u003eclock.\n\nThanks to Siegfried Wulsch for bearing with my debug requests and\ngoing through the tedious tasks of running a bunch of reproducer\nsystems to generate the debug information which let me decode the\nissue.\n\nReported-by: Siegfried Wulsch \u003cSiegfried.Wulsch@rovema.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLink: http://lkml.kernel.org/r/alpine.LFD.2.02.1304051544160.21884@ionos\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "89960feebaf4f9a53f93a0ce6888207e4a808799",
      "tree": "91b4e4224f264e072b047ac636f585a2de98e602",
      "parents": [
        "11151f33ae2b29f8346f5ac1250c1879e3348cbc"
      ],
      "author": {
        "name": "Shawn Bohrer",
        "email": "sbohrer@rgmadvisors.com",
        "time": "Mon Jan 14 11:55:31 2013 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Feb 11 08:47:18 2013 -0800"
      },
      "message": "sched/rt: Use root_domain of rt_rq not current processor\n\ncommit aa7f67304d1a03180f463258aa6f15a8b434e77d upstream.\n\nWhen the system has multiple domains do_sched_rt_period_timer()\ncan run on any CPU and may iterate over all rt_rq in\ncpu_online_mask.  This means when balance_runtime() is run for a\ngiven rt_rq that rt_rq may be in a different rd than the current\nprocessor.  Thus if we use smp_processor_id() to get rd in\ndo_balance_runtime() we may borrow runtime from a rt_rq that is\nnot part of our rd.\n\nThis changes do_balance_runtime to get the rd from the passed in\nrt_rq ensuring that we borrow runtime only from the correct rd\nfor the given rt_rq.\n\nThis fixes a BUG at kernel/sched/rt.c:687! in __disable_runtime\nwhen we try reclaim runtime lent to other rt_rq but runtime has\nbeen lent to a rt_rq in another rd.\n\nSigned-off-by: Shawn Bohrer \u003csbohrer@rgmadvisors.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nAcked-by: Mike Galbraith \u003cbitbucket@online.de\u003e\nCc: peterz@infradead.org\nLink: http://lkml.kernel.org/r/1358186131-29494-1-git-send-email-sbohrer@rgmadvisors.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "465760c68a4e5037f10a7eab1df3fb2aff1e03a4",
      "tree": "01412ebaacf8ff07622f0048e2dad45643ba4790",
      "parents": [
        "9b6d794e7e56f3a413c57a15d4e07fb7efe6530a"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Jan 21 20:48:17 2013 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Jan 27 20:47:43 2013 -0800"
      },
      "message": "wake_up_process() should be never used to wakeup a TASK_STOPPED/TRACED task\n\ncommit 9067ac85d533651b98c2ff903182a20cbb361fcb upstream.\n\nwake_up_process() should never wakeup a TASK_STOPPED/TRACED task.\nChange it to use TASK_NORMAL and add the WARN_ON().\n\nTASK_ALL has no other users, probably can be killed.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "d448abac51854c994e6436713945ecf57c1badbb",
      "tree": "810413c28b120da523d140052cf8f104ade86280",
      "parents": [
        "6dbd3b7dbcb05fe324bf629256ae5f0510c6a5f0"
      ],
      "author": {
        "name": "Steve Muckle",
        "email": "smuckle@codeaurora.org",
        "time": "Wed Oct 24 15:00:20 2012 -0700"
      },
      "committer": {
        "name": "Sudhir Sharma",
        "email": "sudsha@codeaurora.org",
        "time": "Mon Dec 10 11:22:08 2012 -0800"
      },
      "message": "sched: add sysctl for controlling task migrations on wake\n\nThe PF_WAKE_UP_IDLE per-task flag made it impossible to enable\nthe old behavior of SD_SHARE_PKG_RESOURCES, where every task\nmigrates to an idle CPU on wakeup.\n\nThe sched_wake_to_idle sysctl value, when made nonzero, will cause\nall tasks to migrate to an idle CPU if one is available when the\ntask is woken up. This is regardless of how PF_WAKE_UP_IDLE is\nconfigured for tasks in the system. Similar to PF_WAKE_UP_IDLE,\nthe SD_SHARE_PKG_RESOURCES scheduler domain flag must be enabled\nfor the sysctl value to have an effect.\n\nChange-Id: I23bed846d26502c7aed600bfcf1c13053a7e5f61\nSigned-off-by: Steve Muckle \u003csmuckle@codeaurora.org\u003e\n(cherry picked from commit 9d5b38dc0025d19df5b756b16024b4269e73f282)\n"
    },
    {
      "commit": "3d81da8645585b9c116a7ac20b99ac8909677c80",
      "tree": "a62c27746288ba6e17666bfa6aa017ec3ff3f576",
      "parents": [
        "43477d60e75490b168627aaafccb7032b28d2574"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Mon Dec 03 06:25:25 2012 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Dec 10 10:59:40 2012 -0800"
      },
      "message": "Revert \"sched, autogroup: Stop going ahead if autogroup is disabled\"\n\ncommit fd8ef11730f1d03d5d6555aa53126e9e34f52f12 upstream.\n\nThis reverts commit 800d4d30c8f20bd728e5741a3b77c4859a613f7c.\n\nBetween commits 8323f26ce342 (\"sched: Fix race in task_group()\") and\n800d4d30c8f2 (\"sched, autogroup: Stop going ahead if autogroup is\ndisabled\"), autogroup is a wreck.\n\nWith both applied, all you have to do to crash a box is disable\nautogroup during boot up, then reboot..  boom, NULL pointer dereference\ndue to commit 800d4d30c8f2 not allowing autogroup to move things, and\ncommit 8323f26ce342 making that the only way to switch runqueues:\n\n  BUG: unable to handle kernel NULL pointer dereference at           (null)\n  IP: [\u003cffffffff81063ac0\u003e] effective_load.isra.43+0x50/0x90\n  Pid: 7047, comm: systemd-user-se Not tainted 3.6.8-smp #7 MEDIONPC MS-7502/MS-7502\n  RIP: effective_load.isra.43+0x50/0x90\n  Process systemd-user-se (pid: 7047, threadinfo ffff880221dde000, task ffff88022618b3a0)\n  Call Trace:\n    select_task_rq_fair+0x255/0x780\n    try_to_wake_up+0x156/0x2c0\n    wake_up_state+0xb/0x10\n    signal_wake_up+0x28/0x40\n    complete_signal+0x1d6/0x250\n    __send_signal+0x170/0x310\n    send_signal+0x40/0x80\n    do_send_sig_info+0x47/0x90\n    group_send_sig_info+0x4a/0x70\n    kill_pid_info+0x3a/0x60\n    sys_kill+0x97/0x1a0\n    ? vfs_read+0x120/0x160\n    ? sys_read+0x45/0x90\n    system_call_fastpath+0x16/0x1b\n  Code: 49 0f af 41 50 31 d2 49 f7 f0 48 83 f8 01 48 0f 46 c6 48 2b 07 48 8b bf 40 01 00 00 48 85 ff 74 3a 45 31 c0 48 8b 8f 50 01 00 00 \u003c48\u003e 8b 11 4c 8b 89 80 00 00 00 49 89 d2 48 01 d0 45 8b 59 58 4c\n  RIP  [\u003cffffffff81063ac0\u003e] effective_load.isra.43+0x50/0x90\n   RSP \u003cffff880221ddfbd8\u003e\n  CR2: 0000000000000000\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "ff96cd21849cdde73bda1326b00bbc046f20717e",
      "tree": "f734673877b26f1ee7f05637b03e87b06f88b312",
      "parents": [
        "a4b025c0e15dbbecc98fb3d41fc5e9cc86fb133f"
      ],
      "author": {
        "name": "Steve Muckle",
        "email": "smuckle@codeaurora.org",
        "time": "Mon Sep 10 11:45:02 2012 -0700"
      },
      "committer": {
        "name": "Sudhir Sharma",
        "email": "sudsha@codeaurora.org",
        "time": "Mon Nov 05 22:47:08 2012 -0800"
      },
      "message": "sched: add PF_WAKE_UP_IDLE.\n\nCertain workloads may benefit from the SD_SHARE_PKG_RESOURCES behavior\nof waking their tasks up on idle CPUs. The feature has too much of a\nnegative impact on other workloads however to apply globally. The\nPF_WAKE_UP_IDLE flag tells the scheduler to wake up tasks that have this\nflag set, or tasks woken by tasks with this flag set, on an idle CPU\nif one is available.\n\nSigned-off-by: Steve Muckle \u003csmuckle@codeaurora.org\u003e\n(cherry picked from commit 500988016c53b675eae02401bd97462fed1737d6)\n\nChange-Id: I6996afacecaec2959b84794eb032fe0a1ef2b3d7\nSigned-off-by: Sudhir Sharma \u003csudsha@codeaurora.org\u003e\n"
    },
    {
      "commit": "fe9a0d032a38012de574eed70a98c1385b23a4a1",
      "tree": "565e682eb7ad468be99e16d50af5db0cae9bb775",
      "parents": [
        "cf28b20203654e39eac945781282e181cc4a4b1b"
      ],
      "author": {
        "name": "Jeff Ohlstein",
        "email": "johlstei@codeaurora.org",
        "time": "Tue Jun 19 15:59:46 2012 -0700"
      },
      "committer": {
        "name": "Sudhir Sharma",
        "email": "sudsha@codeaurora.org",
        "time": "Tue Oct 30 20:12:11 2012 -0700"
      },
      "message": "sched_avg: add run queue averaging.\n\nAdd code to calculate the run queue depth of a cpu and iowait\ndepth of the cpu.\n\nThe scheduler calls in to sched_update_nr_prod whenever there\nis a runqueue change. This function maintains the runqueue average\nand the iowait of that cpu in that time interval.\n\nWhoever wants to know the runqueue average is expected to call\nsched_get_nr_running_avg periodically to get the accumulated\nrunqueue and iowait averages for all the cpus.\n\nSigned-off-by: Jeff Ohlstein \u003cjohlstei@codeaurora.org\u003e\n(cherry picked from commit 0299fcaaad80e2c0ac9aa583c95107f6edc27750)\n\nSigned-off-by: Ram Kumar Chakravarthy Chebathini \u003crcheba@codeaurora.org\u003e\n(cherry picked from commit 5325d8a44f8296170cd8f42e245dd79f7b7347bf)\n\nChange-Id: I92875789886c3f7c2457a063de4b3b6d8c893718\nSigned-off-by: Sudhir Sharma \u003csudsha@codeaurora.org\u003e\n"
    },
    {
      "commit": "93875bc33f71bf7a4851b44d387743866b13b130",
      "tree": "cb2efc3120da03ba6bddefd3f8b8eddc1dc91c21",
      "parents": [
        "e08ea4c7d4e90aab75307c3c8018d2d4bbeebc0b"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "mgalbraith@suse.de",
        "time": "Sat Aug 04 05:44:14 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sat Oct 13 05:39:01 2012 +0900"
      },
      "message": "sched: Fix migration thread runtime bogosity\n\ncommit 8f6189684eb4e85e6c593cd710693f09c944450a upstream.\n\nMake stop scheduler class do the same accounting as other classes,\n\nMigration threads can be caught in the act while doing exec balancing,\nleading to the below due to use of unmaintained -\u003ese.exec_start.  The\nload that triggered this particular instance was an apparently out of\ncontrol heavily threaded application that does system monitoring in\nwhat equated to an exec bomb, with one of the VERY frequently migrated\ntasks being ps.\n\n%CPU   PID USER     CMD\n99.3    45 root     [migration/10]\n97.7    53 root     [migration/12]\n97.0    57 root     [migration/13]\n90.1    49 root     [migration/11]\n89.6    65 root     [migration/15]\n88.7    17 root     [migration/3]\n80.4    37 root     [migration/8]\n78.1    41 root     [migration/9]\n44.2    13 root     [migration/2]\n\nSigned-off-by: Mike Galbraith \u003cmgalbraith@suse.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1344051854.6739.19.camel@marge.simpson.net\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "c62f9945efea31db203fd4fb77e830ddffdcabf6",
      "tree": "efdcd875b3c6e79bbd47e57d9410d23c993c5c17",
      "parents": [
        "0c9673834740afdfa7c172b1b19c6b3ec5bc3907"
      ],
      "author": {
        "name": "Srivatsa S. Bhat",
        "email": "srivatsa.bhat@linux.vnet.ibm.com",
        "time": "Thu May 24 19:46:26 2012 +0530"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sat Oct 13 05:38:57 2012 +0900"
      },
      "message": "CPU hotplug, cpusets, suspend: Don\u0027t modify cpusets during suspend/resume\n\ncommit d35be8bab9b0ce44bed4b9453f86ebf64062721e upstream.\n\nIn the event of CPU hotplug, the kernel modifies the cpusets\u0027 cpus_allowed\nmasks as and when necessary to ensure that the tasks belonging to the cpusets\nhave some place (online CPUs) to run on. And regular CPU hotplug is\ndestructive in the sense that the kernel doesn\u0027t remember the original cpuset\nconfigurations set by the user, across hotplug operations.\n\nHowever, suspend/resume (which uses CPU hotplug) is a special case in which\nthe kernel has the responsibility to restore the system (during resume), to\nexactly the same state it was in before suspend.\n\nIn order to achieve that, do the following:\n\n1. Don\u0027t modify cpusets during suspend/resume. At all.\n   In particular, don\u0027t move the tasks from one cpuset to another, and\n   don\u0027t modify any cpuset\u0027s cpus_allowed mask. So, simply ignore cpusets\n   during the CPU hotplug operations that are carried out in the\n   suspend/resume path.\n\n2. However, cpusets and sched domains are related. We just want to avoid\n   altering cpusets alone. So, to keep the sched domains updated, build\n   a single sched domain (containing all active cpus) during each of the\n   CPU hotplug operations carried out in s/r path, effectively ignoring\n   the cpusets\u0027 cpus_allowed masks.\n\n   (Since userspace is frozen while doing all this, it will go unnoticed.)\n\n3. During the last CPU online operation during resume, build the sched\n   domains by looking up the (unaltered) cpusets\u0027 cpus_allowed masks.\n   That will bring back the system to the same original state as it was in\n   before suspend.\n\nUltimately, this will not only solve the cpuset problem related to suspend\nresume (ie., restores the cpusets to exactly what it was before suspend, by\nnot touching it at all) but also speeds up suspend/resume because we avoid\nrunning cpuset update code for every CPU being offlined/onlined.\n\nSigned-off-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/20120524141611.3692.20155.stgit@srivatsabhat.in.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Preeti U Murthy \u003cpreeti@linux.vnet.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "e194fab8d7ebe95db5609f1cb6794c2afcc3118f",
      "tree": "2367f196d1cfa94a2078834bee0d4a64734eb884",
      "parents": [
        "6418cc471b5d8a64ce22d2aa827fcb275e61449c"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Fri Jun 22 13:36:05 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Oct 02 10:30:35 2012 -0700"
      },
      "message": "sched: Fix race in task_group()\n\ncommit 8323f26ce3425460769605a6aece7a174edaa7d1 upstream.\n\nStefan reported a crash on a kernel before a3e5d1091c1 (\"sched:\nDon\u0027t call task_group() too many times in set_task_rq()\"), he\nfound the reason to be that the multiple task_group()\ninvocations in set_task_rq() returned different values.\n\nLooking at all that I found a lack of serialization and plain\nwrong comments.\n\nThe below tries to fix it using an extra pointer which is\nupdated under the appropriate scheduler locks. Its not pretty,\nbut I can\u0027t really see another way given how all the cgroup\nstuff works.\n\nReported-and-tested-by: Stefan Bader \u003cstefan.bader@canonical.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1340364965.18025.71.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "ebad30a797a5e5093d69e39bc046edab9452fe00",
      "tree": "72bb3340190a4b42d2bd302cc706c6b91c1b45a6",
      "parents": [
        "0f342b96d471d48fb151ae9073e58e0510e0a58f"
      ],
      "author": {
        "name": "Stanislaw Gruszka",
        "email": "sgruszka@redhat.com",
        "time": "Wed Aug 08 11:27:15 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Sep 14 10:00:20 2012 -0700"
      },
      "message": "sched: fix divide by zero at {thread_group,task}_times\n\ncommit bea6832cc8c4a0a9a65dd17da6aaa657fe27bc3e upstream.\n\nOn architectures where cputime_t is 64 bit type, is possible to trigger\ndivide by zero on do_div(temp, (__force u32) total) line, if total is a\nnon zero number but has lower 32 bit\u0027s zeroed. Removing casting is not\na good solution since some do_div() implementations do cast to u32\ninternally.\n\nThis problem can be triggered in practice on very long lived processes:\n\n  PID: 2331   TASK: ffff880472814b00  CPU: 2   COMMAND: \"oraagent.bin\"\n   #0 [ffff880472a51b70] machine_kexec at ffffffff8103214b\n   #1 [ffff880472a51bd0] crash_kexec at ffffffff810b91c2\n   #2 [ffff880472a51ca0] oops_end at ffffffff814f0b00\n   #3 [ffff880472a51cd0] die at ffffffff8100f26b\n   #4 [ffff880472a51d00] do_trap at ffffffff814f03f4\n   #5 [ffff880472a51d60] do_divide_error at ffffffff8100cfff\n   #6 [ffff880472a51e00] divide_error at ffffffff8100be7b\n      [exception RIP: thread_group_times+0x56]\n      RIP: ffffffff81056a16  RSP: ffff880472a51eb8  RFLAGS: 00010046\n      RAX: bc3572c9fe12d194  RBX: ffff880874150800  RCX: 0000000110266fad\n      RDX: 0000000000000000  RSI: ffff880472a51eb8  RDI: 001038ae7d9633dc\n      RBP: ffff880472a51ef8   R8: 00000000b10a3a64   R9: ffff880874150800\n      R10: 00007fcba27ab680  R11: 0000000000000202  R12: ffff880472a51f08\n      R13: ffff880472a51f10  R14: 0000000000000000  R15: 0000000000000007\n      ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0018\n   #7 [ffff880472a51f00] do_sys_times at ffffffff8108845d\n   #8 [ffff880472a51f40] sys_times at ffffffff81088524\n   #9 [ffff880472a51f80] system_call_fastpath at ffffffff8100b0f2\n      RIP: 0000003808caac3a  RSP: 00007fcba27ab6d8  RFLAGS: 00000202\n      RAX: 0000000000000064  RBX: ffffffff8100b0f2  RCX: 0000000000000000\n      RDX: 00007fcba27ab6e0  RSI: 000000000076d58e  RDI: 00007fcba27ab6e0\n      RBP: 00007fcba27ab700   R8: 0000000000000020   R9: 000000000000091b\n      R10: 00007fcba27ab680  R11: 0000000000000202  R12: 00007fff9ca41940\n      R13: 0000000000000000  R14: 00007fcba27ac9c0  R15: 00007fff9ca41940\n      ORIG_RAX: 0000000000000064  CS: 0033  SS: 002b\n\nSigned-off-by: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20120808092714.GA3580@redhat.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "0f342b96d471d48fb151ae9073e58e0510e0a58f",
      "tree": "58a1e4265c0a36975e487b02027915274ee701bc",
      "parents": [
        "3465c32ced49e3c04b7e280843f1a93ec8de8aff"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Aug 07 05:00:13 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Sep 14 10:00:20 2012 -0700"
      },
      "message": "sched,cgroup: Fix up task_groups list\n\ncommit 35cf4e50b16331def6cfcbee11e49270b6db07f5 upstream.\n\nWith multiple instances of task_groups, for_each_rt_rq() is a noop,\nno task groups having been added to the rt.c list instance.  This\nrenders __enable/disable_runtime() and print_rt_stats() noop, the\nuser (non) visible effect being that rt task groups are missing in\n/proc/sched_debug.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1344308413.6846.7.camel@marge.simpson.net\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "7490d0a4cfefa16f9d8ce636eb5b2e13d2432db3",
      "tree": "70ee2418549bd1af674a7bda391140a45a5e11ce",
      "parents": [
        "667fb5508900340d657645e0bfc9bf210a1fc363"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 22 15:52:09 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Jul 19 08:58:56 2012 -0700"
      },
      "message": "sched/nohz: Rewrite and fix load-avg computation -- again\n\ncommit 5167e8d5417bf5c322a703d2927daec727ea40dd upstream.\n\nThanks to Charles Wang for spotting the defects in the current code:\n\n - If we go idle during the sample window -- after sampling, we get a\n   negative bias because we can negate our own sample.\n\n - If we wake up during the sample window we get a positive bias\n   because we push the sample to a known active period.\n\nSo rewrite the entire nohz load-avg muck once again, now adding\ncopious documentation to the code.\n\nReported-and-tested-by: Doug Smythies \u003cdsmythies@telus.net\u003e\nReported-and-tested-by: Charles Wang \u003cmuming.wq@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/1340373782.18025.74.camel@twins\n[ minor edits ]\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "8997b2223b9d81f6085764d08f9de3a2da760333",
      "tree": "dbe9f854a48d94b079df1a3ba8304b612bbf7122",
      "parents": [
        "3e2b0c74fa03b8788f8f7e9bcc778463e53c49a9"
      ],
      "author": {
        "name": "Dimitri Sivanich",
        "email": "sivanich@sgi.com",
        "time": "Tue Jun 05 13:44:36 2012 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Jun 17 11:21:28 2012 -0700"
      },
      "message": "sched: Fix the relax_domain_level boot parameter\n\ncommit a841f8cef4bb124f0f5563314d0beaf2e1249d72 upstream.\n\nIt does not get processed because sched_domain_level_max is 0 at the\ntime that setup_relax_domain_level() is run.\n\nSimply accept the value as it is, as we don\u0027t know the value of\nsched_domain_level_max until sched domain construction is completed.\n\nFix sched_relax_domain_level in cpuset.  The build_sched_domain() routine calls\nthe set_domain_attribute() routine prior to setting the sd-\u003elevel, however,\nthe set_domain_attribute() routine relies on the sd-\u003elevel to decide whether\nidle load balancing will be off/on.\n\nSigned-off-by: Dimitri Sivanich \u003csivanich@sgi.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20120605184436.GA15668@sgi.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "f132c6cf77251e011e1dad0ec88c0b1fda16d5aa",
      "tree": "f04b469a3547a19b7bdbe110adc571eb71c93328",
      "parents": [
        "23016defd7db701a01dc49f972ad6b1bae9651c2",
        "3f6240f3e4e2608caf1a70d614ada658cbcbe7be"
      ],
      "author": {
        "name": "Steve Muckle",
        "email": "smuckle@codeaurora.org",
        "time": "Wed Jun 06 18:30:57 2012 -0700"
      },
      "committer": {
        "name": "Steve Muckle",
        "email": "smuckle@codeaurora.org",
        "time": "Wed Jun 06 18:45:28 2012 -0700"
      },
      "message": "Merge commit \u0027AU_LINUX_ANDROID_ICS.04.00.04.00.126\u0027 into msm-3.4\n\nAU_LINUX_ANDROID_ICS.04.00.04.00.126 from msm-3.0.\nFirst parent is from google/android-3.4.\n\n* commit \u0027AU_LINUX_ANDROID_ICS.04.00.04.00.126\u0027: (8712 commits)\n  PRNG: Device tree entry for qrng device.\n  vidc:1080p: Set video core timeout value for Thumbnail mode\n  msm: sps: improve the debugging support in SPS driver\n  board-8064 msm: Overlap secure and non secure video firmware heaps.\n  msm: clock: Add handoff ops for 7x30 and copper XO clocks\n  msm_fb: display: Wait for external vsync before DTV IOMMU unmap\n  msm: Fix ciruclar dependency in debug UART settings\n  msm: gdsc: Add GDSC regulator driver for msm-copper\n  defconfig: Enable Mobicore Driver.\n  mobicore: Add mobicore driver.\n  mobicore: rename variable to lower case.\n  mobicore: rename folder.\n  mobicore: add makefiles\n  mobicore: initial import of kernel driver\n  ASoC: msm: Add SLIMBUS_2_RX CPU DAI\n  board-8064-gpio: Update FUNC for EPM SPI CS\n  msm_fb: display: Remove chicken bit config during video playback\n  mmc: msm_sdcc: enable the sanitize capability\n  msm-fb: display: lm2 writeback support on mpq platfroms\n  msm_fb: display: Disable LVDS phy \u0026 pll during panel off\n  ...\n\nSigned-off-by: Steve Muckle \u003csmuckle@codeaurora.org\u003e\n"
    },
    {
      "commit": "5500e4fab219bf210f22d2334cc98f3ca8f8912d",
      "tree": "60f3edf480190ee60676348c1ca2730a699f8671",
      "parents": [
        "903f6c716db3d4e26952aae9717f81dd5bc9e4ba",
        "76e10d158efb6d4516018846f60c2ab5501900bc"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri May 25 13:56:28 2012 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri May 25 13:56:28 2012 -0700"
      },
      "message": "Merge commit \u0027v3.4\u0027 into android-3.4\n"
    },
    {
      "commit": "2eec7c9f3f20cf720ac8a97e23a2954132c025c9",
      "tree": "351a075001917aa6ba44bcb0de04196c55d914d9",
      "parents": [
        "1dd2d69ca040ba6685c0f78b11f6aaa0f223d6cc"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed May 16 17:22:23 2012 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri May 18 17:03:09 2012 -0700"
      },
      "message": "sched/rt: fix SCHED_RR across cgroups\n\ntask_tick_rt has an optimization to only reschedule SCHED_RR tasks\nif they were the only element on their rq.  However, with cgroups\na SCHED_RR task could be the only element on its per-cgroup rq but\nstill be competing with other SCHED_RR tasks in its parent\u0027s\ncgroup.  In this case, the SCHED_RR task in the child cgroup would\nnever yield at the end of its timeslice.  If the child cgroup\nrt_runtime_us was the same as the parent cgroup rt_runtime_us,\nthe task in the parent cgroup would starve completely.\n\nModify task_tick_rt to check that the task is the only task on its\nrq, and that the each of the scheduling entities of its ancestors\nis also the only entity on its rq.\n\nChange-Id: I4f5b118517f85db3570923eb2f5e4c933ece9247\nSigned-off-by: Colin Cross \u003cccross@android.com\u003e\n"
    },
    {
      "commit": "30b4e9eb783d94e9f5d503b15eb31720679ae1c7",
      "tree": "1369b75e45c5eaa1763a87f4e3ce03a9b32737e8",
      "parents": [
        "febb72a6e4cc6c8cffcc1ea649a3fb364f1ea432"
      ],
      "author": {
        "name": "Igor Mammedov",
        "email": "imammedo@redhat.com",
        "time": "Wed May 09 12:38:28 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 09 12:27:35 2012 +0200"
      },
      "message": "sched: Fix KVM and ia64 boot crash due to sched_groups circular linked list assumption\n\nIf we have one cpu that failed to boot and boot cpu gave up on\nwaiting for it and then another cpu is being booted, kernel\nmight crash with following OOPS:\n\n   BUG: unable to handle kernel NULL pointer dereference at 0000000000000018\n   IP: [\u003cffffffff812c3630\u003e] __bitmap_weight+0x30/0x80\n   Call Trace:\n       [\u003cffffffff8108b9b6\u003e] build_sched_domains+0x7b6/0xa50\n\nThe crash happens in init_sched_groups_power() that expects\nsched_groups to be circular linked list. However it is not\nalways true, since sched_groups preallocated in __sdt_alloc are\ninitialized in build_sched_groups and it may exit early\n\n        if (cpu !\u003d cpumask_first(sched_domain_span(sd)))\n                return 0;\n\nwithout initializing sd-\u003egroups-\u003enext field.\n\nFix bug by initializing next field right after sched_group was\nallocated.\n\nAlso-Reported-by: Jiang Liu \u003cliuj97@gmail.com\u003e\nSigned-off-by: Igor Mammedov \u003cimammedo@redhat.com\u003e\nCc: a.p.zijlstra@chello.nl\nCc: pjt@google.com\nCc: seto.hidetoshi@jp.fujitsu.com\nLink: http://lkml.kernel.org/r/1336559908-32533-1-git-send-email-imammedo@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "aadf030d84352a91cdadf50f947da739c5611450",
      "tree": "5f22ec57ee257776b4c157f0c91f3612f05ed6c5",
      "parents": [
        "aad2732ba0dddcf3446a4e3c4843496759c1c305",
        "69964ea4c7b68c9399f7977aa5b9aa6539a6a98a"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue May 01 15:47:09 2012 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue May 01 15:47:09 2012 -0700"
      },
      "message": "Merge commit \u0027v3.4-rc5\u0027 into android-3.4\n"
    },
    {
      "commit": "fb2cf2c660971bea0ad86a9a5c19ad39eab61344",
      "tree": "75343c1ef32657416dbef2dd5a683391ff8b00c9",
      "parents": [
        "eb95308ee2a69403909e111837b9068c64cfc349"
      ],
      "author": {
        "name": "he, bo",
        "email": "bo.he@intel.com",
        "time": "Wed Apr 25 19:59:21 2012 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Apr 26 12:54:53 2012 +0200"
      },
      "message": "sched: Fix OOPS when build_sched_domains() percpu allocation fails\n\nUnder extreme memory used up situations, percpu allocation\nmight fail. We hit it when system goes to suspend-to-ram,\ncausing a kworker panic:\n\n EIP: [\u003cc124411a\u003e] build_sched_domains+0x23a/0xad0\n Kernel panic - not syncing: Fatal exception\n Pid: 3026, comm: kworker/u:3\n 3.0.8-137473-gf42fbef #1\n\n Call Trace:\n  [\u003cc18cc4f2\u003e] panic+0x66/0x16c\n  [...]\n  [\u003cc1244c37\u003e] partition_sched_domains+0x287/0x4b0\n  [\u003cc12a77be\u003e] cpuset_update_active_cpus+0x1fe/0x210\n  [\u003cc123712d\u003e] cpuset_cpu_inactive+0x1d/0x30\n  [...]\n\nWith this fix applied build_sched_domains() will return -ENOMEM and\nthe suspend attempt fails.\n\nSigned-off-by: he, bo \u003cbo.he@intel.com\u003e\nReviewed-by: Zhang, Yanmin \u003cyanmin.zhang@intel.com\u003e\nReviewed-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: \u003cstable@kernel.org\u003e\nLink: http://lkml.kernel.org/r/1335355161.5892.17.camel@hebo\n[ So, we fail to deallocate a CPU because we cannot allocate RAM :-/\n  I don\u0027t like that kind of sad behavior but nevertheless it should\n  not crash under high memory load. ]\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "eb95308ee2a69403909e111837b9068c64cfc349",
      "tree": "92e9a3368e75b94486dc54f2688453fed17d4eed",
      "parents": [
        "2300fd67b4f29eec19addb15a8571837228f63fc"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Apr 17 13:38:40 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Apr 26 12:54:52 2012 +0200"
      },
      "message": "sched: Fix more load-balancing fallout\n\nCommits 367456c756a6 (\"sched: Ditch per cgroup task lists for\nload-balancing\") and 5d6523ebd (\"sched: Fix load-balance wreckage\")\nleft some more wreckage.\n\nBy setting loop_max unconditionally to -\u003enr_running load-balancing\ncould take a lot of time on very long runqueues (hackbench!). So keep\nthe sysctl as max limit of the amount of tasks we\u0027ll iterate.\n\nFurthermore, the min load filter for migration completely fails with\ncgroups since inequality in per-cpu state can easily lead to such\nsmall loads :/\n\nFurthermore the change to add new tasks to the tail of the queue\ninstead of the head seems to have some effect.. not quite sure I\nunderstand why.\n\nCombined these fixes solve the huge hackbench regression reported by\nTim when hackbench is ran in a cgroup.\n\nReported-by: Tim Chen \u003ctim.c.chen@linux.intel.com\u003e\nAcked-by: Tim Chen \u003ctim.c.chen@linux.intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/1335365763.28150.267.camel@twins\n[ got rid of the CONFIG_PREEMPT tuning and made small readability edits ]\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "4a12178d3dd5b06a215076c60dc7cb124d711373",
      "tree": "1dc08159c9da00136cfb3dc6d18a1d8c138eef1b",
      "parents": [
        "c0f6fa8c409fc7fe63bfd0a57efad29dec262bcb"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 12 19:53:24 2011 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Apr 09 13:53:11 2012 -0700"
      },
      "message": "cgroup: Add generic cgroup subsystem permission checks\n\nRather than using explicit euid \u003d\u003d 0 checks when trying to move\ntasks into a cgroup via CFS, move permission checks into each\nspecific cgroup subsystem. If a subsystem does not specify a\n\u0027allow_attach\u0027 handler, then we fall back to doing our checks\nthe old way.\n\nUse the \u0027allow_attach\u0027 handler for the \u0027cpu\u0027 cgroup to allow\nnon-root processes to add arbitrary processes to a \u0027cpu\u0027 cgroup\nif it has the CAP_SYS_NICE capability set.\n\nThis version of the patch adds a \u0027allow_attach\u0027 handler instead\nof reusing the \u0027can_attach\u0027 handler.  If the \u0027can_attach\u0027 handler\nis reused, a new cgroup that implements \u0027can_attach\u0027 but not\nthe permission checks could end up with no permission checks\nat all.\n\nChange-Id: Icfa950aa9321d1ceba362061d32dc7dfa2c64f0c\nOriginal-Author: San Mehat \u003csan@google.com\u003e\nSigned-off-by: Colin Cross \u003cccross@android.com\u003e\n"
    },
    {
      "commit": "07f174eba06628bac59377b5a5ed282a660d3204",
      "tree": "fdc6a9caee47b9144a46e252bc39d49b7467a47d",
      "parents": [
        "96714b5dfe283cd8ab13aac1f9ccb565064af152"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Wed Dec 10 20:06:28 2008 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Apr 09 13:53:08 2012 -0700"
      },
      "message": "sched: Enable might_sleep before initializing drivers.\n\nThis allows detection of init bugs in built-in drivers.\n\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\n"
    },
    {
      "commit": "f22e08a79f3765fecf060b225a46931c94fb0a92",
      "tree": "2f02777e8893d03289ec0a7f5f414f3ff01c8c37",
      "parents": [
        "f187e9fd68577cdd5f914659b6f7f11124e40485",
        "e3831edd59edf57ca11fc289f08961b20baf5146"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 31 13:35:31 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 31 13:35:31 2012 -0700"
      },
      "message": "Merge branch \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler fixes from Ingo Molnar.\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched: Fix incorrect usage of for_each_cpu_mask() in select_fallback_rq()\n  sched: Fix __schedule_bug() output when called from an interrupt\n  sched/arch: Introduce the finish_arch_post_lock_switch() scheduler callback\n"
    },
    {
      "commit": "e3831edd59edf57ca11fc289f08961b20baf5146",
      "tree": "70dfabd35517a97a1127df573d3770848f697e55",
      "parents": [
        "1f56ee7b68fecd45d25bdcf2eda7507797594424"
      ],
      "author": {
        "name": "Srivatsa S. Bhat",
        "email": "srivatsa.bhat@linux.vnet.ibm.com",
        "time": "Fri Mar 30 19:40:28 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Sat Mar 31 10:43:36 2012 +0200"
      },
      "message": "sched: Fix incorrect usage of for_each_cpu_mask() in select_fallback_rq()\n\nThe function for_each_cpu_mask() expects a *pointer* to struct\ncpumask as its second argument, whereas select_fallback_rq()\npasses the value itself.\n\nAnd moreover, for_each_cpu_mask() has been marked as obselete\nin include/linux/cpumask.h. So move to the more appropriate\nfor_each_cpu() variant.\n\nReported-by: Sasha Levin \u003clevinsasha928@gmail.com\u003e\nSigned-off-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Liu Chuansheng \u003cchuansheng.liu@intel.com\u003e\nCc: vapier@gentoo.org\nCc: rusty@rustcorp.com.au\nLink: http://lkml.kernel.org/r/4F75BED4.9050005@linux.vnet.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "7fda0412c5f7afdd1a5ff518f98dee5157266d8a",
      "tree": "d312af46758fa9b59431a479d258b54184a00591",
      "parents": [
        "6b8212a313dae341ef3a2e413dfec5c4dea59617",
        "160594e99dbbb0a5600ad922c630952c7c1c14bf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:46:05 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:46:05 2012 -0700"
      },
      "message": "Merge branch \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler fixes from Ingo Molnar.\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  cpusets: Remove an unused variable\n  sched/rt: Improve pick_next_highest_task_rt()\n  sched: Fix select_fallback_rq() vs cpu_active/cpu_online\n  sched/x86/smp: Do not enable IRQs over calibrate_delay()\n  sched: Fix compiler warning about declared inline after use\n  MAINTAINERS: Update email address for SCHEDULER and PERF EVENTS\n"
    },
    {
      "commit": "1f56ee7b68fecd45d25bdcf2eda7507797594424",
      "tree": "782ec71491cdfb0ce5d5117428be6c3af7070207",
      "parents": [
        "6135fc1eb4b1c9ae5f535507ed59591bab51e630",
        "01f23e1630d944f7085cd8fd5793e31ea91c03d8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Mar 29 12:48:15 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Mar 29 12:48:22 2012 +0200"
      },
      "message": "Merge branch \u0027sched/arch\u0027 into sched/urgent\n\nMerge reason: It has not gone upstream via the ARM tree, merge it via\n              the scheduler tree.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6135fc1eb4b1c9ae5f535507ed59591bab51e630",
      "tree": "d77513f138b94550b27394c907e9caf9f3d990a9",
      "parents": [
        "160594e99dbbb0a5600ad922c630952c7c1c14bf"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Wed Mar 28 17:10:47 2012 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Mar 29 08:34:45 2012 +0200"
      },
      "message": "sched: Fix __schedule_bug() output when called from an interrupt\n\nIf schedule is called from an interrupt handler __schedule_bug()\nwill call show_regs() with the registers saved during the\ninterrupt handling done in do_IRQ(). This means we\u0027ll see the\nregisters and the backtrace for the process that was interrupted\nand not the full backtrace explaining who called schedule().\n\nThis is due to 838225b (\"sched: use show_regs() to improve\n__schedule_bug() output\", 2007-10-24) which improperly assumed\nthat get_irq_regs() would return the registers for the current\nstack because it is being called from within an interrupt\nhandler. Simply remove the show_reg() code so that we dump a\nbacktrace for the interrupt handler that called schedule().\n\n[ I ran across this when I was presented with a scheduling while\n  atomic log with a stacktrace pointing at spin_unlock_irqrestore().\n  It made no sense and I had to guess what interrupt handler could\n  be called and poke around for someone calling schedule() in an\n  interrupt handler. A simple test of putting an msleep() in\n  an interrupt handler works better with this patch because you\n  can actually see the msleep() call in the backtrace. ]\n\nAlso-reported-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nCc: Satyam Sharma \u003csatyam@infradead.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/1332979847-27102-1-git-send-email-sboyd@codeaurora.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "96f951edb1f1bdbbc99b0cd458f9808bb83d58ae",
      "tree": "c109d45d3fb8ccad461cfe6d9a4aa4d6005b38e1",
      "parents": [
        "49a7f04a4b9d45cd794741ce3d5d66524b37bdd0"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Mar 28 18:30:03 2012 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Mar 28 18:30:03 2012 +0100"
      },
      "message": "Add #includes needed to permit the removal of asm/system.h\n\nasm/system.h is a cause of circular dependency problems because it contains\ncommonly used primitive stuff like barrier definitions and uncommonly used\nstuff like switch_to() that might require MMU definitions.\n\nasm/system.h has been disintegrated by this point on all arches into the\nfollowing common segments:\n\n (1) asm/barrier.h\n\n     Moved memory barrier definitions here.\n\n (2) asm/cmpxchg.h\n\n     Moved xchg() and cmpxchg() here.  #included in asm/atomic.h.\n\n (3) asm/bug.h\n\n     Moved die() and similar here.\n\n (4) asm/exec.h\n\n     Moved arch_align_stack() here.\n\n (5) asm/elf.h\n\n     Moved AT_VECTOR_SIZE_ARCH here.\n\n (6) asm/switch_to.h\n\n     Moved switch_to() here.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "1b028abc779b67b699daff55e27d2432f8d92666",
      "tree": "0b6deda71cb6ee5a17773716912665b0ad8ddabc",
      "parents": [
        "2baab4e90495ebc9826c93f79d74d6e60a828d24"
      ],
      "author": {
        "name": "Michael J Wang",
        "email": "mjwang@broadcom.com",
        "time": "Mon Mar 19 22:26:19 2012 +0000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Mar 27 14:52:12 2012 +0200"
      },
      "message": "sched/rt: Improve pick_next_highest_task_rt()\n\nAvoid extra work by continuing on to the next rt_rq if the highest\nprio task in current rt_rq is the same priority as our candidate\ntask.\n\nMore detailed explanation:  if next is not NULL, then we have found a\ncandidate task, and its priority is next-\u003eprio.  Now we are looking\nfor an even higher priority task in the other rt_rq\u0027s.  idx is the\nhighest priority in the current candidate rt_rq.  In the current 3.3\ncode, if idx is equal to next-\u003eprio, we would start scanning the tasks\nin that rt_rq and replace the current candidate task with a task from\nthat rt_rq.  But the new task would only have a priority that is equal\nto our previous candidate task, so we have not advanced our goal of\nfinding a higher prio task.  So we should avoid the extra work by\ncontinuing on to the next rt_rq if idx is equal to next-\u003eprio.\n\nSigned-off-by: Michael J Wang \u003cmjwang@broadcom.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nReviewed-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/2EF88150C0EF2C43A218742ED384C1BC0FC83D6B@IRVEXCHMB08.corp.ad.broadcom.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "2baab4e90495ebc9826c93f79d74d6e60a828d24",
      "tree": "6e6316694a9bc69e517e50b0d01043c4c9e83888",
      "parents": [
        "bc758133ed73d4b06952bec21da23e28e62bf3ba"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Mar 20 15:57:01 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Mar 27 14:50:14 2012 +0200"
      },
      "message": "sched: Fix select_fallback_rq() vs cpu_active/cpu_online\n\nCommit 5fbd036b55 (\"sched: Cleanup cpu_active madness\"), which was\nsupposed to finally sort the cpu_active mess, instead uncovered more.\n\nSince CPU_STARTING is ran before setting the cpu online, there\u0027s a\n(small) window where the cpu has active,!online.\n\nIf during this time there\u0027s a wakeup of a task that used to reside on\nthat cpu select_task_rq() will use select_fallback_rq() to compute an\nalternative cpu to run on since we find !online.\n\nselect_fallback_rq() however will compute the new cpu against\ncpu_active, this means that it can return the same cpu it started out\nwith, the !online one, since that cpu is in fact marked active.\n\nThis results in us trying to scheduling a task on an offline cpu and\ntriggering a WARN in the IPI code.\n\nThe solution proposed by Chuansheng Liu of setting cpu_active in\nset_cpu_online() is buggy, firstly not all archs actually use\nset_cpu_online(), secondly, not all archs call set_cpu_online() with\nIRQs disabled, this means we would introduce either the same race or\nthe race from fd8a7de17 (\"x86: cpu-hotplug: Prevent softirq wakeup on\nwrong CPU\") -- albeit much narrower.\n\n[ By setting online first and active later we have a window of\n  online,!active, fresh and bound kthreads have task_cpu() of 0 and\n  since cpu0 isn\u0027t in tsk_cpus_allowed() we end up in\n  select_fallback_rq() which excludes !active, resulting in a reset\n  of -\u003ecpus_allowed and the thread running all over the place. ]\n\nThe solution is to re-work select_fallback_rq() to require active\n_and_ online. This makes the active,!online case work as expected,\nOTOH archs running CPU_STARTING after setting online are now\nvulnerable to the issue from fd8a7de17 -- these are alpha and\nblackfin.\n\nReported-by: Chuansheng Liu \u003cchuansheng.liu@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: linux-alpha@vger.kernel.org\nLink: http://lkml.kernel.org/n/tip-hubqk1i10o4dpvlm06gq7v6j@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "6c16a6dcb05e51ace340ff7bc6dbe647f1593528",
      "tree": "5df1dacdd4f9710a569d19b2a114bfca427404d0",
      "parents": [
        "dd9b238c1c53ddcdb10cbb2548f38543d49ad70a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Mar 21 13:07:16 2012 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Fri Mar 23 10:39:28 2012 +0100"
      },
      "message": "sched: Fix compiler warning about declared inline after use\n\nkernel/sched/fair.c:420: warning: \u0027account_cfs_rq_runtime\u0027 declared inline after being called\nkernel/sched/fair.c:420: warning: previous declaration of \u0027account_cfs_rq_runtime\u0027 was here\nkernel/sched/fair.c:1165: warning: \u0027return_cfs_rq_runtime\u0027 declared inlineafter being called\nkernel/sched/fair.c:1165: warning: previous declaration of \u0027return_cfs_rq_runtime\u0027 was here\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/20120321200717.49BB4A024E@akpm.mtv.corp.google.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "3556485f1595e3964ba539e39ea682acbb835cee",
      "tree": "7f5ee254f425b1427ac0059b5f347a307f8538a1",
      "parents": [
        "b8716614a7cc2fc15ea2a518edd04755fb08d922",
        "09f61cdbb32a9d812c618d3922db533542736bb0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:25:04 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:25:04 2012 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security\n\nPull security subsystem updates for 3.4 from James Morris:\n \"The main addition here is the new Yama security module from Kees Cook,\n  which was discussed at the Linux Security Summit last year.  Its\n  purpose is to collect miscellaneous DAC security enhancements in one\n  place.  This also marks a departure in policy for LSM modules, which\n  were previously limited to being standalone access control systems.\n  Chromium OS is using Yama, and I believe there are plans for Ubuntu,\n  at least.\n\n  This patchset also includes maintenance updates for AppArmor, TOMOYO\n  and others.\"\n\nFix trivial conflict in \u003cnet/sock.h\u003e due to the jumo_label-\u003estatic_key\nrename.\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (38 commits)\n  AppArmor: Fix location of const qualifier on generated string tables\n  TOMOYO: Return error if fails to delete a domain\n  AppArmor: add const qualifiers to string arrays\n  AppArmor: Add ability to load extended policy\n  TOMOYO: Return appropriate value to poll().\n  AppArmor: Move path failure information into aa_get_name and rename\n  AppArmor: Update dfa matching routines.\n  AppArmor: Minor cleanup of d_namespace_path to consolidate error handling\n  AppArmor: Retrieve the dentry_path for error reporting when path lookup fails\n  AppArmor: Add const qualifiers to generated string tables\n  AppArmor: Fix oops in policy unpack auditing\n  AppArmor: Fix error returned when a path lookup is disconnected\n  KEYS: testing wrong bit for KEY_FLAG_REVOKED\n  TOMOYO: Fix mount flags checking order.\n  security: fix ima kconfig warning\n  AppArmor: Fix the error case for chroot relative path name lookup\n  AppArmor: fix mapping of META_READ to audit and quiet flags\n  AppArmor: Fix underflow in xindex calculation\n  AppArmor: Fix dropping of allowed operations that are force audited\n  AppArmor: Add mising end of structure test to caps unpacking\n  ...\n"
    },
    {
      "commit": "0d9cabdccedb79ee5f27b77ff51f29a9e7d23275",
      "tree": "8bfb64c3672d058eb90aec3c3a9c4f61cef9097c",
      "parents": [
        "701085b219016d38f105b031381b9cee6200253a",
        "3ce3230a0cff484e5130153f244d4fb8a56b3a8b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 18:11:21 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 18:11:21 2012 -0700"
      },
      "message": "Merge branch \u0027for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup\n\nPull cgroup changes from Tejun Heo:\n \"Out of the 8 commits, one fixes a long-standing locking issue around\n  tasklist walking and others are cleanups.\"\n\n* \u0027for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:\n  cgroup: Walk task list under tasklist_lock in cgroup_enable_task_cg_list\n  cgroup: Remove wrong comment on cgroup_enable_task_cg_list()\n  cgroup: remove cgroup_subsys argument from callbacks\n  cgroup: remove extra calls to find_existing_css_set\n  cgroup: replace tasklist_lock with rcu_read_lock\n  cgroup: simplify double-check locking in cgroup_attach_proc\n  cgroup: move struct cgroup_pidlist out from the header file\n  cgroup: remove cgroup_attach_task_current_cg()\n"
    },
    {
      "commit": "2ba68940c893c8f0bfc8573c041254251bb6aeab",
      "tree": "fa83ebb01d32abd98123fa28f9f6f0b3eaeee25d",
      "parents": [
        "9c2b957db1772ebf942ae7a9346b14eba6c8ca66",
        "600e145882802d6ccbfe2c4aea243d97caeb91a9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 10:31:44 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 10:31:44 2012 -0700"
      },
      "message": "Merge branch \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler changes for v3.4 from Ingo Molnar\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (27 commits)\n  printk: Make it compile with !CONFIG_PRINTK\n  sched/x86: Fix overflow in cyc2ns_offset\n  sched: Fix nohz load accounting -- again!\n  sched: Update yield() docs\n  printk/sched: Introduce special printk_sched() for those awkward moments\n  sched/nohz: Correctly initialize \u0027next_balance\u0027 in \u0027nohz\u0027 idle balancer\n  sched: Cleanup cpu_active madness\n  sched: Fix load-balance wreckage\n  sched: Clean up parameter passing of proc_sched_autogroup_set_nice()\n  sched: Ditch per cgroup task lists for load-balancing\n  sched: Rename load-balancing fields\n  sched: Move load-balancing arguments into helper struct\n  sched/rt: Do not submit new work when PI-blocked\n  sched/rt: Prevent idle task boosting\n  sched/wait: Add __wake_up_all_locked() API\n  sched/rt: Document scheduler related skip-resched-check sites\n  sched/rt: Use schedule_preempt_disabled()\n  sched/rt: Add schedule_preempt_disabled()\n  sched/rt: Do not throttle when PI boosting\n  sched/rt: Keep period timer ticking when rt throttling is active\n  ...\n"
    },
    {
      "commit": "01f23e1630d944f7085cd8fd5793e31ea91c03d8",
      "tree": "f21651af720e87721c3829ff69a41c5a9d8cb31d",
      "parents": [
        "fde7d9049e55ab85a390be7f415d74c9f62dd0f9"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Sun Nov 27 21:43:10 2011 +0000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 13 10:17:45 2012 +0100"
      },
      "message": "sched/arch: Introduce the finish_arch_post_lock_switch() scheduler callback\n\nThis callback is called by the scheduler after rq-\u003elock has been released\nand interrupts enabled. It will be used in subsequent patches on the ARM\narchitecture.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nReviewed-by: Will Deacon \u003cwill.deacon@arm.com\u003e\nReviewed-by: Frank Rowand \u003cfrank.rowand@am.sony.com\u003e\nTested-by: Will Deacon \u003cwill.deacon@arm.com\u003e\nTested-by: Marc Zyngier \u003cMarc.Zyngier@arm.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/n/20120313110840.7b444deb6b1bb902c15f3cdf@canb.auug.org.au\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c308b56b5398779cd3da0f62ab26b0453494c3d4",
      "tree": "b2d90bd6f8ebbbeaae97f4ef319f7e22fcc77436",
      "parents": [
        "8e3fabfde445a872c8aec2296846badf24d7c8b4"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Thu Mar 01 15:04:46 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:43:17 2012 +0100"
      },
      "message": "sched: Fix nohz load accounting -- again!\n\nVarious people reported nohz load tracking still being wrecked, but Doug\nspotted the actual problem. We fold the nohz remainder in too soon,\ncausing us to loose samples and under-account.\n\nSo instead of playing catch-up up-front, always do a single load-fold\nwith whatever state we encounter and only then fold the nohz remainder\nand play catch-up.\n\nReported-by: Doug Smythies \u003cdsmythies@telus.net\u003e\nReported-by: LesÅ\u003d82aw Kope\u003dC4\u003d87 \u003cleslaw.kopec@nasza-klasa.pl\u003e\nReported-by: Aman Gupta \u003caman@tmm1.net\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-4v31etnhgg9kwd6ocgx3rxl8@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8e3fabfde445a872c8aec2296846badf24d7c8b4",
      "tree": "60f47d850adc39aff6de56ec82d7e1a13d93d4a8",
      "parents": [
        "3ccf3e8306156a28213adc720aba807e9a901ad5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Mar 06 18:54:26 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:43:17 2012 +0100"
      },
      "message": "sched: Update yield() docs\n\nSuggested-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1331056466.11248.327.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3ccf3e8306156a28213adc720aba807e9a901ad5",
      "tree": "5b9db344b702299ea7eb53fbff3d0d74707d40ec",
      "parents": [
        "554cecaf733623b327eef9652b65965eb1081b81"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Feb 27 10:47:00 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:43:16 2012 +0100"
      },
      "message": "printk/sched: Introduce special printk_sched() for those awkward moments\n\nThere\u0027s a few awkward printk()s inside of scheduler guts that people\nprefer to keep but really are rather deadlock prone. Fudge around it\nby storing the text in a per-cpu buffer and poll it using the existing\nprintk_tick() handler.\n\nThis will drop output when its more frequent than once a tick, however\nonly the affinity thing could possible go that fast and for that just\none should suffice to notify the admin he\u0027s done something silly..\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/n/tip-wua3lmkt3dg8nfts66o6brne@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "554cecaf733623b327eef9652b65965eb1081b81",
      "tree": "4e471c4689563d3a882667323ece2e581d8f17c8",
      "parents": [
        "5fbd036b552f633abb394a319f7c62a5c86a9cd7"
      ],
      "author": {
        "name": "Diwakar Tundlam",
        "email": "dtundlam@nvidia.com",
        "time": "Wed Mar 07 14:44:26 2012 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:43:16 2012 +0100"
      },
      "message": "sched/nohz: Correctly initialize \u0027next_balance\u0027 in \u0027nohz\u0027 idle balancer\n\nThe \u0027next_balance\u0027 field of \u0027nohz\u0027 idle balancer must be initialized\nto jiffies. Since jiffies is initialized to negative 300 seconds the\n\u0027nohz\u0027 idle balancer does not run for the first 300s (5mins) after\nbootup. If no new processes are spawed or no idle cycles happen, the\nload on the cpus will remain unbalanced for that duration.\n\nSigned-off-by: Diwakar Tundlam \u003cdtundlam@nvidia.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1DD7BFEDD3147247B1355BEFEFE4665237994F30EF@HQMAIL04.nvidia.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5fbd036b552f633abb394a319f7c62a5c86a9cd7",
      "tree": "fa91474a6aac5ea4aef0d7afc72af27c32d611af",
      "parents": [
        "5d6523ebd2f67de9d23285aad7f3910e7b0aee83"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Thu Dec 15 17:09:22 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:43:15 2012 +0100"
      },
      "message": "sched: Cleanup cpu_active madness\n\nStepan found:\n\nCPU0\t\tCPUn\n\n_cpu_up()\n  __cpu_up()\n\n\t\tboostrap()\n\t\t  notify_cpu_starting()\n\t\t  set_cpu_online()\n\t\t  while (!cpu_active())\n\t\t    cpu_relax()\n\n\u003cPREEMPT-out\u003e\n\nsmp_call_function(.wait\u003d1)\n  /* we find cpu_online() is true */\n  arch_send_call_function_ipi_mask()\n\n  /* wait-forever-more */\n\n\u003cPREEMPT-in\u003e\n\t\t  local_irq_enable()\n\n  cpu_notify(CPU_ONLINE)\n    sched_cpu_active()\n      set_cpu_active()\n\nNow the purpose of cpu_active is mostly with bringing down a cpu, where\nwe mark it !active to avoid the load-balancer from moving tasks to it\nwhile we tear down the cpu. This is required because we only update the\nsched_domain tree after we brought the cpu-down. And this is needed so\nthat some tasks can still run while we bring it down, we just don\u0027t want\nnew tasks to appear.\n\nOn cpu-up however the sched_domain tree doesn\u0027t yet include the new cpu,\nso its invisible to the load-balancer, regardless of the active state.\nSo instead of setting the active state after we boot the new cpu (and\nconsequently having to wait for it before enabling interrupts) set the\ncpu active before we set it online and avoid the whole mess.\n\nReported-by: Stepan Moskovchenko \u003cstepanm@codeaurora.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/1323965362.18942.71.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5d6523ebd2f67de9d23285aad7f3910e7b0aee83",
      "tree": "745ee9e9378dd255fe7097e42c34a86ba9b8ee48",
      "parents": [
        "2e5b5b3a1b7768c89fbfeca18e75f8ee377e924c"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Sat Mar 10 00:07:36 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:43:15 2012 +0100"
      },
      "message": "sched: Fix load-balance wreckage\n\nCommit 367456c (\"sched: Ditch per cgroup task lists for\nload-balancing\") completely wrecked load-balancing due to\na few silly mistakes.\n\nCorrect those and remove more pointless code.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-zk04ihygwxn7qqrlpaf73b0r@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4293f20c19f44ca66e5ac836b411d25e14b9f185",
      "tree": "4f9ab09ca1f775907af2a78ebb8754b945570d39",
      "parents": [
        "dac12d1f5ef228e132c2457dc214e0703533b016"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 07 08:21:19 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 07 08:21:19 2012 -0800"
      },
      "message": "Revert \"CPU hotplug, cpusets, suspend: Don\u0027t touch cpusets during suspend/resume\"\n\nThis reverts commit 8f2f748b0656257153bcf0941df8d6060acc5ca6.\n\nIt causes some odd regression that we have not figured out, and it\u0027s too\nlate in the -rc series to try to figure it out now.\n\nAs reported by Konstantin Khlebnikov, it causes consistent hangs on his\nlaptop (Thinkpad x220: 2x cores + HT).  They can be avoided by adding\ncalls to \"rebuild_sched_domains();\" in cpuset_cpu_[in]active() for the\nCPU_{ONLINE/DOWN_FAILED/DOWN_PREPARE}_FROZEN cases, but it\u0027s not at all\nclear why, and it makes no sense.\n\nKonstantin\u0027s config doesn\u0027t even have CONFIG_CPUSETS enabled, just to\nmake things even more interesting.  So it\u0027s not the cpusets, it\u0027s just\nthe scheduling domains.\n\nSo until this is understood, revert.\n\nBisected-reported-and-tested-by: Konstantin Khlebnikov \u003ckhlebnikov@openvz.org\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "737f24bda723fdf89ecaacb99fa2bf5683c32799",
      "tree": "35495fff3e9956679cb5468e74e6814c8e44ee66",
      "parents": [
        "8eedce996556d7d06522cd3a0e6069141c8dffe0",
        "b7c924274c456499264d1cfa3d44063bb11eb5db"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 05 09:20:08 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 05 09:20:08 2012 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nConflicts:\n\ttools/perf/builtin-record.c\n\ttools/perf/builtin-top.c\n\ttools/perf/perf.h\n\ttools/perf/util/top.h\n\nMerge reason: resolve these cherry-picking conflicts.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2e5b5b3a1b7768c89fbfeca18e75f8ee377e924c",
      "tree": "0d6d589e42b7e88464d5edcfa818b3a7e27a93e8",
      "parents": [
        "367456c756a6b84f493ca9cc5b17b1f5d38ef466"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Thu Feb 23 17:41:27 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 02 12:23:49 2012 +0100"
      },
      "message": "sched: Clean up parameter passing of proc_sched_autogroup_set_nice()\n\nPass nice as a value to proc_sched_autogroup_set_nice().\n\nNo side effect is expected, and the variable err will be overwritten with\nthe return value.\n\nSigned-off-by: Hiroshi Shimamoto \u003ch-shimamoto@ct.jp.nec.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4F45FBB7.5090607@ct.jp.nec.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "367456c756a6b84f493ca9cc5b17b1f5d38ef466",
      "tree": "0e95a2fa5cb25ea14e2841d84d4d2410ff383e33",
      "parents": [
        "ddcdf6e7d9919d139031fa2a6addd9544a9a833e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Feb 20 21:49:09 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 13:08:37 2012 +0100"
      },
      "message": "sched: Ditch per cgroup task lists for load-balancing\n\nPer cgroup load-balance has numerous problems, chief amongst them that\nthere is no real sane order in them. So stop pretending it makes sense\nand enqueue all tasks on a single list.\n\nThis also allows us to more easily fix the fwd progress issue\nuncovered by the lock-break stuff. Rotate the list on failure to\nmigreate and limit the total iterations to nr_running (which with\nreleasing the lock isn\u0027t strictly accurate but close enough).\n\nAlso add a filter that skips very light tasks on the first attempt\naround the list, this attempts to avoid shooting whole cgroups around\nwithout affecting over balance.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: pjt@google.com\nLink: http://lkml.kernel.org/n/tip-tx8yqydc7eimgq7i4rkc3a4g@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ddcdf6e7d9919d139031fa2a6addd9544a9a833e",
      "tree": "5c6883bdc1128a7c89b6d7e3ac13aa1a54f5c3c0",
      "parents": [
        "8e45cb545d98bc58e75b7de89ec8d3e5c8459ee6"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 22 19:27:40 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:51:23 2012 +0100"
      },
      "message": "sched: Rename load-balancing fields\n\n s/env-\u003ethis_/env-\u003edst_/g\n s/env-\u003ebusiest_/env-\u003esrc_/g\n s/pull_task/move_task/g\n\nMakes everything clearer.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: pjt@google.com\nLink: http://lkml.kernel.org/n/tip-0yvgms8t8x962drpvl0fu0kk@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8e45cb545d98bc58e75b7de89ec8d3e5c8459ee6",
      "tree": "b855602a267eb38bc5d511050fb40477e5a607f1",
      "parents": [
        "3c7d51843b03a6839e9ec7cda724e54d2319a63a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 22 12:47:19 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:51:22 2012 +0100"
      },
      "message": "sched: Move load-balancing arguments into helper struct\n\nPassing large sets of similar arguments all around the load-balancer\ngets tiresom when you want to modify something. Stick them all in a\nhelper structure and pass the structure around.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: pjt@google.com\nLink: http://lkml.kernel.org/n/tip-5slqz0vhsdzewrfk9eza1aon@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3c7d51843b03a6839e9ec7cda724e54d2319a63a",
      "tree": "df8ac53451a7e519ddb0d349b24e6ba17ea18afb",
      "parents": [
        "1c4dd99bed5f6f70932bf8dacdd54d04a2619778"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Jul 17 20:46:52 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:46:54 2012 +0100"
      },
      "message": "sched/rt: Do not submit new work when PI-blocked\n\nWhen we are PI-blocked then we want to get things done ASAP.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-vw8et3445km5b8mpihf4trae@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1c4dd99bed5f6f70932bf8dacdd54d04a2619778",
      "tree": "24b6db83e0507598e255de9e5b410a8300ab7572",
      "parents": [
        "63b2001169e75cd71e917ec953fdab572e3f944a"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jun 06 20:07:38 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:28:05 2012 +0100"
      },
      "message": "sched/rt: Prevent idle task boosting\n\nIdle task boosting is a nono in general. There is one\nexception, when PREEMPT_RT and NOHZ is active:\n\nThe idle task calls get_next_timer_interrupt() and holds\nthe timer wheel base-\u003elock on the CPU and another CPU wants\nto access the timer (probably to cancel it). We can safely\nignore the boosting request, as the idle CPU runs this code\nwith interrupts disabled and will complete the lock\nprotected section without being interrupted. So there is no\nreal need to boost.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-755rvsosz7sdzot12a3gbha6@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "63b2001169e75cd71e917ec953fdab572e3f944a",
      "tree": "3338725751540571a7d490b252f1b450554a6847",
      "parents": [
        "ba74c1448f127649046615ec017bded7b2a76f29"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 01 00:04:00 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:28:04 2012 +0100"
      },
      "message": "sched/wait: Add __wake_up_all_locked() API\n\nFor code which protects the waitqueue itself with another lock it\nmakes no sense to acquire the waitqueue lock for wakeup all. Provide\n__wake_up_all_locked().\n\nThis is an optimization on the vanilla kernel (to be used by the\nPCI code) and an important semantic distinction on -rt.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-ux6m4b8jonb9inx8xafh77ds@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ba74c1448f127649046615ec017bded7b2a76f29",
      "tree": "33eceaf0c4b35aca095e3e1a678bdbab23006650",
      "parents": [
        "bd2f55361f18347e890d52ff9cfd8895455ec11b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 21 13:32:17 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:28:04 2012 +0100"
      },
      "message": "sched/rt: Document scheduler related skip-resched-check sites\n\nCreate a distinction between scheduler related preempt_enable_no_resched()\ncalls and the nearly one hundred other places in the kernel that do not\nwant to reschedule, for one reason or another.\n\nThis distinction matters for -rt, where the scheduler and the non-scheduler\npreempt models (and checks) are different. For upstream it\u0027s purely\ndocumentational.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/n/tip-gs88fvx2mdv5psnzxnv575ke@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c5491ea779793f977d282754db478157cc409d82",
      "tree": "c110f80101e9e513f5a6f1d2ba81b2934c2408f6",
      "parents": [
        "7abc63b1bd412f7655b62ef3e35c3c11c5134636"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 21 12:09:35 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:28:03 2012 +0100"
      },
      "message": "sched/rt: Add schedule_preempt_disabled()\n\nAdd helper to get rid of the ever repeating:\n\n    preempt_enable_no_resched();\n    schedule();\n    preempt_disable();\n\npatterns.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-wxx7btox7coby6ifv5vzhzgp@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7abc63b1bd412f7655b62ef3e35c3c11c5134636",
      "tree": "c2a18d2b57d71d124ddb280d396df94b7110448f",
      "parents": [
        "42c62a589f1ccbf38a02cb732231f9c2fccc5ab0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Tue Oct 18 22:03:48 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:28:02 2012 +0100"
      },
      "message": "sched/rt: Do not throttle when PI boosting\n\nWhen a runqueue has rt_runtime_us \u003d 0 then the only way it can\naccumulate rt_time is via PI boosting. That causes the runqueue\nto be throttled and replenishing does not change anything due to\nrt_runtime_us \u003d 0. So avoid that situation by clearing rt_time and\nskip the throttling alltogether.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n[ Changelog ]\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/n/tip-7x70cypsotjb4jvcor3edctk@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "42c62a589f1ccbf38a02cb732231f9c2fccc5ab0",
      "tree": "80ba018cd3b581668f9c8dc75d52f9c2a9ee9f54",
      "parents": [
        "7e4d960993331e92567f0180e45322a93e6780ba"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Tue Oct 18 22:03:48 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:28:01 2012 +0100"
      },
      "message": "sched/rt: Keep period timer ticking when rt throttling is active\n\nWhen a runqueue is throttled we cannot disable the period timer\nbecause that timer is the only way to undo the throttling.\n\nWe got stale throttling entries when a rq was throttled and then the\nglobal sysctl was disabled, which stopped the timer.\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\n[ Added changelog ]\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/n/tip-nuj34q52p6ro7szapuz84i0v@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7e4d960993331e92567f0180e45322a93e6780ba",
      "tree": "4d7444035303fc0b545e88afbd894176344fb2a3",
      "parents": [
        "de5bdff7a72acc281219be2b8edeeca1fd81c542",
        "164974a8f2a482f1abcb027c6d1a89dd79b14297"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:26:41 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 01 10:26:43 2012 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into sched/core\n\nMerge reason: we\u0027ll queue up dependent patches.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8f2f748b0656257153bcf0941df8d6060acc5ca6",
      "tree": "960e37a40212b88dd25be216addf7381c87c84fe",
      "parents": [
        "8c79a045fd590a26e81e75f5d8d4ec5c7d23e565"
      ],
      "author": {
        "name": "Srivatsa S. Bhat",
        "email": "srivatsa.bhat@linux.vnet.ibm.com",
        "time": "Thu Feb 23 15:27:15 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 27 11:38:13 2012 +0100"
      },
      "message": "CPU hotplug, cpusets, suspend: Don\u0027t touch cpusets during suspend/resume\n\nCurrently, during CPU hotplug, the cpuset callbacks modify the cpusets\nto reflect the state of the system, and this handling is asymmetric.\nThat is, upon CPU offline, that CPU is removed from all cpusets. However\nwhen it comes back online, it is put back only to the root cpuset.\n\nThis gives rise to a significant problem during suspend/resume. During\nsuspend, we offline all non-boot cpus and during resume we online them back.\nWhich means, after a resume, all cpusets (except the root cpuset) will be\nrestricted to just one single CPU (the boot cpu). But the whole point of\nsuspend/resume is to restore the system to a state which is as close as\npossible to how it was before suspend.\n\nSo to fix this, don\u0027t touch cpusets during suspend/resume. That is, modify\nthe cpuset-related CPU hotplug callback to just ignore CPU hotplug when it\nis initiated as part of the suspend/resume sequence.\n\nReported-by: Prashanth Nageshappa \u003cprashanth@linux.vnet.ibm.com\u003e\nSigned-off-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: stable@vger.kernel.org\nLink: http://lkml.kernel.org/r/4F460D7B.1020703@linux.vnet.ibm.com\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c5905afb0ee6550b42c49213da1c22d67316c194",
      "tree": "253fdb322e6e5b257ffda3b9b66bce90a473a6f7",
      "parents": [
        "1cfa60dc7d7c7cc774a44eee47ff135a644a1f31"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 24 08:31:31 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 24 10:05:59 2012 +0100"
      },
      "message": "static keys: Introduce \u0027struct static_key\u0027, static_key_true()/false() and static_key_slow_[inc|dec]()\n\nSo here\u0027s a boot tested patch on top of Jason\u0027s series that does\nall the cleanups I talked about and turns jump labels into a\nmore intuitive to use facility. It should also address the\nvarious misconceptions and confusions that surround jump labels.\n\nTypical usage scenarios:\n\n        #include \u003clinux/static_key.h\u003e\n\n        struct static_key key \u003d STATIC_KEY_INIT_TRUE;\n\n        if (static_key_false(\u0026key))\n                do unlikely code\n        else\n                do likely code\n\nOr:\n\n        if (static_key_true(\u0026key))\n                do likely code\n        else\n                do unlikely code\n\nThe static key is modified via:\n\n        static_key_slow_inc(\u0026key);\n        ...\n        static_key_slow_dec(\u0026key);\n\nThe \u0027slow\u0027 prefix makes it abundantly clear that this is an\nexpensive operation.\n\nI\u0027ve updated all in-kernel code to use this everywhere. Note\nthat I (intentionally) have not pushed through the rename\nblindly through to the lowest levels: the actual jump-label\npatching arch facility should be named like that, so we want to\ndecouple jump labels from the static-key facility a bit.\n\nOn non-jump-label enabled architectures static keys default to\nlikely()/unlikely() branches.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: a.p.zijlstra@chello.nl\nCc: mathieu.desnoyers@efficios.com\nCc: davem@davemloft.net\nCc: ddaney.cavm@gmail.com\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/20120222085809.GA26397@elte.hu\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "de5bdff7a72acc281219be2b8edeeca1fd81c542",
      "tree": "6a528beb1852e2fd7d444b47e8b4cc6e6be31108",
      "parents": [
        "62f6536a630affe3176deb48554d27ee58b65077"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Thu Feb 16 14:52:21 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 22 12:28:29 2012 +0100"
      },
      "message": "sched: Make initial SCHED_RR timeslace DEF_TIMESLICE\n\nCurrent the initial SCHED_RR timeslice of init_task is HZ, which means\n1s, and is not same as the default SCHED_RR timeslice DEF_TIMESLICE.\n\nChange that initial timeslice to the DEF_TIMESLICE.\n\nSigned-off-by: Hiroshi Shimamoto \u003ch-shimamoto@ct.jp.nec.com\u003e\n[ s/DEF_TIMESLICE/RR_TIMESLICE/g ]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4F3C9995.3010800@ct.jp.nec.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "62f6536a630affe3176deb48554d27ee58b65077",
      "tree": "cf1365f5c0d0b9aebb5877afa8a7b5da4aa11917",
      "parents": [
        "9388dc3047a88bedfd867e9ba3e1980c815ac524"
      ],
      "author": {
        "name": "Nikunj A. Dadhania",
        "email": "nikunj@linux.vnet.ibm.com",
        "time": "Fri Feb 17 08:34:30 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 22 12:28:28 2012 +0100"
      },
      "message": "sched: Remove rcu_read_lock/unlock() from select_idle_sibling()\n\nselect_idle_sibling() is called from select_task_rq_fair(), which\nalready has the RCU read lock held.\n\nSigned-off-by: Nikunj A. Dadhania \u003cnikunj@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20120217030409.11748.12491.stgit@abhimanyu\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8c79a045fd590a26e81e75f5d8d4ec5c7d23e565",
      "tree": "8123849709e37dc2394373ad40cf333b2f19ebb5",
      "parents": [
        "719741d9986572d64b47c35c09f5e7bb8d389400"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Jan 30 14:51:37 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 22 12:06:55 2012 +0100"
      },
      "message": "sched/events: Revert trace_sched_stat_sleeptime()\n\nCommit 1ac9bc69 (\"sched/tracing: Add a new tracepoint for sleeptime\")\nadded a new sched:sched_stat_sleeptime tracepoint.\n\nIt\u0027s broken: the first sample we get on a task might be bad because\nof a stale sleep_start value that wasn\u0027t reset at the last task switch\nbecause the tracepoint was not active.\n\nIt also breaks the existing schedstat samples due to the side\neffects of:\n\n-               se-\u003estatistics.sleep_start \u003d 0;\n...\n-               se-\u003estatistics.block_start \u003d 0;\n\nNor do I see means to fix it without adding overhead to the scheduler\nfast path, which I\u0027m not willing to for the sake of redundant\ninstrumentation.\n\nMost importantly, sleep time information can already be constructed\nby tracing context switches and wakeups, and taking the timestamp\ndifference between the schedule-out, the wakeup and the schedule-in.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Andrew Vagin \u003cavagin@openvz.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-pc4c9qhl8q6vg3bs4j6k0rbd@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4040153087478993cbf0809f444400a3c808074c",
      "tree": "2dc7af85b0cf930f1656553bd38410b8c16601a6",
      "parents": [
        "191c542442fdf53cc3c496c00be13367fd9cd42d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Mon Feb 13 03:58:52 2012 +0000"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Feb 14 10:45:42 2012 +1100"
      },
      "message": "security: trim security.h\n\nTrim security.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "761b3ef50e1c2649cffbfa67a4dcb2dcdb7982ed",
      "tree": "67ab6a9a2520811c9c0b4d70d1c19b4bfca16237",
      "parents": [
        "61d1d219c4c0761059236a46867bc49943c4d29d"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Jan 31 13:47:36 2012 +0800"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Feb 02 09:20:22 2012 -0800"
      },
      "message": "cgroup: remove cgroup_subsys argument from callbacks\n\nThe argument is not used at all, and it\u0027s not necessary, because\na specific callback handler of course knows which subsys it\nbelongs to.\n\nNow only -\u003epupulate() takes this argument, because the handlers of\nthis callback always call cgroup_add_file()/cgroup_add_files().\n\nSo we reduce a few lines of code, though the shrinking of object size\nis minimal.\n\n 16 files changed, 113 insertions(+), 162 deletions(-)\n\n   text    data     bss     dec     hex filename\n5486240  656987 7039960 13183187         c928d3 vmlinux.o.orig\n5486170  656987 7039960 13183117         c9288d vmlinux.o\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "ed387b781ea6e14b78f449aa2ee4f270b60b01ac",
      "tree": "16ae2791173a7796feadf853ba1bee9b93fc0fff",
      "parents": [
        "30fd049afcfed50e022704036e8629d6bdfe84e6"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Tue Jan 31 11:40:32 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 31 13:40:59 2012 +0100"
      },
      "message": "sched: Move SMP-only variable into the SMP section\n\nThis also fixes the following compilation warning on !SMP:\n\n  CC kernel/sched/fair.o\n  kernel/sched/fair.c:218:36: warning: \u0027max_load_balance_interval\u0027 defined but not used [-Wunused-variable]\n\nSigned-off-by: Hiroshi Shimamoto \u003ch-shimamoto@ct.jp.nec.com\u003e\nReviewed-by: Vincent Guittot \u003cvincent.guittot@linaro.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4F2754A0.9090306@ct.jp.nec.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "30fd049afcfed50e022704036e8629d6bdfe84e6",
      "tree": "829472524c157f1d7a769d088b2f9b70c9779c11",
      "parents": [
        "4ec4412e1e91f44a3dcb97b6c9172a13fc78bac9"
      ],
      "author": {
        "name": "Rakib Mullick",
        "email": "rakib.mullick@gmail.com",
        "time": "Tue Jan 24 22:33:56 2012 +0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 27 13:28:53 2012 +0100"
      },
      "message": "sched: Remove sched_switch\n\nCurrently we don\u0027t utilize the sched_switch field anymore.\n\nBut, simply removing sched_switch field from the middle of the\nsched_stat output will break tools.\n\nSo, to stay compatible we hardcode it to zero and remove the\nfield from the scheduler data structures.\n\nUpdate the schedstat documentation accordingly.\n\nSigned-off-by: Rakib Mullick \u003crakib.mullick@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1327422836.27181.5.camel@localhost.localdomain\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4ec4412e1e91f44a3dcb97b6c9172a13fc78bac9",
      "tree": "a98f635907975c2f14c01c24418e102337250b8d",
      "parents": [
        "39be350127ec60a078edffe5b4915dafba4ba514"
      ],
      "author": {
        "name": "Vincent Guittot",
        "email": "vincent.guittot@linaro.org",
        "time": "Mon Dec 12 20:21:08 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 27 13:28:49 2012 +0100"
      },
      "message": "sched: Ensure cpu_power periodic update\n\nWith a lot of small tasks, the softirq sched is nearly never called\nwhen no_hz is enabled. In this case load_balance() is mainly called\nwith the newly_idle mode which doesn\u0027t update the cpu_power.\n\nAdd a next_update field which ensure a maximum update period when\nthere is short activity.\n\nHaving stale cpu_power information can skew the load-balancing\ndecisions, this is cured by the guaranteed update.\n\nSigned-off-by: Vincent Guittot \u003cvincent.guittot@linaro.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1323717668-2143-1-git-send-email-vincent.guittot@linaro.org\n"
    }
  ],
  "next": "39be350127ec60a078edffe5b4915dafba4ba514"
}
