)]}'
{
  "log": [
    {
      "commit": "0b981cb94bc63a2d0e5eccccdca75fe57643ffce",
      "tree": "966ad6e6807fd1041d9962c9904e032a5ab07a65",
      "parents": [
        "4cba3335826cbb36a218c3f5a1387e2c7c7ca9aa",
        "fdf9c356502ae02238efcdf90cefd7b473a63fd4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 01 10:43:39 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 01 10:43:39 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 from Ingo Molnar:\n \"Continued quest to clean up and enhance the cputime code by Frederic\n  Weisbecker, in preparation for future tickless kernel features.\n\n  Other than that, smallish changes.\"\n\nFix up trivial conflicts due to additions next to each other in arch/{x86/}Kconfig\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)\n  cputime: Make finegrained irqtime accounting generally available\n  cputime: Gather time/stats accounting config options into a single menu\n  ia64: Reuse system and user vtime accounting functions on task switch\n  ia64: Consolidate user vtime accounting\n  vtime: Consolidate system/idle context detection\n  cputime: Use a proper subsystem naming for vtime related APIs\n  sched: cpu_power: enable ARCH_POWER\n  sched/nohz: Clean up select_nohz_load_balancer()\n  sched: Fix load avg vs. cpu-hotplug\n  sched: Remove __ARCH_WANT_INTERRUPTS_ON_CTXSW\n  sched: Fix nohz_idle_balance()\n  sched: Remove useless code in yield_to()\n  sched: Add time unit suffix to sched sysctl knobs\n  sched/debug: Limit sd-\u003e*_idx range on sysctl\n  sched: Remove AFFINE_WAKEUPS feature flag\n  s390: Remove leftover account_tick_vtime() header\n  cputime: Consolidate vtime handling on context switch\n  sched: Move cputime code to its own file\n  cputime: Generalize CONFIG_VIRT_CPU_ACCOUNTING\n  tile: Remove SD_PREFER_LOCAL leftover\n  ...\n"
    },
    {
      "commit": "20ab65e33f469c35f3dabde3445b668aa9c943ee",
      "tree": "9acfb3c837c1dfa2ed3bae4471871f154376a66a",
      "parents": [
        "90a340ed53f0f3bcc3fdf1b2cff56c0e4e911d01"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Jul 11 20:26:37 2012 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Sep 26 15:47:11 2012 +0200"
      },
      "message": "rcu: Exit RCU extended QS on user preemption\n\nWhen exceptions or irq are about to resume userspace, if\nthe task needs to be rescheduled, the arch low level code\ncalls schedule() directly.\n\nIf we call it, it is because we have the TIF_RESCHED flag:\n\n- It can be set after random local calls to set_need_resched()\n(RCU, drm, ...)\n\n- A wake up happened and the CPU needs preemption. This can\n  happen in several ways:\n\n    * Remotely: the remote waking CPU has set TIF_RESCHED and send the\n      wakee an IPI to schedule the new task.\n    * Remotely enqueued: the remote waking CPU sends an IPI to the target\n      and the wake up is made by the target.\n    * Locally: waking CPU \u003d\u003d wakee CPU and the wakeup is done locally.\n      set_need_resched() is called without IPI.\n\nIn the case of local and remotely enqueued wake ups, the tick can\nbe restarted when we enqueue the new task and RCU can exit the\nextended quiescent state at the same time. Then by the time we reach\nirq exit path and we call schedule, we are not in RCU user mode.\n\nBut if we call schedule() only because something called set_need_resched(),\nRCU may still be in user mode when we reach schedule.\n\nAlso if a wake up is done remotely, the CPU might see the TIF_RESCHED\nflag and call schedule while the IPI has not yet happen to restart the\ntick and exit RCU user mode.\n\nWe need to manually protect against these corner cases.\n\nCreate a new API schedule_user() that calls schedule() inside\nrcu_user_exit()-rcu_user_enter() in order to protect it. Archs\nwill need to rely on it now to implement user preemption safely.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Alessio Igor Bogani \u003cabogani@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Geoff Levand \u003cgeoff@infradead.org\u003e\nCc: Gilad Ben Yossef \u003cgilad@benyossef.com\u003e\nCc: Hakan Akkan \u003chakanakkan@gmail.com\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nCc: Kevin Hilman \u003ckhilman@ti.com\u003e\nCc: Max Krasnyansky \u003cmaxk@qualcomm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Sven-Thorsten Dietrich \u003cthebigcorporation@gmail.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "90a340ed53f0f3bcc3fdf1b2cff56c0e4e911d01",
      "tree": "af5ad4146d5d79fff12c764f8695b86b36c47b31",
      "parents": [
        "6ba3c97a38803883c2eee489505796cb0a727122"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Jul 11 20:26:36 2012 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Sep 26 15:47:09 2012 +0200"
      },
      "message": "rcu: Exit RCU extended QS on kernel preemption after irq/exception\n\nWhen an exception or an irq exits, and we are going to resume into\ninterrupted kernel code, the low level architecture code calls\npreempt_schedule_irq() if there is a need to reschedule.\n\nIf the interrupt/exception occured between a call to rcu_user_enter()\n(from syscall exit, exception exit, do_notify_resume exit, ...) and\na real resume to userspace (iret,...), preempt_schedule_irq() can be\ncalled whereas RCU thinks we are in userspace. But preempt_schedule_irq()\nis going to run kernel code and may be some RCU read side critical\nsection. We must exit the userspace extended quiescent state before\nwe call it.\n\nTo solve this, just call rcu_user_exit() in the beginning of\npreempt_schedule_irq().\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Alessio Igor Bogani \u003cabogani@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Geoff Levand \u003cgeoff@infradead.org\u003e\nCc: Gilad Ben Yossef \u003cgilad@benyossef.com\u003e\nCc: Hakan Akkan \u003chakanakkan@gmail.com\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nCc: Kevin Hilman \u003ckhilman@ti.com\u003e\nCc: Max Krasnyansky \u003cmaxk@qualcomm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Sven-Thorsten Dietrich \u003cthebigcorporation@gmail.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "04e7e951532b390b16feb070be9972b8fad2fc57",
      "tree": "d1d18c2febd422428fad0746afd23c2fd84684d8",
      "parents": [
        "1e1a689f10a27a4fe1ab9b4c6db04fa7232746a5"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Jul 16 15:06:40 2012 -0700"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Sep 26 15:47:02 2012 +0200"
      },
      "message": "rcu: Switch task\u0027s syscall hooks on context switch\n\nClear the syscalls hook of a task when it\u0027s scheduled out so that if\nthe task migrates, it doesn\u0027t run the syscall slow path on a CPU\nthat might not need it.\n\nAlso set the syscalls hook on the next task if needed.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Alessio Igor Bogani \u003cabogani@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Geoff Levand \u003cgeoff@infradead.org\u003e\nCc: Gilad Ben Yossef \u003cgilad@benyossef.com\u003e\nCc: Hakan Akkan \u003chakanakkan@gmail.com\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nCc: Kevin Hilman \u003ckhilman@ti.com\u003e\nCc: Max Krasnyansky \u003cmaxk@qualcomm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Sven-Thorsten Dietrich \u003cthebigcorporation@gmail.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "593d1006cdf710ab3469c0c37c184fea0bc3da97",
      "tree": "e4db58440018a52089e8d6b39160f753ab10df99",
      "parents": [
        "5217192b85480353aeeb395574e60d0db04f3676",
        "9b20aa63b8fc9a6a3b6831f4eae3621755e51211"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Sep 25 10:03:56 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Sep 25 10:03:56 2012 -0700"
      },
      "message": "Merge remote-tracking branch \u0027tip/core/rcu\u0027 into next.2012.09.25b\n\nResolved conflict in kernel/sched/core.c using Peter Zijlstra\u0027s\napproach from https://lkml.org/lkml/2012/9/5/585.\n"
    },
    {
      "commit": "a7e1a9e3af71b45ecae2dae35851f238117b317d",
      "tree": "8b1d15d63779ba13d7884288c96a3510b7fde4b6",
      "parents": [
        "bf9fae9f5e4ca8dce4708812f9ad6281e61df109"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Sep 08 16:14:02 2012 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Sep 25 15:42:37 2012 +0200"
      },
      "message": "vtime: Consolidate system/idle context detection\n\nMove the code that finds out to which context we account the\ncputime into generic layer.\n\nArchs that consider the whole time spent in the idle task as idle\ntime (ia64, powerpc) can rely on the generic vtime_account()\nand implement vtime_account_system() and vtime_account_idle(),\nletting the generic code to decide when to call which API.\n\nArchs that have their own meaning of idle time, such as s390\nthat only considers the time spent in CPU low power mode as idle\ntime, can just override vtime_account().\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Fenghua Yu \u003cfenghua.yu@intel.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\n"
    },
    {
      "commit": "bf9fae9f5e4ca8dce4708812f9ad6281e61df109",
      "tree": "02318ac3db48dd993a4a430de5de66a337895d16",
      "parents": [
        "bc2a27cd27271c5257989a57f511be86b26f5e54"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Sep 08 15:23:11 2012 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Sep 25 15:31:31 2012 +0200"
      },
      "message": "cputime: Use a proper subsystem naming for vtime related APIs\n\nUse a naming based on vtime as a prefix for virtual based\ncputime accounting APIs:\n\n- account_system_vtime() -\u003e vtime_account()\n- account_switch_vtime() -\u003e vtime_task_switch()\n\nIt makes it easier to allow for further declension such\nas vtime_account_system(), vtime_account_idle(), ... if we\nwant to find out the context we account to from generic code.\n\nThis also make it better to know on which subsystem these APIs\nrefer to.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Fenghua Yu \u003cfenghua.yu@intel.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\n"
    },
    {
      "commit": "5d18023294abc22984886bd7185344e0c2be0daf",
      "tree": "13c90f90db9e00e28ae4c00bfa7ba6d0702bced5",
      "parents": [
        "0d8ee37e2fcb7b77b9c5dee784beca5a215cad4c"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Mon Aug 20 11:26:57 2012 +0200"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sun Sep 23 07:43:56 2012 -0700"
      },
      "message": "sched: Fix load avg vs cpu-hotplug\n\nRabik and Paul reported two different issues related to the same few\nlines of code.\n\nRabik\u0027s issue is that the nr_uninterruptible migration code is wrong in\nthat he sees artifacts due to this (Rabik please do expand in more\ndetail).\n\nPaul\u0027s issue is that this code as it stands relies on us using\nstop_machine() for unplug, we all would like to remove this assumption\nso that eventually we can remove this stop_machine() usage altogether.\n\nThe only reason we\u0027d have to migrate nr_uninterruptible is so that we\ncould use for_each_online_cpu() loops in favour of\nfor_each_possible_cpu() loops, however since nr_uninterruptible() is the\nonly such loop and its using possible lets not bother at all.\n\nThe problem Rabik sees is (probably) caused by the fact that by\nmigrating nr_uninterruptible we screw rq-\u003ecalc_load_active for both rqs\ninvolved.\n\nSo don\u0027t bother with fancy migration schemes (meaning we now have to\nkeep using for_each_possible_cpu()) and instead fold any nr_active delta\nafter we migrate all tasks away to make sure we don\u0027t have any skewed\nnr_active accounting.\n\n[ paulmck: Move call to calc_load_migration to CPU_DEAD to avoid\nmiscounting noted by Rakib. ]\n\nReported-by: Rakib Mullick \u003crakib.mullick@gmail.com\u003e\nReported-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\n"
    },
    {
      "commit": "37407ea7f93864c2cfc03edf8f37872ec539ea2b",
      "tree": "7c07e7adadd40fc94cebfe816f1c65a4a630b147",
      "parents": [
        "3f0c3c8fe30c725c1264fb6db8cc4b69db3a658a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Sep 16 12:29:43 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Sep 16 12:29:43 2012 -0700"
      },
      "message": "Revert \"sched: Improve scalability via \u0027CPU buddies\u0027, which withstand random perturbations\"\n\nThis reverts commit 970e178985cadbca660feb02f4d2ee3a09f7fdda.\n\nNikolay Ulyanitsky reported thatthe 3.6-rc5 kernel has a 15-20%\nperformance drop on PostgreSQL 9.2 on his machine (running \"pgbench\").\n\nBorislav Petkov was able to reproduce this, and bisected it to this\ncommit 970e178985ca (\"sched: Improve scalability via \u0027CPU buddies\u0027 ...\")\napparently because the new single-idle-buddy model simply doesn\u0027t find\nidle CPU\u0027s to reschedule on aggressively enough.\n\nMike Galbraith suspects that it is likely due to the user-mode spinlocks\nin PostgreSQL not reacting well to preemption, but we don\u0027t really know\nthe details - I\u0027ll just revert the commit for now.\n\nThere are hopefully other approaches to improve scheduler scalability\nwithout it causing these kinds of downsides.\n\nReported-by: Nikolay Ulyanitsky \u003clystor@gmail.com\u003e\nBisected-by: Borislav Petkov \u003cbp@alien8.de\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bc2a27cd27271c5257989a57f511be86b26f5e54",
      "tree": "0055b497c57cc65d38d2d178a474720448a413bb",
      "parents": [
        "c1cc017c59c44d9ede7003631c43adc0cfdce2f9"
      ],
      "author": {
        "name": "Vincent Guittot",
        "email": "vincent.guittot@linaro.org",
        "time": "Mon Jul 09 11:27:06 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Sep 13 16:52:06 2012 +0200"
      },
      "message": "sched: cpu_power: enable ARCH_POWER\n\nHeteregeneous ARM platform uses arch_scale_freq_power function\nto reflect the relative capacity of each core\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/1341826026-6504-6-git-send-email-vincent.guittot@linaro.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "c1cc017c59c44d9ede7003631c43adc0cfdce2f9",
      "tree": "7db4bad5a78af2bdc5197740012e462811422d40",
      "parents": [
        "08bedae1d0acd8c9baf514fb69fa199d0c8345f6"
      ],
      "author": {
        "name": "Alex Shi",
        "email": "alex.shi@intel.com",
        "time": "Mon Sep 10 15:10:58 2012 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Sep 13 16:52:05 2012 +0200"
      },
      "message": "sched/nohz: Clean up select_nohz_load_balancer()\n\nThere is no load_balancer to be selected now. It just sets the\nstate of the nohz tick to stop.\n\nSo rename the function, pass the \u0027cpu\u0027 as a parameter and then\nremove the useless call from tick_nohz_restart_sched_tick().\n\n[ s/set_nohz_tick_stopped/nohz_balance_enter_idle/g\n  s/clear_nohz_tick_stopped/nohz_balance_exit_idle/g ]\nSigned-off-by: Alex Shi \u003calex.shi@intel.com\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1347261059-24747-1-git-send-email-alex.shi@intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "08bedae1d0acd8c9baf514fb69fa199d0c8345f6",
      "tree": "82cda177bc9c52658d350c9686ea2b8b07b8ee5b",
      "parents": [
        "f3e947867478af9a12b9956bcd000ac7613a8a95"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Thu Sep 06 00:03:50 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Sep 13 16:52:05 2012 +0200"
      },
      "message": "sched: Fix load avg vs. cpu-hotplug\n\nCommit f319da0c68 (\"sched: Fix load avg vs cpu-hotplug\") was an\nincomplete fix:\n\nIn particular, the problem is that at the point it calls\ncalc_load_migrate() nr_running :\u003d 1 (the stopper thread), so move the\ncall to CPU_DEAD where we\u0027re sure that nr_running :\u003d 0.\n\nAlso note that we can call calc_load_migrate() without serialization, we\nknow the state of rq is stable since its cpu is dead, and we modify the\nglobal state using appropriate atomic ops.\n\nSuggested-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1346882630.2600.59.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "f3e947867478af9a12b9956bcd000ac7613a8a95",
      "tree": "63fabb89439447e0f72c465e8b8d0852e9deff08",
      "parents": [
        "5ed4f1d96deee82ee92cd1ac1e0108c27e80e9b0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Sep 12 11:22:00 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Sep 13 16:52:04 2012 +0200"
      },
      "message": "sched: Remove __ARCH_WANT_INTERRUPTS_ON_CTXSW\n\nNow that the last architecture to use this has stopped doing so (ARM,\nthanks Catalin!) we can remove this complexity from the scheduler\ncore.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nLink: http://lkml.kernel.org/n/tip-g9p2a1w81xxbrze25v9zpzbf@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "5ed4f1d96deee82ee92cd1ac1e0108c27e80e9b0",
      "tree": "b147faa700337a1ab47a321f2e35016946b77a16",
      "parents": [
        "38b8dd6f87398524d02c21ff614c507ba8c9d295"
      ],
      "author": {
        "name": "Vincent Guittot",
        "email": "vincent.guittot@linaro.org",
        "time": "Thu Sep 13 06:11:26 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Sep 13 16:52:03 2012 +0200"
      },
      "message": "sched: Fix nohz_idle_balance()\n\nOn tickless systems, one CPU runs load balance for all idle CPUs.\n\nThe cpu_load of this CPU is updated before starting the load balance\nof each other idle CPUs. We should instead update the cpu_load of\nthe balance_cpu.\n\nSigned-off-by: Vincent Guittot \u003cvincent.guittot@linaro.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nLink: http://lkml.kernel.org/r/1347509486-8688-1-git-send-email-vincent.guittot@linaro.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "38b8dd6f87398524d02c21ff614c507ba8c9d295",
      "tree": "b814a4c20ac30c5d7e7c0836daf1b11be0923cb4",
      "parents": [
        "d00535db42805e9ae5eadf1b4a86e01e85674b0c"
      ],
      "author": {
        "name": "Michael Wang",
        "email": "wangyun@linux.vnet.ibm.com",
        "time": "Tue Jul 03 14:34:02 2012 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Sep 04 14:31:42 2012 +0200"
      },
      "message": "sched: Remove useless code in yield_to()\n\nIt\u0027s impossible to enter the else branch if we have set\nskip_clock_update in task_yield_fair(), as yield_to_task_fair()\n will directly return true after invoke task_yield_fair().\n\nSigned-off-by: Michael Wang \u003cwangyun@linux.vnet.ibm.com\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4FF2925A.9060005@linux.vnet.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "201c373e8e4823700d3160d5c28e1ab18fd1193e",
      "tree": "f871b6f429e195cdf37dd0582d64813f220057a0",
      "parents": [
        "c751134ef8b070070d5f06348286b29d86424677"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Thu Aug 16 17:03:24 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Sep 04 14:31:32 2012 +0200"
      },
      "message": "sched/debug: Limit sd-\u003e*_idx range on sysctl\n\nVarious sd-\u003e*_idx\u0027s are used for refering the rq\u0027s load average table\nwhen selecting a cpu to run.  However they can be set to any number\nwith sysctl knobs so that it can crash the kernel if something bad is\ngiven. Fix it by limiting them into the actual range.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@kernel.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1345104204-8317-1-git-send-email-namhyung@kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "c751134ef8b070070d5f06348286b29d86424677",
      "tree": "bd261f1d51a6ebe5313ac24d58ddf0d4456a5433",
      "parents": [
        "59f979455d7209171ab10a72c8df5c2512976cb4"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Thu Aug 16 13:21:05 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Sep 04 14:31:31 2012 +0200"
      },
      "message": "sched: Remove AFFINE_WAKEUPS feature flag\n\nCommit beac4c7e4a1c (\"sched: Remove AFFINE_WAKEUPS feature\") removed\nuse of the flag but left the definition. Get rid of it.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@kernel.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLink: http://lkml.kernel.org/r/1345090865-20851-1-git-send-email-namhyung@kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "59f979455d7209171ab10a72c8df5c2512976cb4",
      "tree": "c4c7fc48bd79bf8acbe848a1b979fa9e8ab4ac6a",
      "parents": [
        "b9bb50db9126c4ccad78af2dfb77277ca17c9b64",
        "9450d57eab5cad36774c297da123062744472588"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Sep 04 14:31:00 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Sep 04 14:31:00 2012 +0200"
      },
      "message": "Merge branch \u0027sched/urgent\u0027 into sched/core\n\nMerge in the current fixes branch, we are going to apply dependent patches.\n\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "9450d57eab5cad36774c297da123062744472588",
      "tree": "871a943ff0d6eb4fc5211781f50776ccf65a1cb5",
      "parents": [
        "a4c96ae319b8047f62dedbe1eac79e321c185749"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Sat Aug 18 17:45:08 2012 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Sep 04 14:30:49 2012 +0200"
      },
      "message": "sched: Fix kernel-doc warnings in kernel/sched/fair.c\n\nFix two kernel-doc warnings in kernel/sched/fair.c:\n\n  Warning(kernel/sched/fair.c:3660): Excess function parameter \u0027cpus\u0027 description in \u0027update_sg_lb_stats\u0027\n  Warning(kernel/sched/fair.c:3806): Excess function parameter \u0027cpus\u0027 description in \u0027update_sd_lb_stats\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/50303714.3090204@xenotime.net\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "a4c96ae319b8047f62dedbe1eac79e321c185749",
      "tree": "e93b18f6ca2d2a734962ee880d8e2cb7bd1e42b0",
      "parents": [
        "749c8814f08f12baa4a9c2812a7c6ede7d69507d"
      ],
      "author": {
        "name": "Peter Boonstoppel",
        "email": "pboonstoppel@nvidia.com",
        "time": "Thu Aug 09 15:34:47 2012 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Sep 04 14:30:30 2012 +0200"
      },
      "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\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"
    },
    {
      "commit": "f319da0c6894fcf55e21320e40506418a2aad629",
      "tree": "d1ae1cb6eb190e9feb6b9122bd62091cf6095809",
      "parents": [
        "5b716ac728bcc01b1f2a7ed6e437196602237c27"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Mon Aug 20 11:26:57 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Sep 04 14:30:18 2012 +0200"
      },
      "message": "sched: Fix load avg vs cpu-hotplug\n\nRabik and Paul reported two different issues related to the same few\nlines of code.\n\nRabik\u0027s issue is that the nr_uninterruptible migration code is wrong in\nthat he sees artifacts due to this (Rabik please do expand in more\ndetail).\n\nPaul\u0027s issue is that this code as it stands relies on us using\nstop_machine() for unplug, we all would like to remove this assumption\nso that eventually we can remove this stop_machine() usage altogether.\n\nThe only reason we\u0027d have to migrate nr_uninterruptible is so that we\ncould use for_each_online_cpu() loops in favour of\nfor_each_possible_cpu() loops, however since nr_uninterruptible() is the\nonly such loop and its using possible lets not bother at all.\n\nThe problem Rabik sees is (probably) caused by the fact that by\nmigrating nr_uninterruptible we screw rq-\u003ecalc_load_active for both rqs\ninvolved.\n\nSo don\u0027t bother with fancy migration schemes (meaning we now have to\nkeep using for_each_possible_cpu()) and instead fold any nr_active delta\nafter we migrate all tasks away to make sure we don\u0027t have any skewed\nnr_active accounting.\n\nReported-by: Rakib Mullick \u003crakib.mullick@gmail.com\u003e\nReported-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1345454817.23018.27.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "53795ced6e270fbb5cef7b527a71ffbb69657c78",
      "tree": "0e0532682837493bb84a38df10bc115521226c81",
      "parents": [
        "f78602ab7cbc902559406d2e8e21517056708295",
        "8f6189684eb4e85e6c593cd710693f09c944450a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 20 10:35:05 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 20 10:35: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  sched: Fix migration thread runtime bogosity\n  sched,rt: fix isolated CPUs leaving root_task_group indefinitely throttled\n  sched,cgroup: Fix up task_groups list\n  sched: fix divide by zero at {thread_group,task}_times\n  sched, cgroup: Reduce rq-\u003elock hold times for large cgroup hierarchies\n"
    },
    {
      "commit": "baa36046d09ea6dbc122c795566992318663d9eb",
      "tree": "6427262e02304fd35f60204fc324d4c4e8d26d83",
      "parents": [
        "73fbec604432e1fbfeb1bc59a110dac1f98160f6"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Jun 18 17:54:14 2012 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Aug 20 13:05:28 2012 +0200"
      },
      "message": "cputime: Consolidate vtime handling on context switch\n\nThe archs that implement virtual cputime accounting all\nflush the cputime of a task when it gets descheduled\nand sometimes set up some ground initialization for the\nnext task to account its cputime.\n\nThese archs all put their own hooks in their context\nswitch callbacks and handle the off-case themselves.\n\nConsolidate this by creating a new account_switch_vtime()\ncallback called in generic code right after a context switch\nand that these archs must implement to flush the prev task\ncputime and initialize the next task cputime related state.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Fenghua Yu \u003cfenghua.yu@intel.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\n"
    },
    {
      "commit": "73fbec604432e1fbfeb1bc59a110dac1f98160f6",
      "tree": "1bcdf943945b61aa1b2d2193ebd72197bf788a33",
      "parents": [
        "b952741c80790d2dc9f17fac6f15d87d58dea2a1"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Jun 16 15:57:37 2012 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Aug 20 13:05:17 2012 +0200"
      },
      "message": "sched: Move cputime code to its own file\n\nExtract cputime code from the giant sched/core.c and\nput it in its own file. This make it easier to deal with\nthis particular area and de-bloat a bit more core.c\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Fenghua Yu \u003cfenghua.yu@intel.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\n"
    },
    {
      "commit": "f03542a7019c600163ac4441d8a826c92c1bd510",
      "tree": "cd644fb1d0feee636c400a58f4bddec30e2d95b9",
      "parents": [
        "78feefc512a09165627dd534111f651b6c8e605f"
      ],
      "author": {
        "name": "Alex Shi",
        "email": "alex.shi@intel.com",
        "time": "Thu Jul 26 08:55:34 2012 +0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 19:02:05 2012 +0200"
      },
      "message": "sched: recover SD_WAKE_AFFINE in select_task_rq_fair and code clean up\n\nSince power saving code was removed from sched now, the implement\ncode is out of service in this function, and even pollute other logical.\nlike, \u0027want_sd\u0027 never has chance to be set \u00270\u0027, that remove the effect\nof SD_WAKE_AFFINE here.\n\nSo, clean up the obsolete code, includes SD_PREFER_LOCAL.\n\nSigned-off-by: Alex Shi \u003calex.shi@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/5028F431.6000306@intel.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "78feefc512a09165627dd534111f651b6c8e605f",
      "tree": "7bd554141d64cc6c934d8dd6e74c9d9c81897d51",
      "parents": [
        "edde96eafc91a510f404e7b82cfc0ecb608505ee"
      ],
      "author": {
        "name": "Michael Wang",
        "email": "wangyun@linux.vnet.ibm.com",
        "time": "Mon Aug 06 16:41:59 2012 +0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:58:15 2012 +0200"
      },
      "message": "sched: using dst_rq instead of this_rq during load balance\n\nAs we already have dst_rq in lb_env, using or changing \"this_rq\" do not\nmake sense.\n\nThis patch will replace \"this_rq\" with dst_rq in load_balance, and we\ndon\u0027t need to change \"this_rq\" while process LBF_SOME_PINNED any more.\n\nSigned-off-by: Michael Wang \u003cwangyun@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/501F8357.3070102@linux.vnet.ibm.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "edde96eafc91a510f404e7b82cfc0ecb608505ee",
      "tree": "ce9c405422f4478c6a8910f4d0c512e939905e02",
      "parents": [
        "532b1858c5241bedfff5ab863d7cf012e8b81a6b"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@kernel.org",
        "time": "Sat Aug 04 11:49:47 2012 +0300"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:58:15 2012 +0200"
      },
      "message": "sched: Document schedule() entry points\n\nThis patch adds a comment on top of the schedule() function to explain\nto scheduler newbies how the main scheduler function is entered.\n\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nExplained-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nExplained-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@kernel.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1344070187-2420-1-git-send-email-penberg@kernel.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "532b1858c5241bedfff5ab863d7cf012e8b81a6b",
      "tree": "de523e113390f151a7d2bfa6f83849af943ebc76",
      "parents": [
        "a4133765c1b467aa53a6efa48f9d292f2dcd285d"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Wed Aug 08 16:16:04 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:58:15 2012 +0200"
      },
      "message": "sched: Fix __sched_period comment\n\nIt should be sched_nr_latency so fix it before it annoys me more.\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1344435364-18632-1-git-send-email-bp@amd64.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a4133765c1b467aa53a6efa48f9d292f2dcd285d",
      "tree": "5af6a54ebfae7b7550f68ed712b1ca10c8155484",
      "parents": [
        "3bf671af14d591ede9251acb0085e8017f3705e7",
        "8f6189684eb4e85e6c593cd710693f09c944450a"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:56:46 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:56:46 2012 +0200"
      },
      "message": "Merge branch \u0027sched/urgent\u0027 into sched/core\n"
    },
    {
      "commit": "8f6189684eb4e85e6c593cd710693f09c944450a",
      "tree": "a733526c634f4a7ea1366dc0da69371650c1d1d2",
      "parents": [
        "e221d028bb08b47e624c5f0a31732c642db9d19a"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "mgalbraith@suse.de",
        "time": "Sat Aug 04 05:44:14 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:41:55 2012 +0200"
      },
      "message": "sched: Fix migration thread runtime bogosity\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\n"
    },
    {
      "commit": "e221d028bb08b47e624c5f0a31732c642db9d19a",
      "tree": "0bfe6324f58c7c27fcd7b3dafd749903ab598ecc",
      "parents": [
        "35cf4e50b16331def6cfcbee11e49270b6db07f5"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Aug 07 10:02:38 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:41:55 2012 +0200"
      },
      "message": "sched,rt: fix isolated CPUs leaving root_task_group indefinitely throttled\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\n"
    },
    {
      "commit": "35cf4e50b16331def6cfcbee11e49270b6db07f5",
      "tree": "0db0da974b4c4a563811bbf734a8d7cf116ae597",
      "parents": [
        "bea6832cc8c4a0a9a65dd17da6aaa657fe27bc3e"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Aug 07 05:00:13 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:41:54 2012 +0200"
      },
      "message": "sched,cgroup: Fix up task_groups list\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\nCc: stable@kernel.org # v3.3+\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\n"
    },
    {
      "commit": "bea6832cc8c4a0a9a65dd17da6aaa657fe27bc3e",
      "tree": "b5b28462080ba5900d4318858a7318997063ea96",
      "parents": [
        "a35b6466aabb051568b844e8c63f87a356d3d129"
      ],
      "author": {
        "name": "Stanislaw Gruszka",
        "email": "sgruszka@redhat.com",
        "time": "Wed Aug 08 11:27:15 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:41:54 2012 +0200"
      },
      "message": "sched: fix divide by zero at {thread_group,task}_times\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\nCc: stable@vger.kernel.org\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\n"
    },
    {
      "commit": "a35b6466aabb051568b844e8c63f87a356d3d129",
      "tree": "a5d38cce8290a60f6729f97591cfa25d545c6474",
      "parents": [
        "b9403130a5350fca59a50ed11c198cb8c7e54119"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Aug 08 21:46:40 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:41:54 2012 +0200"
      },
      "message": "sched, cgroup: Reduce rq-\u003elock hold times for large cgroup hierarchies\n\nPeter Portante reported that for large cgroup hierarchies (and or on\nlarge CPU counts) we get immense lock contention on rq-\u003elock and stuff\nstops working properly.\n\nHis workload was a ton of processes, each in their own cgroup,\neverybody idling except for a sporadic wakeup once every so often.\n\nIt was found that:\n\n  schedule()\n    idle_balance()\n      load_balance()\n        local_irq_save()\n        double_rq_lock()\n        update_h_load()\n          walk_tg_tree(tg_load_down)\n            tg_load_down()\n\nResults in an entire cgroup hierarchy walk under rq-\u003elock for every\nnew-idle balance and since new-idle balance isn\u0027t throttled this\nresults in a lot of work while holding the rq-\u003elock.\n\nThis patch does two things, it removes the work from under rq-\u003elock\nbased on the good principle of race and pray which is widely employed\nin the load-balancer as a whole. And secondly it throttles the\nupdate_h_load() calculation to max once per jiffy.\n\nI considered excluding update_h_load() for new-idle balance\nall-together, but purely relying on regular balance passes to update\nthis data might not work out under some rare circumstances where the\nnew-idle busiest isn\u0027t the regular busiest for a while (unlikely, but\na nightmare to debug if someone hits it and suffers).\n\nCc: pjt@google.com\nCc: Larry Woodman \u003clwoodman@redhat.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nReported-by: Peter Portante \u003cpportant@redhat.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-aaarrzfpnaam7pqrekofu8a6@git.kernel.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "fcc1d2a9cea4ba97c9800e1de0748003bba07335",
      "tree": "c27c56275048e33e61097202cabaa48ef49f1314",
      "parents": [
        "bd463a06064c4bc8497f6aa6dfb4437be8f07a3b",
        "b9403130a5350fca59a50ed11c198cb8c7e54119"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 10:58:13 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 10:58:13 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 \"Fixes and two late cleanups\"\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched/cleanups: Add load balance cpumask pointer to \u0027struct lb_env\u0027\n  sched: Fix comment about PREEMPT_ACTIVE bit location\n  sched: Fix minor code style issues\n  sched: Use task_rq_unlock() in __sched_setscheduler()\n  sched/numa: Add SD_PERFER_SIBLING to CPU domain\n"
    },
    {
      "commit": "bca1a5c0eabe0f17081760c61e8d08e73dd6b6a6",
      "tree": "f939c6f42bf459786eb0050578044fdde56fec90",
      "parents": [
        "ec7a19bfec544aa73e347369232f9bd654954aa3",
        "194f8dcbe9629d8e9346cf96345a9c0bbf0e67ae"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 15:34:13 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 15:34:13 2012 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull perf updates from Ingo Molnar:\n \"The biggest changes are Intel Nehalem-EX PMU uncore support, uprobes\n  updates/cleanups/fixes from Oleg and diverse tooling updates (mostly\n  fixes) now that Arnaldo is back from vacation.\"\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (40 commits)\n  uprobes: __replace_page() needs munlock_vma_page()\n  uprobes: Rename vma_address() and make it return \"unsigned long\"\n  uprobes: Fix register_for_each_vma()-\u003evma_address() check\n  uprobes: Introduce vaddr_to_offset(vma, vaddr)\n  uprobes: Teach build_probe_list() to consider the range\n  uprobes: Remove insert_vm_struct()-\u003euprobe_mmap()\n  uprobes: Remove copy_vma()-\u003euprobe_mmap()\n  uprobes: Fix overflow in vma_address()/find_active_uprobe()\n  uprobes: Suppress uprobe_munmap() from mmput()\n  uprobes: Uprobe_mmap/munmap needs list_for_each_entry_safe()\n  uprobes: Clean up and document write_opcode()-\u003elock_page(old_page)\n  uprobes: Kill write_opcode()-\u003elock_page(new_page)\n  uprobes: __replace_page() should not use page_address_in_vma()\n  uprobes: Don\u0027t recheck vma/f_mapping in write_opcode()\n  perf/x86: Fix missing struct before structure name\n  perf/x86: Fix format definition of SNB-EP uncore QPI box\n  perf/x86: Make bitfield unsigned\n  perf/x86: Fix LLC-* and node-* events on Intel SandyBridge\n  perf/x86: Add Intel Nehalem-EX uncore support\n  perf/x86: Fix typo in format definition of uncore PCU filter\n  ...\n"
    },
    {
      "commit": "b9403130a5350fca59a50ed11c198cb8c7e54119",
      "tree": "68a4a4c6c270c14e7bbfa4c928e0e2a864ac4127",
      "parents": [
        "a7e4786b937a3ae918a7520cfdba557a80915fa7"
      ],
      "author": {
        "name": "Michael Wang",
        "email": "wangyun@linux.vnet.ibm.com",
        "time": "Thu Jul 12 16:10:13 2012 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 31 17:00:16 2012 +0200"
      },
      "message": "sched/cleanups: Add load balance cpumask pointer to \u0027struct lb_env\u0027\n\nWith this patch struct ld_env will have a pointer of the load balancing\ncpumask and we don\u0027t need to pass a cpumask around anymore.\n\nSigned-off-by: Michael Wang \u003cwangyun@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4FFE8665.3080705@linux.vnet.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "895dd92c032e1604aa0d7afaef7716e058343b67",
      "tree": "8662091be28c24a44287fc43790cf92547499a83",
      "parents": [
        "045e7e6047037d93824d265cc30c33eb631f8883"
      ],
      "author": {
        "name": "Andrew Vagin",
        "email": "avagin@openvz.org",
        "time": "Thu Jul 12 14:14:29 2012 +0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Jul 26 12:23:10 2012 +0200"
      },
      "message": "sched: Deliver sched_switch events to the current task\n\nOtherwise they can\u0027t be filtered for a defined task:\n\n  perf record -e sched:sched_switch ./foo\n\nThis command doesn\u0027t report any events without this patch.\n\nI think it isn\u0027t a security concern if someone knows who will\nbe executed next - this can already be observed by polling /proc\nstate. By default perf is disabled for non-root users in any case.\n\nI need these events for profiling sleep times.  sched_switch is used for\ngetting callchains and sched_stat_* is used for getting time periods.\nThese events are combined in user space, then it can be analyzed by\nperf tools.\n\nSigned-off-by: Andrew Vagin \u003cavagin@openvz.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Arun Sharma \u003casharma@fb.com\u003e\nLink: http://lkml.kernel.org/r/1342088069-1005148-1-git-send-email-avagin@openvz.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "014acbf0d5c8445e0ff88ae60edd676dd9cc461c",
      "tree": "673eabcb0330688967e97f1311749262d7bc41b4",
      "parents": [
        "45afb1734fa6323a8ba08bd6c392ee227df67dde"
      ],
      "author": {
        "name": "Ying Xue",
        "email": "ying.xue0@gmail.com",
        "time": "Thu Jul 12 15:03:42 2012 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Jul 26 11:47:00 2012 +0200"
      },
      "message": "sched: Fix minor code style issues\n\nDelete redudant spaces between type name and data name or operators.\n\nSigned-off-by: Ying Xue \u003cying.xue0@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1342076622-6606-1-git-send-email-ying.xue0@gmail.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "45afb1734fa6323a8ba08bd6c392ee227df67dde",
      "tree": "88aa89649c152f50924cd8e5fc49962b6834d727",
      "parents": [
        "6956dc568f34107f1d02b24f87efe7250803fc87"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Sat Jul 07 16:49:02 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Jul 26 11:46:59 2012 +0200"
      },
      "message": "sched: Use task_rq_unlock() in __sched_setscheduler()\n\nIt seems there\u0027s no specific reason to open-code it.  I guess\ncommit 0122ec5b02f76 (\"sched: Add p-\u003epi_lock to task_rq_lock()\")\nsimply missed it.  Let\u0027s be consistent with others.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@kernel.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1341647342-6742-1-git-send-email-namhyung@kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "8323f26ce3425460769605a6aece7a174edaa7d1",
      "tree": "44daa0dafa49cedc9301efd1417c6c2ac338c1c7",
      "parents": [
        "88b8dac0a14c511ff41486b83a8c3d688936eec0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Fri Jun 22 13:36:05 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 24 13:58:20 2012 +0200"
      },
      "message": "sched: Fix race in task_group()\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\n"
    },
    {
      "commit": "88b8dac0a14c511ff41486b83a8c3d688936eec0",
      "tree": "e98b2c8b1d47b136725f1a2862802e7db0bba927",
      "parents": [
        "bbf18b19495942cc730e8ff11fc3ffadf20cbfe1"
      ],
      "author": {
        "name": "Srivatsa Vaddagiri",
        "email": "vatsa@linux.vnet.ibm.com",
        "time": "Tue Jun 19 17:43:15 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 24 13:58:06 2012 +0200"
      },
      "message": "sched: Improve balance_cpu() to consider other cpus in its group as target of (pinned) task\n\nCurrent load balance scheme requires only one cpu in a\nsched_group (balance_cpu) to look at other peer sched_groups for\nimbalance and pull tasks towards itself from a busy cpu. Tasks\nthus pulled by balance_cpu could later get picked up by cpus\nthat are in the same sched_group as that of balance_cpu.\n\nThis scheme however fails to pull tasks that are not allowed to\nrun on balance_cpu (but are allowed to run on other cpus in its\nsched_group). That can affect fairness and in some worst case\nscenarios cause starvation.\n\nConsider a two core (2 threads/core) system running tasks as\nbelow:\n\n          Core0            Core1\n         /     \\          /     \\\n\tC0     C1\t C2     C3\n        |      |         |      |\n        v      v         v      v\n\tF0     T1        F1     [idle]\n\t\t\t T2\n\n F0 \u003d SCHED_FIFO task (pinned to C0)\n F1 \u003d SCHED_FIFO task (pinned to C2)\n T1 \u003d SCHED_OTHER task (pinned to C1)\n T2 \u003d SCHED_OTHER task (pinned to C1 and C2)\n\nF1 could become a cpu hog, which will starve T2 unless C1 pulls\nit. Between C0 and C1 however, C0 is required to look for\nimbalance between cores, which will fail to pull T2 towards\nCore0. T2 will starve eternally in this case. The same scenario\ncan arise in presence of non-rt tasks as well (say we replace F1\nwith high irq load).\n\nWe tackle this problem by having balance_cpu move pinned tasks\nto one of its sibling cpus (where they can run). We first check\nif load balance goal can be met by ignoring pinned tasks,\nfailing which we retry move_tasks() with a new env-\u003edst_cpu.\n\nThis patch modifies load balance semantics on who can move load\ntowards a given cpu in a given sched_domain.\n\nBefore this patch, a given_cpu or a ilb_cpu acting on behalf of\nan idle given_cpu is responsible for moving load to given_cpu.\n\nWith this patch applied, balance_cpu can in addition decide on\nmoving some load to a given_cpu.\n\nThere is a remote possibility that excess load could get moved\nas a result of this (balance_cpu and given_cpu/ilb_cpu deciding\n*independently* and at *same* time to move some load to a\ngiven_cpu). However we should see less of such conflicting\ndecisions in practice and moreover subsequent load balance\ncycles should correct the excess load moved to given_cpu.\n\nSigned-off-by: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nSigned-off-by: Prashanth Nageshappa \u003cprashanth@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4FE06CDB.2060605@linux.vnet.ibm.com\n[ minor edits ]\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "bbf18b19495942cc730e8ff11fc3ffadf20cbfe1",
      "tree": "230cd53d8669da7c3881ded77651422b89615c16",
      "parents": [
        "85c1e7dae165acd004429f81fe52bfbf55b57a98"
      ],
      "author": {
        "name": "Prashanth Nageshappa",
        "email": "prashanth@linux.vnet.ibm.com",
        "time": "Tue Jun 19 17:52:07 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 24 13:55:37 2012 +0200"
      },
      "message": "sched: Reset loop counters if all tasks are pinned and we need to redo load balance\n\nWhile load balancing, if all tasks on the source runqueue are pinned,\nwe retry after excluding the corresponding source cpu. However, loop counters\nenv.loop and env.loop_break are not reset before retrying, which can lead\nto failure in moving the tasks. In this patch we reset env.loop and\nenv.loop_break to their inital values before we retry.\n\nSigned-off-by: Prashanth Nageshappa \u003cprashanth@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4FE06EEF.2090709@linux.vnet.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "85c1e7dae165acd004429f81fe52bfbf55b57a98",
      "tree": "e9423a9075004bec44dd09d981300af716f1f89c",
      "parents": [
        "970e178985cadbca660feb02f4d2ee3a09f7fdda"
      ],
      "author": {
        "name": "Prashanth Nageshappa",
        "email": "prashanth@linux.vnet.ibm.com",
        "time": "Tue Jun 19 17:47:34 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 24 13:55:20 2012 +0200"
      },
      "message": "sched: Reorder \u0027struct lb_env\u0027 members to reduce its size\n\nMembers of \u0027struct lb_env\u0027 are not in appropriate order to reuse compiler\nadded padding on 64bit architectures. In this patch we reorder those struct\nmembers and help reduce the size of the structure from 96 bytes to 80\nbytes on 64 bit architectures.\n\nSuggested-by: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nSigned-off-by: Prashanth Nageshappa \u003cprashanth@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4FE06DDE.7000403@linux.vnet.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "970e178985cadbca660feb02f4d2ee3a09f7fdda",
      "tree": "20f47abb069a5d13940e8cdc48dae5f5563eb59a",
      "parents": [
        "a1cd2b13f754b2c56fb87b8c4912c015f8f57c0c"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Jun 12 05:18:32 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 24 13:53:34 2012 +0200"
      },
      "message": "sched: Improve scalability via \u0027CPU buddies\u0027, which withstand random perturbations\n\nTraversing an entire package is not only expensive, it also leads to tasks\nbouncing all over a partially idle and possible quite large package.  Fix\nthat up by assigning a \u0027buddy\u0027 CPU to try to motivate.  Each buddy may try\nto motivate that one other CPU, if it\u0027s busy, tough, it may then try its\nSMT sibling, but that\u0027s all this optimization is allowed to cost.\n\nSibling cache buddies are cross-wired to prevent bouncing.\n\n4 socket 40 core + SMT Westmere box, single 30 sec tbench runs, higher is better:\n\n clients     1       2       4        8       16       32       64      128\n ..........................................................................\n pre        30      41     118      645     3769     6214    12233    14312\n post      299     603    1211     2418     4697     6847    11606    14557\n\nA nice increase in performance.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\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/1339471112.7352.32.camel@marge.simpson.net\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "7ddf96b02fe8dd441f452deef879040def5f7b34",
      "tree": "779a01bad0b51eb8ca8acb96b75f5a1b06f9a6d3",
      "parents": [
        "80d1fa6463d934969b7aebf04107fc133463f0f6"
      ],
      "author": {
        "name": "Srivatsa S. Bhat",
        "email": "srivatsa.bhat@linux.vnet.ibm.com",
        "time": "Thu May 24 19:46:55 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 24 13:53:22 2012 +0200"
      },
      "message": "cpusets, hotplug: Restructure functions that are invoked during hotplug\n\nSeparate out the cpuset related handling for CPU/Memory online/offline.\nThis also helps us exploit the most obvious and basic level of optimization\nthat any notification mechanism (CPU/Mem online/offline) has to offer us:\n\"We *know* why we have been invoked. So stop pretending that we are lost,\nand do only the necessary amount of processing!\".\n\nAnd while at it, rename scan_for_empty_cpusets() to\nscan_cpusets_upon_hotplug(), which is more appropriate considering how\nit is restructured.\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/20120524141650.3692.48637.stgit@srivatsabhat.in.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "d35be8bab9b0ce44bed4b9453f86ebf64062721e",
      "tree": "295823c4f0d50be5b30714a083de658e1a4185e6",
      "parents": [
        "ee08d1284ea9235b29bd2d9b7493b4b4cf3da09c"
      ],
      "author": {
        "name": "Srivatsa S. Bhat",
        "email": "srivatsa.bhat@linux.vnet.ibm.com",
        "time": "Thu May 24 19:46:26 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 24 13:53:14 2012 +0200"
      },
      "message": "CPU hotplug, cpusets, suspend: Don\u0027t modify cpusets during suspend/resume\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\n"
    },
    {
      "commit": "ab93eb82164f9fc426eae7b286510cfd94738b8e",
      "tree": "3f486fcafc51d2dceae44dfb2b9b261aeecaafb5",
      "parents": [
        "fdb1335a82ef1ef9442ac9377796e4e7a69d1ae4",
        "40b3c43f042c2ba8915aff5c63708207ed7639cb",
        "25c037d64e7a0a8effb562babb2b6218829134ac",
        "95c0d71dcb853c2eca5f2231ebbd4c1d3af775b7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 14 11:16:24 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 14 11:16:24 2012 -0700"
      },
      "message": "Merge branches \u0027core-urgent-for-linus\u0027, \u0027perf-urgent-for-linus\u0027 and \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull RCU, perf, and scheduler fixes from Ingo Molnar.\n\nThe RCU fix is a revert for an optimization that could cause deadlocks.\n\nOne of the scheduler commits (164c33c6adee \"sched: Fix fork() error path\nto not crash\") is correct but not complete (some architectures like Tile\nare not covered yet) - the resulting additional fixes are still WIP and\nIngo did not want to delay these pending fixes.  See this thread on\nlkml:\n\n  [PATCH] fork: fix error handling in dup_task()\n\nThe perf fixes are just trivial oneliners.\n\n* \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  Revert \"rcu: Move PREEMPT_RCU preemption to switch_to() invocation\"\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  perf kvm: Fix segfault with report and mixed guestmount use\n  perf kvm: Fix regression with guest machine creation\n  perf script: Fix format regression due to libtraceevent merge\n  ring-buffer: Fix accounting of entries when removing pages\n  ring-buffer: Fix crash due to uninitialized new_pages list head\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  MAINTAINERS/sched: Update scheduler file pattern\n  sched/nohz: Rewrite and fix load-avg computation -- again\n  sched: Fix fork() error path to not crash\n"
    },
    {
      "commit": "5167e8d5417bf5c322a703d2927daec727ea40dd",
      "tree": "b919aac933c104e7c7abc1730da810f60ba3229d",
      "parents": [
        "164c33c6adee609b8b9062cce4c10f764d0dce13"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 22 15:52:09 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Jul 05 20:58:13 2012 +0200"
      },
      "message": "sched/nohz: Rewrite and fix load-avg computation -- again\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\nCc: stable@kernel.org\nLink: http://lkml.kernel.org/r/1340373782.18025.74.camel@twins\n[ minor edits ]\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "cba6d0d64ee53772b285d0c0c288deefbeaf7775",
      "tree": "b2d3de62d15a77d23708c1af6f188c86f0d87fb9",
      "parents": [
        "6887a4131da3adaab011613776d865f4bcfb5678"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jul 02 07:08:42 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jul 02 11:39:19 2012 -0700"
      },
      "message": "Revert \"rcu: Move PREEMPT_RCU preemption to switch_to() invocation\"\n\nThis reverts commit 616c310e83b872024271c915c1b9ab505b9efad9.\n(Move PREEMPT_RCU preemption to switch_to() invocation).\nTesting by Sasha Levin \u003clevinsasha928@gmail.com\u003e showed that this\ncan result in deadlock due to invoking the scheduler when one of\nthe runqueue locks is held.  Because this commit was simply a\nperformance optimization, revert it.\n\nReported-by: Sasha Levin \u003clevinsasha928@gmail.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nTested-by: Sasha Levin \u003clevinsasha928@gmail.com\u003e\n"
    },
    {
      "commit": "72494504498ff5ac2f086a83473d4dd1ca490bd3",
      "tree": "7f1ceab43de3580235f1a56f2ae865901c09e4d7",
      "parents": [
        "cd96891d48a945ca2011fbeceda73813d6286195",
        "a841f8cef4bb124f0f5563314d0beaf2e1249d72"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 08 14:59:29 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 08 14:59:29 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 the relax_domain_level boot parameter\n  sched: Validate assumptions in sched_init_numa()\n  sched: Always initialize cpu-power\n  sched: Fix domain iteration\n  sched/rt: Fix lockdep annotation within find_lock_lowest_rq()\n  sched/numa: Load balance between remote nodes\n  sched/x86: Calculate booted cores after construction of sibling_mask\n"
    },
    {
      "commit": "cd96891d48a945ca2011fbeceda73813d6286195",
      "tree": "c859442b2364adfa4eec29f516ffbe9c316a81bf",
      "parents": [
        "8f53369b753f5f4c7684c2eb0b592152abb1dd00"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Fri Jun 08 13:18:33 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 08 14:59:10 2012 -0700"
      },
      "message": "sched/fair: fix lots of kernel-doc warnings\n\nFix lots of new kernel-doc warnings in kernel/sched/fair.c:\n\n  Warning(kernel/sched/fair.c:3625): No description found for parameter \u0027env\u0027\n  Warning(kernel/sched/fair.c:3625): Excess function parameter \u0027sd\u0027 description in \u0027update_sg_lb_stats\u0027\n  Warning(kernel/sched/fair.c:3735): No description found for parameter \u0027env\u0027\n  Warning(kernel/sched/fair.c:3735): Excess function parameter \u0027sd\u0027 description in \u0027update_sd_pick_busiest\u0027\n  Warning(kernel/sched/fair.c:3735): Excess function parameter \u0027this_cpu\u0027 description in \u0027update_sd_pick_busiest\u0027\n  .. more warnings\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a841f8cef4bb124f0f5563314d0beaf2e1249d72",
      "tree": "b846a9065f021313027f1bbc489743c43ea5869e",
      "parents": [
        "d039ac60800fe8ed8522ec3b9ca796aaf748c18b"
      ],
      "author": {
        "name": "Dimitri Sivanich",
        "email": "sivanich@sgi.com",
        "time": "Tue Jun 05 13:44:36 2012 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Jun 06 17:07:41 2012 +0200"
      },
      "message": "sched: Fix the relax_domain_level boot parameter\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\n"
    },
    {
      "commit": "d039ac60800fe8ed8522ec3b9ca796aaf748c18b",
      "tree": "b00845d9466d1abed5dbfda1e3c68713333460bc",
      "parents": [
        "c3decf0dfbc95736b7c0ab68fa4e5854c4734da9"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu May 31 21:20:16 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Jun 06 16:52:30 2012 +0200"
      },
      "message": "sched: Validate assumptions in sched_init_numa()\n\nAdd some code to validate assumptions we\u0027re making and output\nwarnings if they are not.\n\nIf this trigger we want to know about it.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Alex Shi \u003clkml.alex@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-6uc3wk5s9udxtdl9cnku0vtt@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "c3decf0dfbc95736b7c0ab68fa4e5854c4734da9",
      "tree": "c21748af2b4c7e4b738cefd2076c1ccc6ed2c664",
      "parents": [
        "c1174876874dcf8986806e4dad3d7d07af20b439"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu May 31 12:05:32 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Jun 06 16:52:27 2012 +0200"
      },
      "message": "sched: Always initialize cpu-power\n\nOften when we run into mis-shapen topologies the balance iteration\nfails to update the cpu power properly and we\u0027ll end up in /0 traps.\n\nAlways initialize the cpu-power to a semi-sane value so that we can\nat least boot the machine, even if the load-balancer might not\nfunction correctly.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-3lbhyj25sr169ha7z3qht5na@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "c1174876874dcf8986806e4dad3d7d07af20b439",
      "tree": "7e2ea14ba9421bddd63e1810716f1929c753e28b",
      "parents": [
        "7f1b43936f0ecad14770634c021cf4a929aec74d"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu May 31 14:47:33 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Jun 06 16:52:26 2012 +0200"
      },
      "message": "sched: Fix domain iteration\n\nWeird topologies can lead to asymmetric domain setups. This needs\nfurther consideration since these setups are typically non-minimal\ntoo.\n\nFor now, make it work by adding an extra mask selecting which CPUs\nare allowed to iterate up.\n\nThe topology that triggered it is the one from David Rientjes:\n\n\t10 20 20 30\n\t20 10 20 20\n\t20 20 10 20\n\t30 20 20 10\n\nresulting in boxes that wouldn\u0027t even boot.\n\nReported-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-3p86l9cuaqnxz7uxsojmz5rm@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "7f1b43936f0ecad14770634c021cf4a929aec74d",
      "tree": "ea200fcf70af41839e049c59a2dc922407e7495b",
      "parents": [
        "10717dcde10d09f9fcee53a12a4236af1a82b484"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu May 17 21:19:46 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Jun 06 16:52:26 2012 +0200"
      },
      "message": "sched/rt: Fix lockdep annotation within find_lock_lowest_rq()\n\nRoland Dreier reported spurious, hard to trigger lockdep warnings\nwithin the scheduler - without any real lockup.\n\nThis bit gives us the right clue:\n\n\u003e [89945.640512]  [\u003cffffffff8103fa1a\u003e] double_lock_balance+0x5a/0x90\n\u003e [89945.640568]  [\u003cffffffff8104c546\u003e] push_rt_task+0xc6/0x290\n\nif you look at that code you\u0027ll find the double_lock_balance() in\nquestion is the one in find_lock_lowest_rq() [yay for inlining].\n\nNow find_lock_lowest_rq() has a bug.. it fails to use\ndouble_unlock_balance() in one exit path, if this results in a retry in\npush_rt_task() we\u0027ll call double_lock_balance() again, at which point\nwe\u0027ll run into said lockdep confusion.\n\nReported-by: Roland Dreier \u003croland@kernel.org\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1337282386.4281.77.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "10717dcde10d09f9fcee53a12a4236af1a82b484",
      "tree": "ef7fa575d2bec5631201cd72c5764f042650e382",
      "parents": [
        "ceb1cbac8eda66cf0f889def226b4e82f8ff857b"
      ],
      "author": {
        "name": "Alex Shi",
        "email": "alex.shi@intel.com",
        "time": "Wed Jun 06 14:52:51 2012 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Jun 06 16:52:25 2012 +0200"
      },
      "message": "sched/numa: Load balance between remote nodes\n\nCommit cb83b629b (\"sched/numa: Rewrite the CONFIG_NUMA sched\ndomain support\") removed the NODE sched domain and started checking\nif the node distance in SLIT table is farther than REMOTE_DISTANCE,\nif so, it will lose the load balance chance at exec/fork/wake_affine\npoints.\n\nBut actually, even the node distance is farther than REMOTE_DISTANCE.\n\nModern CPUs also has QPI like connections, which ensures that memory\naccess is not too slow between nodes. So the above change in behavior\non NUMA machine causes a performance regression on various benchmarks:\nhackbench, tbench, netperf, oltp, etc.\n\nThis patch will recover the scheduler behavior to old mode on all my\nIntel platforms: NHM EP/EX, WSM EP, SNB EP/EP4S, and thus fixes the\nperfromance regressions. (all of them just have 2 kinds distance, 10, 21)\n\nSigned-off-by: Alex Shi \u003calex.shi@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1338965571-9812-1-git-send-email-alex.shi@intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "6a4c96eef42f835734a82c6b512abf9881b7c55d",
      "tree": "d7b542e7606e0eaeec8f1160ea2eb37f18fa8d29",
      "parents": [
        "7997a456ef841bb78eb6f881d7cc2c17c2f9b35e"
      ],
      "author": {
        "name": "Kamalesh Babulal",
        "email": "kamalesh@linux.vnet.ibm.com",
        "time": "Wed May 23 14:44:11 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 30 14:02:27 2012 +0200"
      },
      "message": "sched: Remove NULL assignment of dattr_cur\n\nRemove explicit NULL assignment of static pointer\ndattr_cur from init_sched_domains().\n\nSigned-off-by: Kamalesh Babulal \u003ckamalesh@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20120523091411.GG5005@linux.vnet.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "7997a456ef841bb78eb6f881d7cc2c17c2f9b35e",
      "tree": "b27fd20b6cec18b19744ae6ad74f201cfab37584",
      "parents": [
        "1292531f6f27af909e713671dd9cc3bcab8114b7"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Fri May 25 15:42:47 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 30 14:02:27 2012 +0200"
      },
      "message": "sched: Remove the last NULL entry from sched_feat_names\n\nNo need to have the last NULL entry.\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/4FBF29E7.5020805@ct.jp.nec.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "1292531f6f27af909e713671dd9cc3bcab8114b7",
      "tree": "65f989da9c6bb9596d9b77f9c228f4d63f9b5317",
      "parents": [
        "454c79999f7eaedcdf4c15c449e43902980cbdf5"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Fri May 25 15:41:54 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 30 14:02:26 2012 +0200"
      },
      "message": "sched: Make sched_feat_names const\n\nThe strings sched_feat_names are never changed.\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/4FBF29B2.9030904@ct.jp.nec.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "454c79999f7eaedcdf4c15c449e43902980cbdf5",
      "tree": "0da7f5fe6328283a2bf36648bc04e74028d5bfd8",
      "parents": [
        "29baa7478ba47d746e3625c91d3b2afbf46b4312"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed May 16 21:34:23 2012 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 30 14:02:25 2012 +0200"
      },
      "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\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\n"
    },
    {
      "commit": "29baa7478ba47d746e3625c91d3b2afbf46b4312",
      "tree": "a902e53baab64d89c07561694d171c4f8f4d1843",
      "parents": [
        "b654f7de41b0e3903ee2b51d3b8db77fe52ce728"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Apr 23 12:11:21 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 30 14:02:25 2012 +0200"
      },
      "message": "sched: Move nr_cpus_allowed out of \u0027struct sched_rt_entity\u0027\n\nSince nr_cpus_allowed is used outside of sched/rt.c and wants to be\nused outside of there more, move it to a more natural site.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-kr61f02y9brwzkh6x53pdptm@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "b654f7de41b0e3903ee2b51d3b8db77fe52ce728",
      "tree": "cdcd46a04d8b59d75045f1d3ae753e4843dbe2c0",
      "parents": [
        "74a5ce20e6eeeb3751340b390e7ac1d1d07bbf55"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue May 22 14:04:28 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 30 14:02:24 2012 +0200"
      },
      "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\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\n"
    },
    {
      "commit": "74a5ce20e6eeeb3751340b390e7ac1d1d07bbf55",
      "tree": "ebbef56666aa11303eafbfb6adbfce56e7a4c605",
      "parents": [
        "2ea45800d8e1c3c51c45a233d6bd6289a297a386"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Wed May 23 18:00:43 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 30 14:02:24 2012 +0200"
      },
      "message": "sched: Fix SD_OVERLAP\n\nSD_OVERLAP exists to allow overlapping groups, overlapping groups\nappear in NUMA topologies that aren\u0027t fully connected.\n\nThe typical result of not fully connected NUMA is that each cpu (or\nrather node) will have different spans for a particular distance.\nHowever due to how sched domains are traversed -- only the first cpu\nin the mask goes one level up -- the next level only cares about the\nspans of the cpus that went up.\n\nDue to this two things were observed to be broken:\n\n - build_overlap_sched_groups() -- since its possible the cpu we\u0027re\n   building the groups for exists in multiple (or all) groups, the\n   selection criteria of the first group didn\u0027t ensure there was a cpu\n   for which is was true that cpumask_first(span) \u003d\u003d cpu. Thus load-\n   balancing would terminate.\n\n - update_group_power() -- assumed that the cpu span of the first\n   group of the domain was covered by all groups of the child domain.\n   The above explains why this isn\u0027t true, so deal with it.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nLink: http://lkml.kernel.org/r/1337788843.9783.14.camel@laptop\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "2ea45800d8e1c3c51c45a233d6bd6289a297a386",
      "tree": "13a6795e66593f355804915f30800f85b0289216",
      "parents": [
        "5aaa0b7a2ed5b12692c9ffb5222182bd558d3146"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 25 09:26:43 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 30 14:02:23 2012 +0200"
      },
      "message": "sched: Don\u0027t try allocating memory from offline nodes\n\nAllocators don\u0027t appreciate it when you try and allocate memory from\noffline nodes.\n\nReported-and-tested-by: Tony Luck \u003ctony.luck@intel.com\u003e\nReported-and-tested-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-epfc1io9whb7o22bcujf31vn@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "5aaa0b7a2ed5b12692c9ffb5222182bd558d3146",
      "tree": "0334762e9d0e773acf21e61c682f895c25201c89",
      "parents": [
        "9f646389aa7727a2fd8f9ae6337b92af9cfbc264"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu May 17 17:15:29 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 30 14:02:16 2012 +0200"
      },
      "message": "sched/nohz: Fix rq-\u003ecpu_load calculations some more\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\n"
    },
    {
      "commit": "644473e9c60c1ff4f6351fed637a6e5551e3dce7",
      "tree": "10316518bedc735a2c6552886658d69dfd9f1eb0",
      "parents": [
        "fb827ec68446c83e9e8754fa9b55aed27ecc4661",
        "4b06a81f1daee668fbd6de85557bfb36dd36078f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 23 17:42:39 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 23 17:42:39 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace\n\nPull user namespace enhancements from Eric Biederman:\n \"This is a course correction for the user namespace, so that we can\n  reach an inexpensive, maintainable, and reasonably complete\n  implementation.\n\n  Highlights:\n   - Config guards make it impossible to enable the user namespace and\n     code that has not been converted to be user namespace safe.\n\n   - Use of the new kuid_t type ensures the if you somehow get past the\n     config guards the kernel will encounter type errors if you enable\n     user namespaces and attempt to compile in code whose permission\n     checks have not been updated to be user namespace safe.\n\n   - All uids from child user namespaces are mapped into the initial\n     user namespace before they are processed.  Removing the need to add\n     an additional check to see if the user namespace of the compared\n     uids remains the same.\n\n   - With the user namespaces compiled out the performance is as good or\n     better than it is today.\n\n   - For most operations absolutely nothing changes performance or\n     operationally with the user namespace enabled.\n\n   - The worst case performance I could come up with was timing 1\n     billion cache cold stat operations with the user namespace code\n     enabled.  This went from 156s to 164s on my laptop (or 156ns to\n     164ns per stat operation).\n\n   - (uid_t)-1 and (gid_t)-1 are reserved as an internal error value.\n     Most uid/gid setting system calls treat these value specially\n     anyway so attempting to use -1 as a uid would likely cause\n     entertaining failures in userspace.\n\n   - If setuid is called with a uid that can not be mapped setuid fails.\n     I have looked at sendmail, login, ssh and every other program I\n     could think of that would call setuid and they all check for and\n     handle the case where setuid fails.\n\n   - If stat or a similar system call is called from a context in which\n     we can not map a uid we lie and return overflowuid.  The LFS\n     experience suggests not lying and returning an error code might be\n     better, but the historical precedent with uids is different and I\n     can not think of anything that would break by lying about a uid we\n     can\u0027t map.\n\n   - Capabilities are localized to the current user namespace making it\n     safe to give the initial user in a user namespace all capabilities.\n\n  My git tree covers all of the modifications needed to convert the core\n  kernel and enough changes to make a system bootable to runlevel 1.\"\n\nFix up trivial conflicts due to nearby independent changes in fs/stat.c\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (46 commits)\n  userns:  Silence silly gcc warning.\n  cred: use correct cred accessor with regards to rcu read lock\n  userns: Convert the move_pages, and migrate_pages permission checks to use uid_eq\n  userns: Convert cgroup permission checks to use uid_eq\n  userns: Convert tmpfs to use kuid and kgid where appropriate\n  userns: Convert sysfs to use kgid/kuid where appropriate\n  userns: Convert sysctl permission checks to use kuid and kgids.\n  userns: Convert proc to use kuid/kgid where appropriate\n  userns: Convert ext4 to user kuid/kgid where appropriate\n  userns: Convert ext3 to use kuid/kgid where appropriate\n  userns: Convert ext2 to use kuid/kgid where appropriate.\n  userns: Convert devpts to use kuid/kgid where appropriate\n  userns: Convert binary formats to use kuid/kgid where appropriate\n  userns: Add negative depends on entries to avoid building code that is userns unsafe\n  userns: signal remove unnecessary map_cred_ns\n  userns: Teach inode_capable to understand inodes whose uids map to other namespaces.\n  userns: Fail exec for suid and sgid binaries with ids outside our user namespace.\n  userns: Convert stat to return values mapped from kuids and kgids\n  userns: Convert user specfied uids and gids in chown into kuids and kgid\n  userns: Use uid_eq gid_eq helpers when comparing kuids and kgids in the vfs\n  ...\n"
    },
    {
      "commit": "56edab315927d2a5ae6064b9fc083236a6fc278f",
      "tree": "1b00b00033d769d6039448b6d8feffcf86b06088",
      "parents": [
        "3813d4024a75562baf77d3907fb6afbf8f9c8232",
        "5bcdf5e4fee3c45e1281c25e4941f2163cb28c65",
        "ab0cce560ef177bdc7a8f73e9962be9d829a7b2c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 23 12:12:49 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 23 12:12:49 2012 -0700"
      },
      "message": "Merge branches \u0027perf-urgent-for-linus\u0027 and \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull perf fixes from Ingo Molnar:\n\n - Leftover AMD PMU driver fix fix from the end of the v3.4\n   stabilization cycle.\n\n - Late tools/perf/ changes that missed the first round:\n    * endianness fixes\n    * event parsing improvements\n    * libtraceevent fixes factored out from trace-cmd\n    * perl scripting engine fixes related to libtraceevent,\n    * testcase improvements\n    * perf inject / pipe mode fixes\n    * plus a kernel side fix\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  perf/x86: Update event scheduling constraints for AMD family 15h models\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  Revert \"sched, perf: Use a single callback into the scheduler\"\n  perf evlist: Show event attribute details\n  perf tools: Bump default sample freq to 4 kHz\n  perf buildid-list: Work better with pipe mode\n  perf tools: Fix piped mode read code\n  perf inject: Fix broken perf inject -b\n  perf tools: rename HEADER_TRACE_INFO to HEADER_TRACING_DATA\n  perf tools: Add union u64_swap type for swapping u64 data\n  perf tools: Carry perf_event_attr bitfield throught different endians\n  perf record: Fix documentation for branch stack sampling\n  perf target: Add cpu flag to sample_type if target has cpu\n  perf tools: Always try to build libtraceevent\n  perf tools: Rename libparsevent to libtraceevent in Makefile\n  perf script: Rename struct event to struct event_format in perl engine\n  perf script: Explicitly handle known default print arg type\n  perf tools: Add hardcoded name term for pmu events\n  perf tools: Separate \u0027mem:\u0027 event scanner bits\n  perf tools: Use allocated list for each parsed event\n  perf tools: Add support for displaying event parser debug info\n  perf test: Move parse event automated tests to separated object\n"
    },
    {
      "commit": "ab0cce560ef177bdc7a8f73e9962be9d829a7b2c",
      "tree": "d9875b21c42862201624eb7d9ea2c36f4ea4035d",
      "parents": [
        "26252ea675663d1bc6747125fcaa2b7cc4ed8a03"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Wed May 23 13:13:02 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 23 17:40:51 2012 +0200"
      },
      "message": "Revert \"sched, perf: Use a single callback into the scheduler\"\n\nThis reverts commit cb04ff9ac424 (\"sched, perf: Use a single\ncallback into the scheduler\").\n\nBefore this change was introduced, the process switch worked\nlike this (wrt. to perf event schedule):\n\n     schedule (prev, next)\n       - schedule out all perf events for prev\n       - switch to next\n       - schedule in all perf events for current (next)\n\nAfter the commit, the process switch looks like:\n\n     schedule (prev, next)\n       - schedule out all perf events for prev\n       - schedule in all perf events for (next)\n       - switch to next\n\nThe problem is, that after we schedule perf events in, the pmu\nis enabled and we can receive events even before we make the\nswitch to next - so \"current\" still being prev process (event\nSAMPLE data are filled based on the value of the \"current\"\nprocess).\n\nThats exactly what we see for test__PERF_RECORD test. We receive\nSAMPLES with PID of the process that our tracee is scheduled\nfrom.\n\nDiscussed with Peter Zijlstra:\n\n \u003e Bah!, yeah I guess reverting is the right thing for now. Sad\n \u003e though.\n \u003e\n \u003e So by having the two hooks we have a black-spot between them\n \u003e where we receive no events at all, this black-spot covers the\n \u003e hand-over of current and we thus don\u0027t receive the \u0027wrong\u0027\n \u003e events.\n \u003e\n \u003e I rather liked we could do away with both that black-spot and\n \u003e clean up the code a little, but apparently people rely on it.\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: acme@redhat.com\nCc: paulus@samba.org\nCc: cjashfor@linux.vnet.ibm.com\nCc: fweisbec@gmail.com\nCc: eranian@google.com\nLink: http://lkml.kernel.org/r/20120523111302.GC1638@m.brq.redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "d79ee93de909dfb252279b9a95978bbda9a814a9",
      "tree": "bfccca60fd36259ff4bcc5e78a2c272fbd680065",
      "parents": [
        "2ff2b289a695807e291e1ed9f639d8a3ba5f4254",
        "1c2927f18576d65631d8e0ddd19e1d023183222e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 22 18:27:32 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 22 18:27:32 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 from Ingo Molnar:\n \"The biggest change is the cleanup/simplification of the load-balancer:\n  instead of the current practice of architectures twiddling scheduler\n  internal data structures and providing the scheduler domains in\n  colorfully inconsistent ways, we now have generic scheduler code in\n  kernel/sched/core.c:sched_init_numa() that looks at the architecture\u0027s\n  node_distance() parameters and (while not fully trusting it) deducts a\n  NUMA topology from it.\n\n  This inevitably changes balancing behavior - hopefully for the better.\n\n  There are various smaller optimizations, cleanups and fixlets as well\"\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched: Taint kernel with TAINT_WARN after sleep-in-atomic bug\n  sched: Remove stale power aware scheduling remnants and dysfunctional knobs\n  sched/debug: Fix printing large integers on 32-bit platforms\n  sched/fair: Improve the -\u003egroup_imb logic\n  sched/nohz: Fix rq-\u003ecpu_load[] calculations\n  sched/numa: Don\u0027t scale the imbalance\n  sched/fair: Revert sched-domain iteration breakage\n  sched/x86: Rewrite set_cpu_sibling_map()\n  sched/numa: Fix the new NUMA topology bits\n  sched/numa: Rewrite the CONFIG_NUMA sched domain support\n  sched/fair: Propagate \u0027struct lb_env\u0027 usage into find_busiest_group\n  sched/fair: Add some serialization to the sched_domain load-balance walk\n  sched/fair: Let minimally loaded cpu balance the group\n  sched: Change rq-\u003enr_running to unsigned int\n  x86/numa: Check for nonsensical topologies on real hw as well\n  x86/numa: Hard partition cpu topology masks on node boundaries\n  x86/numa: Allow specifying node_distance() for numa\u003dfake\n  x86/sched: Make mwait_usable() heed to \"idle\u003d\" kernel parameters properly\n  sched: Update documentation and comments\n  sched_rt: Avoid unnecessary dequeue and enqueue of pushable tasks in set_cpus_allowed_rt()\n"
    },
    {
      "commit": "2ff2b289a695807e291e1ed9f639d8a3ba5f4254",
      "tree": "e4b7f44e5cc1582ba2be8aeba221f4841f4c86a6",
      "parents": [
        "88d6ae8dc33af12fe1c7941b1fae2767374046fd",
        "73787190d04a34e6da745da893b3ae8bedde418f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 22 18:18:55 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 22 18:18:55 2012 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull perf changes from Ingo Molnar:\n \"Lots of changes:\n\n   - (much) improved assembly annotation support in perf report, with\n     jump visualization, searching, navigation, visual output\n     improvements and more.\n\n    - kernel support for AMD IBS PMU hardware features.  Notably \u0027perf\n      record -e cycles:p\u0027 and \u0027perf top -e cycles:p\u0027 should work without\n      skid now, like PEBS does on the Intel side, because it takes\n      advantage of IBS transparently.\n\n    - the libtracevents library: it is the first step towards unifying\n      tracing tooling and perf, and it also gives a tracing library for\n      external tools like powertop to rely on.\n\n    - infrastructure: various improvements and refactoring of the UI\n      modules and related code\n\n    - infrastructure: cleanup and simplification of the profiling\n      targets code (--uid, --pid, --tid, --cpu, --all-cpus, etc.)\n\n    - tons of robustness fixes all around\n\n    - various ftrace updates: speedups, cleanups, robustness\n      improvements.\n\n    - typing \u0027make\u0027 in tools/ will now give you a menu of projects to\n      build and a short help text to explain what each does.\n\n    - ... and lots of other changes I forgot to list.\n\n  The perf record make bzImage + perf report regression you reported\n  should be fixed.\"\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (166 commits)\n  tracing: Remove kernel_lock annotations\n  tracing: Fix initial buffer_size_kb state\n  ring-buffer: Merge separate resize loops\n  perf evsel: Create events initially disabled -- again\n  perf tools: Split term type into value type and term type\n  perf hists: Fix callchain ip printf format\n  perf target: Add uses_mmap field\n  ftrace: Remove selecting FRAME_POINTER with FUNCTION_TRACER\n  ftrace/x86: Have x86 ftrace use the ftrace_modify_all_code()\n  ftrace: Make ftrace_modify_all_code() global for archs to use\n  ftrace: Return record ip addr for ftrace_location()\n  ftrace: Consolidate ftrace_location() and ftrace_text_reserved()\n  ftrace: Speed up search by skipping pages by address\n  ftrace: Remove extra helper functions\n  ftrace: Sort all function addresses, not just per page\n  tracing: change CPU ring buffer state from tracing_cpumask\n  tracing: Check return value of tracing_dentry_percpu()\n  ring-buffer: Reset head page before running self test\n  ring-buffer: Add integrity check at end of iter read\n  ring-buffer: Make addition of pages in ring buffer atomic\n  ...\n"
    },
    {
      "commit": "88d6ae8dc33af12fe1c7941b1fae2767374046fd",
      "tree": "8f17415c0722b0a4d7511ac170cfb4e3802e1ad2",
      "parents": [
        "f5c101892fbd3d2f6d2729bc7eb7b3f6c31dbddd",
        "0d4dde1ac9a5af74ac76c6ab90557d1ae7b8f5d8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 22 17:40:19 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 22 17:40:19 2012 -0700"
      },
      "message": "Merge branch \u0027for-3.5\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup\n\nPull cgroup updates from Tejun Heo:\n \"cgroup file type addition / removal is updated so that file types are\n  added and removed instead of individual files so that dynamic file\n  type addition / removal can be implemented by cgroup and used by\n  controllers.  blkio controller changes which will come through block\n  tree are dependent on this.  Other changes include res_counter cleanup\n  and disallowing kthread / PF_THREAD_BOUND threads to be attached to\n  non-root cgroups.\n\n  There\u0027s a reported bug with the file type addition / removal handling\n  which can lead to oops on cgroup umount.  The issue is being looked\n  into.  It shouldn\u0027t cause problems for most setups and isn\u0027t a\n  security concern.\"\n\nFix up trivial conflict in Documentation/feature-removal-schedule.txt\n\n* \u0027for-3.5\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: (21 commits)\n  res_counter: Account max_usage when calling res_counter_charge_nofail()\n  res_counter: Merge res_counter_charge and res_counter_charge_nofail\n  cgroups: disallow attaching kthreadd or PF_THREAD_BOUND threads\n  cgroup: remove cgroup_subsys-\u003epopulate()\n  cgroup: get rid of populate for memcg\n  cgroup: pass struct mem_cgroup instead of struct cgroup to socket memcg\n  cgroup: make css-\u003erefcnt clearing on cgroup removal optional\n  cgroup: use negative bias on css-\u003erefcnt to block css_tryget()\n  cgroup: implement cgroup_rm_cftypes()\n  cgroup: introduce struct cfent\n  cgroup: relocate __d_cgrp() and __d_cft()\n  cgroup: remove cgroup_add_file[s]()\n  cgroup: convert memcg controller to the new cftype interface\n  memcg: always create memsw files if CONFIG_CGROUP_MEM_RES_CTLR_SWAP\n  cgroup: convert all non-memcg controllers to the new cftype interface\n  cgroup: relocate cftype and cgroup_subsys definitions in controllers\n  cgroup: merge cft_release_agent cftype array into the base files array\n  cgroup: implement cgroup_add_cftypes() and friends\n  cgroup: build list of all cgroups under a given cgroupfs_root\n  cgroup: move cgroup_clear_directory() call out of cgroup_populate_dir()\n  ...\n"
    },
    {
      "commit": "bf67f3a5c456a18f2e8d062f7e88506ef2cd9837",
      "tree": "2a2324b2572162059307db82f9238eeb25673a77",
      "parents": [
        "226da0dbc84ed97f448523e2a4cb91c27fa68ed9",
        "203dacbdca977bedaba61ad2fca75d934060a5d5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 21 19:43:57 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 21 19:43:57 2012 -0700"
      },
      "message": "Merge branch \u0027smp-hotplug-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull smp hotplug cleanups from Thomas Gleixner:\n \"This series is merily a cleanup of code copied around in arch/* and\n  not changing any of the real cpu hotplug horrors yet.  I wish I\u0027d had\n  something more substantial for 3.5, but I underestimated the lurking\n  horror...\"\n\nFix up trivial conflicts in arch/{arm,sparc,x86}/Kconfig and\narch/sparc/include/asm/thread_info_32.h\n\n* \u0027smp-hotplug-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (79 commits)\n  um: Remove leftover declaration of alloc_task_struct_node()\n  task_allocator: Use config switches instead of magic defines\n  sparc: Use common threadinfo allocator\n  score: Use common threadinfo allocator\n  sh-use-common-threadinfo-allocator\n  mn10300: Use common threadinfo allocator\n  powerpc: Use common threadinfo allocator\n  mips: Use common threadinfo allocator\n  hexagon: Use common threadinfo allocator\n  m32r: Use common threadinfo allocator\n  frv: Use common threadinfo allocator\n  cris: Use common threadinfo allocator\n  x86: Use common threadinfo allocator\n  c6x: Use common threadinfo allocator\n  fork: Provide kmemcache based thread_info allocator\n  tile: Use common threadinfo allocator\n  fork: Provide weak arch_release_[task_struct|thread_info] functions\n  fork: Move thread info gfp flags to header\n  fork: Remove the weak insanity\n  sh: Remove cpu_idle_wait()\n  ...\n"
    },
    {
      "commit": "226da0dbc84ed97f448523e2a4cb91c27fa68ed9",
      "tree": "3969a9f612cd5596747ecde2066e65eacbab7d2e",
      "parents": [
        "5ec29e3149d800e6db83c1b6ff441daf319cbbe2",
        "2d84e023cb5ec00403ff5d447533c6fd58fcc7ff"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 21 19:26:51 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 21 19:26:51 2012 -0700"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull RCU changes from Ingo Molnar:\n \"This is the v3.5 RCU tree from Paul E.  McKenney:\n\n 1) A set of improvements and fixes to the RCU_FAST_NO_HZ feature (with\n    more on the way for 3.6).  Posted to LKML:\n       https://lkml.org/lkml/2012/4/23/324 (commits 1-3 and 5),\n       https://lkml.org/lkml/2012/4/16/611 (commit 4),\n       https://lkml.org/lkml/2012/4/30/390 (commit 6), and\n       https://lkml.org/lkml/2012/5/4/410 (commit 7, combined with\n       the other commits for the convenience of the tester).\n\n 2) Changes to make rcu_barrier() avoid disrupting execution of CPUs\n    that have no RCU callbacks.  Posted to LKML:\n       https://lkml.org/lkml/2012/4/23/322.\n\n 3) A couple of commits that improve the efficiency of the interaction\n    between preemptible RCU and the scheduler, these two being all that\n    survived an abortive attempt to allow preemptible RCU\u0027s\n    __rcu_read_lock() to be inlined.  The full set was posted to LKML at\n    https://lkml.org/lkml/2012/4/14/143, and the first and third patches\n    of that set remain.\n\n 4) Lai Jiangshan\u0027s algorithmic implementation of SRCU, which includes\n    call_srcu() and srcu_barrier().  A major feature of this new\n    implementation is that synchronize_srcu() no longer disturbs the\n    execution of other CPUs.  This work is based on earlier\n    implementations by Peter Zijlstra and Paul E.  McKenney.  Posted to\n    LKML: https://lkml.org/lkml/2012/2/22/82.\n\n 5) A number of miscellaneous bug fixes and improvements which were\n    posted to LKML at: https://lkml.org/lkml/2012/4/23/353 with\n    subsequent updates posted to LKML.\"\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (32 commits)\n  rcu: Make rcu_barrier() less disruptive\n  rcu: Explicitly initialize RCU_FAST_NO_HZ per-CPU variables\n  rcu: Make RCU_FAST_NO_HZ handle timer migration\n  rcu: Update RCU maintainership\n  rcu: Make exit_rcu() more precise and consolidate\n  rcu: Move PREEMPT_RCU preemption to switch_to() invocation\n  rcu: Ensure that RCU_FAST_NO_HZ timers expire on correct CPU\n  rcu: Add rcutorture test for call_srcu()\n  rcu: Implement per-domain single-threaded call_srcu() state machine\n  rcu: Use single value to handle expedited SRCU grace periods\n  rcu: Improve srcu_readers_active_idx()\u0027s cache locality\n  rcu: Remove unused srcu_barrier()\n  rcu: Implement a variant of Peter\u0027s SRCU algorithm\n  rcu: Improve SRCU\u0027s wait_idx() comments\n  rcu: Flip -\u003ecompleted only once per SRCU grace period\n  rcu: Increment upper bit only for srcu_read_lock()\n  rcu: Remove fast check path from __synchronize_srcu()\n  rcu: Direct algorithmic SRCU implementation\n  rcu: Introduce rcutorture testing for rcu_barrier()\n  timer: Fix mod_timer_pinned() header comment\n  ...\n"
    },
    {
      "commit": "16ee6576e25b83806d26eb771138249fcfb5eddc",
      "tree": "7c717b80f28b5c59ba673dc00f2ca9bd0fc068d4",
      "parents": [
        "16fa7e8200fb9066b77a3f27cbed8e4a9fc71998",
        "9b63776fa3ca96c4ecda76f6fa947b7b0add66ac"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri May 18 13:13:33 2012 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri May 18 13:13:33 2012 -0300"
      },
      "message": "Merge remote-tracking branch \u0027tip/perf/urgent\u0027 into perf/core\n\nMerge reason: We are going to queue up a dependent patch:\n\n\"perf tools: Move parse event automated tests to separated object\"\n\nThat depends on:\n\ncommit e7c72d8\nperf tools: Add \u0027G\u0027 and \u0027H\u0027 modifiers to event parsing\n\nConflicts:\n\ttools/perf/builtin-stat.c\n\nConflicted with the recent \u0027perf_target\u0027 patches when checking the\nresult of perf_evsel open routines to see if a retry is needed to cope\nwith older kernels where the exclude guest/host perf_event_attr bits\nwere not used.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "1c2927f18576d65631d8e0ddd19e1d023183222e",
      "tree": "f085b43bde0e8f547eabcd51bdfcbff5ab332c2a",
      "parents": [
        "8e7fbcbc22c12414bcc9dfdd683637f58fb32759"
      ],
      "author": {
        "name": "Konstantin Khlebnikov",
        "email": "khlebnikov@openvz.org",
        "time": "Thu May 10 16:20:04 2012 +0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Fri May 18 13:07:40 2012 +0200"
      },
      "message": "sched: Taint kernel with TAINT_WARN after sleep-in-atomic bug\n\nUsually sleep-in-atomic bugs are followed by dozens other warnings.\nThis patch should help to figure out original source of problem.\n\nSigned-off-by: Konstantin Khlebnikov \u003ckhlebnikov@openvz.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20120510122004.4873.12726.stgit@zurg\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "8e7fbcbc22c12414bcc9dfdd683637f58fb32759",
      "tree": "a438021ddeadddd8f0745293aeb8c80dbe3c999c",
      "parents": [
        "fac536f7e4927f34d480dc066f3a578c743b8f0e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Mon Jan 09 11:28:35 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu May 17 13:48:56 2012 +0200"
      },
      "message": "sched: Remove stale power aware scheduling remnants and dysfunctional knobs\n\nIt\u0027s been broken forever (i.e. it\u0027s not scheduling in a power\naware fashion), as reported by Suresh and others sending\npatches, and nobody cares enough to fix it properly ...\nso remove it to make space free for something better.\n\nThere\u0027s various problems with the code as it stands today, first\nand foremost the user interface which is bound to topology\nlevels and has multiple values per level. This results in a\nstate explosion which the administrator or distro needs to\nmaster and almost nobody does.\n\nFurthermore large configuration state spaces aren\u0027t good, it\nmeans the thing doesn\u0027t just work right because it\u0027s either\nunder so many impossibe to meet constraints, or even if\nthere\u0027s an achievable state workloads have to be aware of\nit precisely and can never meet it for dynamic workloads.\n\nSo pushing this kind of decision to user-space was a bad idea\neven with a single knob - it\u0027s exponentially worse with knobs\non every node of the topology.\n\nThere is a proposal to replace the user interface with a single\n3 state knob:\n\n sched_balance_policy :\u003d { performance, power, auto }\n\nwhere \u0027auto\u0027 would be the preferred default which looks at things\nlike Battery/AC mode and possible cpufreq state or whatever the hw\nexposes to show us power use expectations - but there\u0027s been no\nprogress on it in the past many months.\n\nAside from that, the actual implementation of the various knobs\nis known to be broken. There have been sporadic attempts at\nfixing things but these always stop short of reaching a mergable\nstate.\n\nTherefore this wholesale removal with the hopes of spurring\npeople who care to come forward once again and work on a\ncoherent replacement.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Vincent Guittot \u003cvincent.guittot@linaro.org\u003e\nCc: Vaidyanathan Srinivasan \u003csvaidy@linux.vnet.ibm.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/1326104915.2442.53.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "fac536f7e4927f34d480dc066f3a578c743b8f0e",
      "tree": "13c8ecc3ea9132dcad74412778a6e84112083012",
      "parents": [
        "13e099d2f77e1da3e4046860c48d956588633613",
        "30b4e9eb783d94e9f5d503b15eb31720679ae1c7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu May 17 12:17:10 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu May 17 12:17:12 2012 +0200"
      },
      "message": "Merge branch \u0027sched/urgent\u0027 into sched/core\n\nMerge reason: bring together all the pending scheduler bits,\n              for the sched/numa changes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "13e099d2f77e1da3e4046860c48d956588633613",
      "tree": "f538267ca46bd3647000140f6888045c5114bc0f",
      "parents": [
        "e44bc5c5d00ee9b56dd87db47ed827d52948b9fa"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon May 14 14:34:00 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon May 14 15:05:28 2012 +0200"
      },
      "message": "sched/debug: Fix printing large integers on 32-bit platforms\n\nSome numbers like nr_running and nr_uninterruptible are fundamentally\nunsigned since its impossible to have a negative amount of tasks, yet\nwe still print them as signed to easily recognise the underflow\ncondition.\n\nrq-\u003enr_uninterruptible has \u0027special\u0027 accounting and can in fact very\neasily become negative on a per-cpu basis.\n\nIt was noted that since the P() macro assumes things are long long and\nthe promotion of unsigned \u0027int/long\u0027 to long long on 32bit doesn\u0027t\nsign extend we print silly large numbers instead of the easier to read\nsigned numbers.\n\nTherefore extend the P() macro to not require the sign extention.\n\nReported-by: Diwakar Tundlam \u003cdtundlam@nvidia.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-gk5tm8t2n4ix2vkpns42uqqp@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "e44bc5c5d00ee9b56dd87db47ed827d52948b9fa",
      "tree": "e0e5c30591d8bae335a101458f311e5972175a69",
      "parents": [
        "556061b00c9f2fd6a5524b6bde823ef12f299ecf"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 11 00:22:12 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon May 14 15:05:28 2012 +0200"
      },
      "message": "sched/fair: Improve the -\u003egroup_imb logic\n\nGroup imbalance is meant to deal with situations where affinity masks\nand sched domains don\u0027t align well, such as 3 cpus from one group and\n6 from another. In this case the domain based balancer will want to\nput an equal amount of tasks on each side even though they don\u0027t have\nequal cpus.\n\nCurrently group_imb is set whenever two cpus of a group have a weight\ndifference of at least one avg task and the heaviest cpu has at least\ntwo tasks. A group with imbalance set will always be picked as busiest\nand a balance pass will be forced.\n\nThe problem is that even if there are no affinity masks this stuff can\ntrigger and cause weird balancing decisions, eg. the observed\nbehaviour was that of 6 cpus, 5 had 2 and 1 had 3 tasks, due to the\ndifference of 1 avg load (they all had the same weight) and nr_running\nbeing \u003e1 the group_imbalance logic triggered and did the weird thing\nof pulling more load instead of trying to move the 1 excess task to\nthe other domain of 6 cpus that had 5 cpu with 2 tasks and 1 cpu with\n1 task.\n\nCurb the group_imbalance stuff by making the nr_running condition\nweaker by also tracking the min_nr_running and using the difference in\nnr_running over the set instead of the absolute max nr_running.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-9s7dedozxo8kjsb9kqlrukkf@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "556061b00c9f2fd6a5524b6bde823ef12f299ecf",
      "tree": "087891d70dbcd97cd23ac3eb92fad6a905c0f527",
      "parents": [
        "870a0bb5d636156502769233d02a0d5791d4366a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 11 17:31:26 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon May 14 15:05:27 2012 +0200"
      },
      "message": "sched/nohz: Fix rq-\u003ecpu_load[] calculations\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\n"
    },
    {
      "commit": "870a0bb5d636156502769233d02a0d5791d4366a",
      "tree": "c008809e111a3487af2c27f8c105200950f11671",
      "parents": [
        "04f733b4afac5dc93ae9b0a8703c60b87def491e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 11 00:26:27 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon May 14 15:05:26 2012 +0200"
      },
      "message": "sched/numa: Don\u0027t scale the imbalance\n\nIt\u0027s far too easy to get ridiculously large imbalance pct when you\nscale it like that. Use a fixed 125% for now.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-zsriaft1dv7hhboyrpvqjy6s@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "04f733b4afac5dc93ae9b0a8703c60b87def491e",
      "tree": "7ef166c4d1c1dffdc993efbf3791d0f745f5a80c",
      "parents": [
        "316ad248307fba13be40f01e92a22b89457c32bc"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 11 00:12:02 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon May 14 15:05:26 2012 +0200"
      },
      "message": "sched/fair: Revert sched-domain iteration breakage\n\nPatches c22402a2f (\"sched/fair: Let minimally loaded cpu balance the\ngroup\") and 0ce90475 (\"sched/fair: Add some serialization to the\nsched_domain load-balance walk\") are horribly broken so revert them.\n\nThe problem is that while it sounds good to have the minimally loaded\ncpu do the pulling of more load, the way we walk the domains there is\nabsolutely no guarantee this cpu will actually get to the domain. In\nfact its very likely it wont. Therefore the higher up the tree we get,\nthe less likely it is we\u0027ll balance at all.\n\nThe first of mask always walks up, while sucky in that it accumulates\nload on the first cpu and needs extra passes to spread it out at least\nguarantees a cpu gets up that far and load-balancing happens at all.\n\nSince its now always the first and idle cpus should always be able to\nbalance so they get a task as fast as possible we can also do away\nwith the added serialization.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-rpuhs5s56aiv1aw7khv9zkw6@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "dd7d8634e619b715a537402672d1383535ff4c54",
      "tree": "078f8c8c7a02dbee4d569569aa4759d9fcf1201a",
      "parents": [
        "cb83b629bae0327cf9f44f096adc38d150ceb913"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 11 00:56:20 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon May 14 15:05:25 2012 +0200"
      },
      "message": "sched/numa: Fix the new NUMA topology bits\n\nThere\u0027s no need to convert a node number to a node number by\npretending its a cpu number..\n\nReported-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nReported-and-Tested-by: Greg Pearson \u003cgreg.pearson@hp.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-0sqhrht34phowgclj12dgk8h@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "2d84e023cb5ec00403ff5d447533c6fd58fcc7ff",
      "tree": "cb10d9a568ebb4be8593821a6f205efedf2f4ddd",
      "parents": [
        "9ff00d58a915b6747ba2e843ab2d04c712b4dc32",
        "dc36be4419311fd57becdf54bfeef6bd04a6741d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon May 14 08:41:20 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon May 14 08:41:46 2012 +0200"
      },
      "message": "Merge branch \u0027rcu/next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/rcu\n\nPull the v3.5 RCU tree from Paul E. McKenney:\n\n 1)\tA set of improvements and fixes to the RCU_FAST_NO_HZ feature\n\t(with more on the way for 3.6).  Posted to LKML:\n\thttps://lkml.org/lkml/2012/4/23/324 (commits 1-3 and 5),\n\thttps://lkml.org/lkml/2012/4/16/611 (commit 4),\n\thttps://lkml.org/lkml/2012/4/30/390 (commit 6), and\n\thttps://lkml.org/lkml/2012/5/4/410 (commit 7, combined with\n\tthe other commits for the convenience of the tester).\n\n 2)\tChanges to make rcu_barrier() avoid disrupting execution of CPUs\n\tthat have no RCU callbacks.  Posted to LKML:\n\thttps://lkml.org/lkml/2012/4/23/322.\n\n 3)\tA couple of commits that improve the efficiency of the interaction\n\tbetween preemptible RCU and the scheduler, these two being all\n\tthat survived an abortive attempt to allow preemptible RCU\u0027s\n\t__rcu_read_lock() to be inlined.  The full set was posted to\n\tLKML at https://lkml.org/lkml/2012/4/14/143, and the first and\n\tthird patches of that set remain.\n\n 4)\tLai Jiangshan\u0027s algorithmic implementation of SRCU, which includes\n\tcall_srcu() and srcu_barrier().  A major feature of this new\n\timplementation is that synchronize_srcu() no longer disturbs\n\tthe execution of other CPUs.  This work is based on earlier\n\timplementations by Peter Zijlstra and Paul E. McKenney.  Posted to\n\tLKML: https://lkml.org/lkml/2012/2/22/82.\n\n 5)\tA number of miscellaneous bug fixes and improvements which were\n\tposted to LKML at: https://lkml.org/lkml/2012/4/23/353 with\n\tsubsequent updates posted to LKML.\n\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "cb04ff9ac424d0e689d9b612e9f73cb443ab4b7e",
      "tree": "7335f4ca82dc0366ffbf9dc8de5396259213435a",
      "parents": [
        "8b1e13638d465863572c8207a5cfceeef0cf0441"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue May 08 18:56:04 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 09 15:23:17 2012 +0200"
      },
      "message": "sched, perf: Use a single callback into the scheduler\n\nWe can easily use a single callback for both sched-in and sched-out. This\nreduces the code footprint in the scheduler path as well as removes\nthe PMU black spot otherwise present between the out and in callback.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-o56ajxp1edwqg6x9d31wb805@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "cb83b629bae0327cf9f44f096adc38d150ceb913",
      "tree": "13f7da07ee150a97c21aace57eaa817a30df9539",
      "parents": [
        "bd939f45da24e25e08a8f5c993c50b1afada0fef"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Apr 17 15:49:36 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 09 15:00:55 2012 +0200"
      },
      "message": "sched/numa: Rewrite the CONFIG_NUMA sched domain support\n\nThe current code groups up to 16 nodes in a level and then puts an\nALLNODES domain spanning the entire tree on top of that. This doesn\u0027t\nreflect the numa topology and esp for the smaller not-fully-connected\nmachines out there today this might make a difference.\n\nTherefore, build a proper numa topology based on node_distance().\n\nSince there\u0027s no fixed numa layers anymore, the static SD_NODE_INIT\nand SD_ALLNODES_INIT aren\u0027t usable anymore, the new code tries to\nconstruct something similar and scales some values either on the\nnumber of cpus in the domain and/or the node_distance() ratio.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Fenghua Yu \u003cfenghua.yu@intel.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: linux-alpha@vger.kernel.org\nCc: linux-ia64@vger.kernel.org\nCc: linux-kernel@vger.kernel.org\nCc: linux-mips@linux-mips.org\nCc: linuxppc-dev@lists.ozlabs.org\nCc: linux-sh@vger.kernel.org\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: sparclinux@vger.kernel.org\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: x86@kernel.org\nCc: Dimitri Sivanich \u003csivanich@sgi.com\u003e\nCc: Greg Pearson \u003cgreg.pearson@hp.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: bob.picco@oracle.com\nCc: chris.mason@oracle.com\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/n/tip-r74n3n8hhuc2ynbrnp3vt954@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "bd939f45da24e25e08a8f5c993c50b1afada0fef",
      "tree": "a103544f605e5e0e3f1c20a1fc9fffcaeba1a33c",
      "parents": [
        "0ce90475dcdbe90affc218e9688c8401e468e84d"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed May 02 14:20:37 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 09 15:00:54 2012 +0200"
      },
      "message": "sched/fair: Propagate \u0027struct lb_env\u0027 usage into find_busiest_group\n\nMore function argument passing reduction.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-v66ivjfqdiqdso01lqgqx6qf@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "0ce90475dcdbe90affc218e9688c8401e468e84d",
      "tree": "30771f6a6791af0214c5e7d57958f6395f3b97f5",
      "parents": [
        "c22402a2f76e88b04b7a8b6c0597ad9ba6fd71de"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Apr 25 00:30:36 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 09 15:00:53 2012 +0200"
      },
      "message": "sched/fair: Add some serialization to the sched_domain load-balance walk\n\nSince the sched_domain walk is completely unserialized (!SD_SERIALIZE)\nit is possible that multiple cpus in the group get elected to do the\nnext level. Avoid this by adding some serialization.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-vqh9ai6s0ewmeakjz80w4qz6@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "c22402a2f76e88b04b7a8b6c0597ad9ba6fd71de",
      "tree": "dba3b3dc85c1290310968ce78d36ccb9fd670366",
      "parents": [
        "c82513e513556a04f81aa511cd890acd23349c48"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Apr 20 16:57:22 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 09 15:00:51 2012 +0200"
      },
      "message": "sched/fair: Let minimally loaded cpu balance the group\n\nCurrently we let the leftmost (or first idle) cpu ascend the\nsched_domain tree and perform load-balancing. The result is that the\nbusiest cpu in the group might be performing this function and pull\nmore load to itself. The next load balance pass will then try to\nequalize this again.\n\nChange this to pick the least loaded cpu to perform higher domain\nbalancing.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-v8zlrmgmkne3bkcy9dej1fvm@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "c82513e513556a04f81aa511cd890acd23349c48",
      "tree": "dbccd379fffd75cd87513e4dd0e91ac597628382",
      "parents": [
        "ad7687dde8780a0d618a3e3b5a62bb383696fc22"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Apr 26 13:12:27 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed May 09 15:00:49 2012 +0200"
      },
      "message": "sched: Change rq-\u003enr_running to unsigned int\n\nSince there\u0027s a PID space limit of 30bits (see\nfutex.h:FUTEX_TID_MASK) and allocating that many tasks (assuming a\nlower bound of 2 pages per task) would still take 8T of memory it\nseems reasonable to say that unsigned int is sufficient for\nrq-\u003enr_running.\n\nWhen we do get anywhere near that amount of tasks I suspect other\nthings would go funny, load-balancer load computations would really\nneed to be hoisted to 128bit etc.\n\nSo save a few bytes and convert rq-\u003enr_running and friends to\nunsigned int.\n\nSuggested-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-y3tvyszjdmbibade5bw8zl81@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\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": "67ba5293f705eb1d1b98710e5ccb0f615936a6fc",
      "tree": "cdb4cfd94033b5c0f42eeb4de368802049880a12",
      "parents": [
        "86627c93b35082f7a0e4d3111546943984b932c7",
        "d909a81b198a397593495508c4a5755fe95552fb"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue May 08 14:07:48 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue May 08 14:07:48 2012 +0200"
      },
      "message": "Merge branch \u0027smp/threadalloc\u0027 into smp/hotplug\n\nReason: Pull in the separate branch which was created so arch/tile can\nbase further work on it.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "489a71b029cd94e3b0132795146e8be3a87bf3fa",
      "tree": "84054064a9dd96372f94257b2e7d809ed6fbc562",
      "parents": [
        "436281c9a110ff16c1fb396add5dd944ee92cf36"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Mon Apr 02 17:00:44 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon May 07 15:04:18 2012 +0200"
      },
      "message": "sched: Update documentation and comments\n\nChange sched_*.c to sched/*.c in documentation and comments.\n\nSigned-off-by: Hiroshi Shimamoto \u003ch-shimamoto@ct.jp.nec.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4F795CAC.9080206@ct.jp.nec.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "436281c9a110ff16c1fb396add5dd944ee92cf36",
      "tree": "afda86db9e89d41ca49a8311673b994a82d16d42",
      "parents": [
        "4cbb62148cd686c2d3618861deb15eeb83744405",
        "febb72a6e4cc6c8cffcc1ea649a3fb364f1ea432"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon May 07 15:03:39 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon May 07 15:03:42 2012 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into sched/core\n\nMerge reason: We were on a pretty old base, refresh before moving on.\n\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "a4a2eb490e38aaff61eafcb8cde6725ad1be22ab",
      "tree": "cc626df26302e96f3fc7247f3fe895d2eddb69f6",
      "parents": [
        "c6ae063aaf3786b9db7f19a90bf4ed8aaebb7f90"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu May 03 09:02:48 2012 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat May 05 13:00:21 2012 +0200"
      },
      "message": "init_task: Create generic init_task instance\n\nAll archs define init_task in the same way (except ia64, but there is\nno particular reason why ia64 cannot use the common version). Create a\ngeneric instance so all archs can be converted over.\n\nThe config switch is temporary and will be removed when all archs are\nconverted over.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Chen Liqin \u003cliqin.chen@sunplusct.com\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Guan Xuetao \u003cgxt@mprc.pku.edu.cn\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@gmail.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: James E.J. Bottomley \u003cjejb@parisc-linux.org\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: Jonas Bonn \u003cjonas@southpole.se\u003e\nCc: Mark Salter \u003cmsalter@redhat.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Michal Simek \u003cmonstr@monstr.eu\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Richard Kuo \u003crkuo@codeaurora.org\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nLink: http://lkml.kernel.org/r/20120503085034.092585287@linutronix.de\n"
    },
    {
      "commit": "9c806aa06f8e121c6058db8e8073798aa5c4355b",
      "tree": "d55fb9702aa80c4fb38f0da504b18a720e91f9bb",
      "parents": [
        "76b6db010297d4928ab7b7e7c78dd982f413f0a4"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Feb 02 18:54:02 2012 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu May 03 03:28:39 2012 -0700"
      },
      "message": "userns: Convert sched_set_affinity and sched_set_scheduler\u0027s permission checks\n\n- Compare kuids with uid_eq\n- kuid are uniuqe across all user namespaces so there is no longer the\n  need for a user_namespace comparison.\n\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "616c310e83b872024271c915c1b9ab505b9efad9",
      "tree": "1339bc7b3bef920b4641a5af2f182e9dfa2a6632",
      "parents": [
        "66f75a5d028beaf67c931435fdc3e7823125730c"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Tue Mar 27 16:02:08 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed May 02 14:43:23 2012 -0700"
      },
      "message": "rcu: Move PREEMPT_RCU preemption to switch_to() invocation\n\nCurrently, PREEMPT_RCU readers are enqueued upon entry to the scheduler.\nThis is inefficient because enqueuing is required only if there is a\ncontext switch, and entry to the scheduler does not guarantee a context\nswitch.\n\nThe commit therefore moves the enqueuing to immediately precede the\ncall to switch_to() from the scheduler.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nTested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\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"
    }
  ],
  "next": "eb95308ee2a69403909e111837b9068c64cfc349"
}
