)]}'
{
  "log": [
    {
      "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": "dc36be4419311fd57becdf54bfeef6bd04a6741d",
      "tree": "179d34f4e56861b66142dd6c39dac1af1e1e10d9",
      "parents": [
        "b1420f1c8bfc30ecf6380a31d0f686884834b599",
        "048a0e8f5e1d94c01a5fc70f5b2f2fd2f4527326",
        "9dd8fb16c36178df2066387d2abd44d8b4dca8c8",
        "9fab97876af844c2abb7c39300bff34025926565"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Fri May 11 10:14:09 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Fri May 11 10:14:21 2012 -0700"
      },
      "message": "Merge branches \u0027barrier.2012.05.09a\u0027, \u0027fixes.2012.04.26a\u0027, \u0027inline.2012.05.02b\u0027 and \u0027srcu.2012.05.07b\u0027 into HEAD\n\nbarrier:  Reduce the amount of disturbance by rcu_barrier() to the rest of\n    \tthe system.  This branch also includes improvements to\n    \tRCU_FAST_NO_HZ, which are included here due to conflicts.\nfixes:  Miscellaneous fixes.\ninline:  Remaining changes from an abortive attempt to inline\n    \tpreemptible RCU\u0027s __rcu_read_lock().  These are (1) making\n    \texit_rcu() avoid unnecessary work and (2) avoiding having\n    \tpreemptible RCU record a blocked thread when the scheduler\n    \tdeclines to do a context switch.\nsrcu:\tLai Jiangshan\u0027s algorithmic implementation of SRCU, including\n    \tcall_srcu().\n"
    },
    {
      "commit": "5e2bf0142231194d36fdc9596b36a261ed2b9fe7",
      "tree": "e5b411ddefaa96b29a73706f7fe407f238632573",
      "parents": [
        "4998a6c0edce7fae9c0a5463f6ec3fa585258ee7"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Thu May 10 13:01:45 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 10 15:06:44 2012 -0700"
      },
      "message": "namespaces, pid_ns: fix leakage on fork() failure\n\nFork() failure post namespace creation for a child cloned with\nCLONE_NEWPID leaks pid_namespace/mnt_cache due to proc being mounted\nduring creation, but not unmounted during cleanup.  Call\npid_ns_release_proc() during cleanup.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nAcked-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nReviewed-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Louis Rilling \u003clouis.rilling@kerlabs.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b7dafa0ef3145c31d7753be0a08b3cbda51f0209",
      "tree": "9beb3c3fcd8b5439ee24c0f3e1eb0c78e897fb2f",
      "parents": [
        "7ee94d97aafacf5a019b3578e0eae6daa2e2bcd5"
      ],
      "author": {
        "name": "Jan Kiszka",
        "email": "jan.kiszka@siemens.com",
        "time": "Thu May 10 10:04:36 2012 -0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 10 08:58:33 2012 -0700"
      },
      "message": "compat: Fix RT signal mask corruption via sigprocmask\n\ncompat_sys_sigprocmask reads a smaller signal mask from userspace than\nsigprogmask accepts for setting.  So the high word of blocked.sig[0]\nwill be cleared, releasing any potentially blocked RT signal.\n\nThis was discovered via userspace code that relies on get/setcontext.\nglibc\u0027s i386 versions of those functions use sigprogmask instead of\nrt_sigprogmask to save/restore signal mask and caused RT signal\nunblocking this way.\n\nAs suggested by Linus, this replaces the sys_sigprocmask based compat\nversion with one that open-codes the required logic, including the merge\nof the existing blocked set with the new one provided on SIG_SETMASK.\n\nSigned-off-by: Jan Kiszka \u003cjan.kiszka@siemens.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b1420f1c8bfc30ecf6380a31d0f686884834b599",
      "tree": "56eb378bcd64175a7302a1031b388ecf569a30bb",
      "parents": [
        "98248a0e24327bc64eb7518145c44bff7bebebc3"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Thu Mar 01 13:18:08 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed May 09 14:27:54 2012 -0700"
      },
      "message": "rcu: Make rcu_barrier() less disruptive\n\nThe rcu_barrier() primitive interrupts each and every CPU, registering\na callback on every CPU.  Once all of these callbacks have been invoked,\nrcu_barrier() knows that every callback that was registered before\nthe call to rcu_barrier() has also been invoked.\n\nHowever, there is no point in registering a callback on a CPU that\ncurrently has no callbacks, most especially if that CPU is in a\ndeep idle state.  This commit therefore makes rcu_barrier() avoid\ninterrupting CPUs that have no callbacks.  Doing this requires reworking\nthe handling of orphaned callbacks, otherwise callbacks could slip through\nrcu_barrier()\u0027s net by being orphaned from a CPU that rcu_barrier() had\nnot yet interrupted to a CPU that rcu_barrier() had already interrupted.\nThis reworking was needed anyway to take a first step towards weaning\nRCU from the CPU_DYING notifier\u0027s use of stop_cpu().\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "98248a0e24327bc64eb7518145c44bff7bebebc3",
      "tree": "5ec88465d949558e42e83fd8321c725614c00269",
      "parents": [
        "21e52e15666323078b8517a4312712579176b56f"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Thu May 03 15:38:10 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed May 09 14:26:57 2012 -0700"
      },
      "message": "rcu: Explicitly initialize RCU_FAST_NO_HZ per-CPU variables\n\nThe current initialization of the RCU_FAST_NO_HZ per-CPU variables makes\nneedless and fragile assumptions about the initial value of things like\nthe jiffies counter.  This commit therefore explicitly initializes all of\nthem that are better started with a non-zero value.  It also adds some\ncomments describing the per-CPU state variables.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "21e52e15666323078b8517a4312712579176b56f",
      "tree": "6e9e75c6e1400e0426a7c7985a3f986fea5a7782",
      "parents": [
        "f511fc624642f0bb8cf65aaa28979737514d4746"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Mon Apr 30 14:16:19 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed May 09 14:26:56 2012 -0700"
      },
      "message": "rcu: Make RCU_FAST_NO_HZ handle timer migration\n\nThe current RCU_FAST_NO_HZ assumes that timers do not migrate unless a\nCPU goes offline, in which case it assumes that the CPU will have to come\nout of dyntick-idle mode (cancelling the timer) in order to go offline.\nThis is important because when RCU_FAST_NO_HZ permits a CPU to enter\ndyntick-idle mode despite having RCU callbacks pending, it posts a timer\non that CPU to force a wakeup on that CPU.  This wakeup ensures that the\nCPU will eventually handle the end of the grace period, including invoking\nits RCU callbacks.\n\nHowever, Pascal Chapperon\u0027s test setup shows that the timer handler\nrcu_idle_gp_timer_func() really does get invoked in some cases.  This is\nproblematic because this can cause the CPU that entered dyntick-idle\nmode despite still having RCU callbacks pending to remain in\ndyntick-idle mode indefinitely, which means that its RCU callbacks might\nnever be invoked.  This situation can result in grace-period delays or\neven system hangs, which matches Pascal\u0027s observations of slow boot-up\nand shutdown (https://lkml.org/lkml/2012/4/5/142).  See also the bugzilla:\n\n\thttps://bugzilla.redhat.com/show_bug.cgi?id\u003d806548\n\nThis commit therefore causes the \"should never be invoked\" timer handler\nrcu_idle_gp_timer_func() to use smp_call_function_single() to wake up\nthe CPU for which the timer was intended, allowing that CPU to invoke\nits RCU callbacks in a timely manner.\n\nReported-by: Pascal Chapperon \u003cpascal.chapperon@wanadoo.fr\u003e\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "9dd8fb16c36178df2066387d2abd44d8b4dca8c8",
      "tree": "330ac5704044c12bcc94ec6bf96dbb27d1057f5d",
      "parents": [
        "616c310e83b872024271c915c1b9ab505b9efad9"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Fri Apr 13 12:54:22 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed May 02 14:48:27 2012 -0700"
      },
      "message": "rcu: Make exit_rcu() more precise and consolidate\n\nWhen running preemptible RCU, if a task exits in an RCU read-side\ncritical section having blocked within that same RCU read-side critical\nsection, the task must be removed from the list of tasks blocking a\ngrace period (perhaps the current grace period, perhaps the next grace\nperiod, depending on timing).  The exit() path invokes exit_rcu() to\ndo this cleanup.\n\nHowever, the current implementation of exit_rcu() needlessly does the\ncleanup even if the task did not block within the current RCU read-side\ncritical section, which wastes time and needlessly increases the size\nof the state space.  Fix this by only doing the cleanup if the current\ntask is actually on the list of tasks blocking some grace period.\n\nWhile we are at it, consolidate the two identical exit_rcu() functions\ninto a single function.\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\nConflicts:\n\n\tkernel/rcupdate.c\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": "f511fc624642f0bb8cf65aaa28979737514d4746",
      "tree": "db1395c5d33da33c8ea6c82f6e5b7346cc5beb91",
      "parents": [
        "79b9a75fb703b6a2670e46b9dc495af5bc7029b3"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Thu Mar 15 12:16:26 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue May 01 08:22:50 2012 -0700"
      },
      "message": "rcu: Ensure that RCU_FAST_NO_HZ timers expire on correct CPU\n\nTimers are subject to migration, which can lead to the following\nsystem-hang scenario when CONFIG_RCU_FAST_NO_HZ\u003dy:\n\n1.\tCPU 0 executes synchronize_rcu(), which posts an RCU callback.\n\n2.\tCPU 0 then goes idle.  It cannot immediately invoke the callback,\n\tbut there is nothing RCU needs from ti, so it enters dyntick-idle\n\tmode after posting a timer.\n\n3.\tThe timer gets migrated to CPU 1.\n\n4.\tCPU 0 never wakes up, so the synchronize_rcu() never returns, so\n\tthe system hangs.\n\nThis commit fixes this problem by using mod_timer_pinned(), as suggested\nby Peter Zijlstra, to ensure that the timer is actually posted on the\nrunning CPU.\n\nReported-by: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "9059c94017f748d9e20c3b089188a7abb27f6233",
      "tree": "f4f4397f732ce690602519da8594fc5ac306b252",
      "parents": [
        "931ea9d1a6e06a5e3af03aa4aaaa7c7fd90e163f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Mon Mar 19 16:12:14 2012 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Apr 30 10:48:26 2012 -0700"
      },
      "message": "rcu: Add rcutorture test for call_srcu()\n\nAdd srcu_torture_deferred_free() for srcu_ops so as to test the new\ncall_srcu().  Rename the original srcu_ops to srcu_sync_ops.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "931ea9d1a6e06a5e3af03aa4aaaa7c7fd90e163f",
      "tree": "d25495ccbf92d1ba720a945ac7fb4079b0434db4",
      "parents": [
        "d9792edd7a9a0858a3b1df92cf8beb31e4191e3c"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Mon Mar 19 16:12:13 2012 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Apr 30 10:48:25 2012 -0700"
      },
      "message": "rcu: Implement per-domain single-threaded call_srcu() state machine\n\nThis commit implements an SRCU state machine in support of call_srcu().\nThe state machine is preemptible, light-weight, and single-threaded,\nminimizing synchronization overhead.  In particular, there is no longer\nany need for synchronize_srcu() to be guarded by a mutex.\n\nExpedited processing is handled, at least in the absence of concurrent\ngrace-period operations on that same srcu_struct structure, by having\nthe synchronize_srcu_expedited() thread take on the role of the\nworkqueue thread for one iteration.\n\nThere is a reasonable probability that a given SRCU callback will\nbe invoked on the same CPU that registered it, however, there is no\nguarantee.  Concurrent SRCU grace-period primitives can cause callbacks\nto be executed elsewhere, even in absence of CPU-hotplug operations.\n\nCallbacks execute in process context, but under the influence of\nlocal_bh_disable(), so it is illegal to sleep in an SRCU callback\nfunction.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "d9792edd7a9a0858a3b1df92cf8beb31e4191e3c",
      "tree": "149aa8e7fe288094129c94d02db2e2b64c6ff53c",
      "parents": [
        "dc87917501e324701dbfb249def44054b5220187"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Mon Mar 19 16:12:12 2012 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Apr 30 10:48:24 2012 -0700"
      },
      "message": "rcu: Use single value to handle expedited SRCU grace periods\n\nThe earlier algorithm used an \"expedited\" flag combined with a \"trycount\"\ncounter to differentiate between normal and expedited SRCU grace periods.\nHowever, the difference can be encoded into a single counter with a cutoff\nvalue and different initial values for expedited and normal SRCU grace\nperiods.  This commit makes that change.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n\nConflicts:\n\n\tkernel/srcu.c\n"
    },
    {
      "commit": "dc87917501e324701dbfb249def44054b5220187",
      "tree": "e39ebf104875f11b8f6fd56e98366918bacc4dca",
      "parents": [
        "966f58c2f6df826f385706673a9bb1edcfd3499a"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Mar 06 17:57:34 2012 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Apr 30 10:48:24 2012 -0700"
      },
      "message": "rcu: Improve srcu_readers_active_idx()\u0027s cache locality\n\nExpand the calls to srcu_readers_active_idx() from srcu_readers_active()\ninline.  This change improves cache locality by interating over the CPUs\nonce rather than twice.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "b52ce066c55a6a53cf1f8d71308d74f908e31b99",
      "tree": "e814e4e175f2bd8e1c0795247f413d711c7350df",
      "parents": [
        "18108ebfebe9e871d0a9af830baf8f5df69eb5fc"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Mon Feb 27 09:29:09 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Apr 30 10:48:22 2012 -0700"
      },
      "message": "rcu: Implement a variant of Peter\u0027s SRCU algorithm\n\nThis commit implements a variant of Peter\u0027s algorithm, which may be found\nat https://lkml.org/lkml/2012/2/1/119.\n\no\tMake the checking lock-free to enable parallel checking.\n\tParallel checking is required when (1) the original checking\n\ttask is preempted for a long time, (2) sychronize_srcu_expedited()\n\tstarts during an ongoing SRCU grace period, or (3) we wish to\n\tavoid acquiring a lock.\n\no\tSince the checking is lock-free, we avoid a mutex in state machine\n\tfor call_srcu().\n\no\tRemove the SRCU_REF_MASK and remove the coupling with the flipping.\n\tThis might allow us to remove the preempt_disable() in future\n\tversions, though such removal will need great care because it\n\trescinds the one-old-reader-per-CPU guarantee.\n\no\tRemove a smp_mb(), simplify the comments and make the smp_mb() pairs\n\tmore intuitive.\n\nInspired-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "18108ebfebe9e871d0a9af830baf8f5df69eb5fc",
      "tree": "363127aced66530e6c6808a55462e10c3e8fedb8",
      "parents": [
        "944ce9af4767ca085d465e4add69df11a8faa9ef"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Mon Feb 27 09:28:10 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Apr 30 10:48:22 2012 -0700"
      },
      "message": "rcu: Improve SRCU\u0027s wait_idx() comments\n\nThe safety of SRCU is provided byy wait_idx() rather than flipping.\nThe flipping actually prevents starvation.\n\nThis commit therefore updates the comments to more accurately and\nprecisely describe what is going on.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "944ce9af4767ca085d465e4add69df11a8faa9ef",
      "tree": "2d2f695f15affe404efb1c0646e6d31ece677d62",
      "parents": [
        "440253c17fc4ed41d778492a7fb44dc0d756eccc"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Feb 22 16:43:55 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Apr 30 10:48:21 2012 -0700"
      },
      "message": "rcu: Flip -\u003ecompleted only once per SRCU grace period\n\nThis is an optimization of the SRCU grace period.  To guard against\npreempted readers with old values of the counter, it suffices to scan the\nold counters once more, then flip -\u003ecompleted only one time.  The reason\nthis works is that the old readers must have incremented the old set of\ncounters (if they have not yet incremented, then their critical section\nstarts after this grace period, so they may be safely ignored).\n\nThis commit therefore optimizes the second flip out in favor of a simple\nrescan.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "440253c17fc4ed41d778492a7fb44dc0d756eccc",
      "tree": "333cb87d73c154cdc82d2b08356a7337abec72e2",
      "parents": [
        "4b7a3e9e32114a09c61995048f055615b5d4c26d"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Feb 22 13:29:06 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Apr 30 10:48:20 2012 -0700"
      },
      "message": "rcu: Increment upper bit only for srcu_read_lock()\n\nThe purpose of the upper bit of SRCU\u0027s per-CPU counters is to guarantee\nthat no reasonable series of srcu_read_lock() and srcu_read_unlock()\noperations can return the value of the counter to its original value.\nThis guarantee is require only after the index has been switched to\nthe other set of counters, so at most one srcu_read_lock() can affect\na given CPU\u0027s counter.  The number of srcu_read_unlock() operations\non a given counter is limited to the number of tasks in the system,\nwhich given the Linux kernel\u0027s current structure is limited to far less\nthan 2^30 on 32-bit systems and far less than 2^62 on 64-bit systems.\n(Something about a limited number of bytes in the kernel\u0027s address space.)\n\nTherefore, if srcu_read_lock() increments the upper bits, then\nsrcu_read_unlock() need not do so.  In this case, an srcu_read_lock() and\nan srcu_read_unlock() will flip the lower bit of the upper field of the\ncounter.  An unreasonably large additional number of srcu_read_unlock()\noperations would be required to return the counter to its initial value,\nthus preserving the guarantee.\n\nThis commit takes this approach, which further allows it to shrink\nthe size of the upper field to one bit, making the number of\nsrcu_read_unlock() operations required to return the counter to its\ninitial value even more unreasonable than before.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "4b7a3e9e32114a09c61995048f055615b5d4c26d",
      "tree": "562ff1829abb99e830b5e3b3719834b059376b03",
      "parents": [
        "cef50120b61c2af4ce34bc165e19cad66296f93d"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Feb 22 13:06:51 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Apr 30 10:48:20 2012 -0700"
      },
      "message": "rcu: Remove fast check path from __synchronize_srcu()\n\nThe fastpath in __synchronize_srcu() is designed to handle cases where\nthere are a large number of concurrent calls for the same srcu_struct\nstructure.  However, the Linux kernel currently does not use SRCU in\nthis manner, so remove the fastpath checks for simplicity.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "cef50120b61c2af4ce34bc165e19cad66296f93d",
      "tree": "963a9473155bcf6a8aa12ce92ff842242c9c3575",
      "parents": [
        "fae4b54f28f034d228fa3bfc98858c698b64e89c"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Sun Feb 05 07:42:44 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Apr 30 10:48:19 2012 -0700"
      },
      "message": "rcu: Direct algorithmic SRCU implementation\n\nThe current implementation of synchronize_srcu_expedited() can cause\nsevere OS jitter due to its use of synchronize_sched(), which in turn\ninvokes try_stop_cpus(), which causes each CPU to be sent an IPI.\nThis can result in severe performance degradation for real-time workloads\nand especially for short-interation-length HPC workloads.  Furthermore,\nbecause only one instance of try_stop_cpus() can be making forward progress\nat a given time, only one instance of synchronize_srcu_expedited() can\nmake forward progress at a time, even if they are all operating on\ndistinct srcu_struct structures.\n\nThis commit, inspired by an earlier implementation by Peter Zijlstra\n(https://lkml.org/lkml/2012/1/31/211) and by further offline discussions,\ntakes a strictly algorithmic bits-in-memory approach.  This has the\ndisadvantage of requiring one explicit memory-barrier instruction in\neach of srcu_read_lock() and srcu_read_unlock(), but on the other hand\ncompletely dispenses with OS jitter and furthermore allows SRCU to be\nused freely by CPUs that RCU believes to be idle or offline.\n\nThe update-side implementation handles the single read-side memory\nbarrier by rechecking the per-CPU counters after summing them and\nby running through the update-side state machine twice.\n\nThis implementation has passed moderate rcutorture testing on both\nx86 and Power.  Also updated to use this_cpu_ptr() instead of per_cpu_ptr(),\nas suggested by Peter Zijlstra.\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nReviewed-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\n"
    },
    {
      "commit": "fae4b54f28f034d228fa3bfc98858c698b64e89c",
      "tree": "1259258956ba9d30eba6360083214e145ec19813",
      "parents": [
        "37e377d2823e03528cb64f435d7c0e30b1c668eb"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Mon Feb 20 17:51:45 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Apr 30 10:48:18 2012 -0700"
      },
      "message": "rcu: Introduce rcutorture testing for rcu_barrier()\n\nAlthough rcutorture does invoke rcu_barrier() and friends, it cannot\nreally be called a torture test given that it invokes them only once\nat the end of the test.  This commit therefore introduces heavy-duty\nrcutorture testing for rcu_barrier(), which may be carried out\nconcurrently with normal rcutorture testing.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "6cfdd02b886aac866098f33262d409565f101ce0",
      "tree": "178b5abf48eb98b9ef0a29d865d7214798ed8b57",
      "parents": [
        "64f371bc3107e69efce563a3d0f0e6880de0d537",
        "26e0f90fded422f309deb6169dfbccb204435698"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 29 15:00:44 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 29 15:00:44 2012 -0700"
      },
      "message": "Merge tag \u0027pm-for-3.4-rc5\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPull power management fixes from Rafael J. Wysocki:\n \"Fix for an issue causing hibernation to hang on systems with highmem\n  (that practically means i386) due to broken memory management (bug\n  introduced in 3.2, so -stable material) and PM documentation update\n  making the freezer documentation follow the code again after some\n  recent updates.\"\n\n* tag \u0027pm-for-3.4-rc5\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:\n  PM / Freezer / Docs: Update documentation about freezing of tasks\n  PM / Hibernate: fix the number of pages used for hibernate/thaw buffering\n"
    },
    {
      "commit": "78e97a478882fcdacb0d5d467cb840bc325b27da",
      "tree": "9f42453b6136861248be057354cdb834aded7145",
      "parents": [
        "c28c48516975af9cad219a52557333342e0ed319",
        "4d8cd7e780aab781e40ea3178bdbae089f5125a0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 27 19:40:56 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 27 19:40:56 2012 -0700"
      },
      "message": "Merge branch \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull RCU fix from Ingo Molnar.\n\n* \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  rcu: Permit call_rcu() from CPU_DYING notifiers\n"
    },
    {
      "commit": "daae677f56187e83ddc81cf8e45bbcc236e0e661",
      "tree": "ed4dbd2383c4096f6ef00f57fd4635f5b045a6b1",
      "parents": [
        "06fc5d3d248bdae213aed9efe3a262acf10acd94",
        "fb2cf2c660971bea0ad86a9a5c19ad39eab61344"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 27 19:37:00 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 27 19:37:00 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 OOPS when build_sched_domains() percpu allocation fails\n  sched: Fix more load-balancing fallout\n"
    },
    {
      "commit": "06fc5d3d248bdae213aed9efe3a262acf10acd94",
      "tree": "c2d9163a1f41760566586ebacac26ecd64dd22e9",
      "parents": [
        "f6072452c903f2e4dcbae1230f8fbcbf058bd71a",
        "724b6daa13e100067c30cfc4d1ad06629609dc4e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 27 19:35:50 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 27 19:35:50 2012 -0700"
      },
      "message": "Merge branch \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull perf fixes from Ingo Molnar.\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  perf: Fix perf_event_for_each() to use sibling\n  perf symbols: Read plt symbols from proper symtab_type binary\n  tracing: Fix stacktrace of latency tracers (irqsoff and friends)\n  perf tools: Add \u0027G\u0027 and \u0027H\u0027 modifiers to event parsing\n  tracing: Fix regression with tracing_on\n  perf tools: Drop CROSS_COMPILE from flex and bison calls\n  perf report: Fix crash showing warning related to kernel maps\n  tracing: Fix build breakage without CONFIG_PERF_EVENTS (again)\n"
    },
    {
      "commit": "f6072452c903f2e4dcbae1230f8fbcbf058bd71a",
      "tree": "7f33a247279beb624ddca9df3d10822104048e13",
      "parents": [
        "d7e69bc73c423723c30b5cd3d4b1d72c06ed22e6",
        "8e12a038f88e819c878e5697ff681cb08bcebb08"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 27 19:32:37 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 27 19:32:37 2012 -0700"
      },
      "message": "Merge branch \u0027for-v3.4-rc5\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\nPull build fixes for less mainstream architectures from Paul Gortmaker:\n \"These are fixes for frv(1), blackfin(2), powerpc(1) and xtensa(4).\n\n  Fortunately the touches are nearly all specific to files just used by\n  the arch in question.  The two touches to shared/common files\n  [kernel/irq/debug.h and drivers/pci/Makefile] are trivial to assess as\n  no risk to anyone.\n\n  Half of them relate to xtensa directly.  It was only when I fixed the\n  last xtensa issue that I realized that the arch has been broken for a\n  significant time, and isn\u0027t a specific v3.4 regression.  So if you\n  wanted, we could leave xtensa lying bleeding in the street for a\n  couple more weeks and queue those for 3.5.  But given they are no risk\n  to anyone outside of xtensa, I figured to just leave them in.\n\n  If you are OK with taking the xtensa fixes, then please pull to get:\n\n   - one last implicit include uncovered by system.h that is in a file\n     specific to just one powerpc defconfig.  (I\u0027d sync\u0027d with BenH).\n\n   - fix an oversight in the PCI makefile where shared code wasn\u0027t being\n     compiled for ARCH\u003dfrv\n\n   - fix a missing include for GPIO in blackfin framebuffer.\n\n   - audit and tag endif in blackfin ezkit board file, in order to find\n     and fix the misplaced endif masking a block of code.\n\n   - fix irq/debug.h choice of temporary macro names to be more internal\n     so they don\u0027t conflict with names used by xtensa.\n\n   - fix a reference to an undeclared local var in xtensa\u0027s signal.c\n\n   - fix an implicit bug.h usage in xtensa\u0027s asm/io.h uncovered by my\n     removing bug.h from kernel.h\n\n   - fix xtensa to properly indicate it is using asm-generic/hardirq.h\n     in order to resolve the link error - undefined ack_bad_irq\n\n  The xtensa still fails final link as my latest binutils does something\n  evil when ld forward-relocates unlikely() blocks, but in theory people\n  who have older/valid toolchains could now use the thing.\"\n\n* \u0027for-v3.4-rc5\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:\n  xtensa: fix build fail on undefined ack_bad_irq\n  blackfin: fix ifdef fustercluck in mach-bf538/boards/ezkit.c\n  blackfin: fix compile error in bfin-lq035q1-fb.c\n  pci: frv architecture needs generic setup-bus infrastructure\n  irq: hide debug macros so they don\u0027t collide with others.\n  xtensa: fix build error in xtensa/include/asm/io.h\n  xtensa: fix build failure in xtensa/kernel/signal.c\n  powerpc: fix system.h fallout in sysdev/scom.c [chroma_defconfig]\n"
    },
    {
      "commit": "048a0e8f5e1d94c01a5fc70f5b2f2fd2f4527326",
      "tree": "3168a6b6b26942cc39113c434ae10f3f960b88d3",
      "parents": [
        "6d8133919bac4270883b24328500875a49e71b36"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Thu Apr 26 10:52:27 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Apr 26 12:28:03 2012 -0700"
      },
      "message": "timer: Fix mod_timer_pinned() header comment\n\nThe mod_timer_pinned() header comment states that it prevents timers\nfrom being migrated to a different CPU.  This is not the case, instead,\nit ensures that the timer is posted to the current CPU, but does nothing\nto prevent CPU-hotplug operations from migrating the timer.\n\nThis commit therefore brings the comment header into alignment with\nreality.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "79b9a75fb703b6a2670e46b9dc495af5bc7029b3",
      "tree": "30d7d74e4af8af8c8d8b7cb00cf54b292d12c68e",
      "parents": [
        "c57afe80db4e169135eb675acc2d241e26cc064e"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Mon Apr 23 10:06:39 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Apr 26 08:49:05 2012 -0700"
      },
      "message": "rcu: Add warning for RCU_FAST_NO_HZ timer firing\n\nRCU_FAST_NO_HZ uses a timer to limit the time that a CPU with callbacks\ncan remain in dyntick-idle mode.  This timer is cancelled when the CPU\nexits idle, and therefore should never fire.  However, if the timer\nwere migrated to some other CPU for whatever reason (1) the timer could\nactually fire and (2) firing on some other CPU would fail to wake up the\nCPU with callbacks, possibly resulting in sluggishness or a system hang.\n\nThis commit therfore adds a WARN_ON_ONCE() to the timer handler in order\nto detect this condition.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "724b6daa13e100067c30cfc4d1ad06629609dc4e",
      "tree": "290b86e3c259922c350ea6469f43ddb953a83aa3",
      "parents": [
        "c716ef56f1319e8a515cb1947a3ec59b06e94a5e"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Wed Apr 11 11:54:13 2012 +1000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Apr 26 13:51:31 2012 +0200"
      },
      "message": "perf: Fix perf_event_for_each() to use sibling\n\nIn perf_event_for_each() we call a function on an event, and then\niterate over the siblings of the event.\n\nHowever we don\u0027t call the function on the siblings, we call it\nrepeatedly on the original event - it seems \"obvious\" that we should\nbe calling it with sibling as the argument.\n\nIt looks like this broke in commit 75f937f24bd9 (\"Fix ctx-\u003emutex\nvs counter-\u003emutex inversion\").\n\nThe only effect of the bug is that the PERF_IOC_FLAG_GROUP parameter\nto the ioctls doesn\u0027t work.\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1334109253-31329-1-git-send-email-michael@ellerman.id.au\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.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"
    },
    {
      "commit": "eb95308ee2a69403909e111837b9068c64cfc349",
      "tree": "92e9a3368e75b94486dc54f2688453fed17d4eed",
      "parents": [
        "2300fd67b4f29eec19addb15a8571837228f63fc"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Apr 17 13:38:40 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Apr 26 12:54:52 2012 +0200"
      },
      "message": "sched: Fix more load-balancing fallout\n\nCommits 367456c756a6 (\"sched: Ditch per cgroup task lists for\nload-balancing\") and 5d6523ebd (\"sched: Fix load-balance wreckage\")\nleft some more wreckage.\n\nBy setting loop_max unconditionally to -\u003enr_running load-balancing\ncould take a lot of time on very long runqueues (hackbench!). So keep\nthe sysctl as max limit of the amount of tasks we\u0027ll iterate.\n\nFurthermore, the min load filter for migration completely fails with\ncgroups since inequality in per-cpu state can easily lead to such\nsmall loads :/\n\nFurthermore the change to add new tasks to the tail of the queue\ninstead of the head seems to have some effect.. not quite sure I\nunderstand why.\n\nCombined these fixes solve the huge hackbench regression reported by\nTim when hackbench is ran in a cgroup.\n\nReported-by: Tim Chen \u003ctim.c.chen@linux.intel.com\u003e\nAcked-by: Tim Chen \u003ctim.c.chen@linux.intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/1335365763.28150.267.camel@twins\n[ got rid of the CONFIG_PREEMPT tuning and made small readability edits ]\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "c716ef56f1319e8a515cb1947a3ec59b06e94a5e",
      "tree": "4434fc69dfbc9e8f4ddb1844cb460c45fbacf53a",
      "parents": [
        "b64909af1c1a441b31e8ffe812557a37103dd2d8",
        "db4c75cbebd7e5910cd3bcb6790272fcc3042857"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Apr 25 12:33:24 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Apr 25 12:33:24 2012 +0200"
      },
      "message": "Merge branch \u0027tip/perf/urgent-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace into perf/urgent\n"
    },
    {
      "commit": "4d8cd7e780aab781e40ea3178bdbae089f5125a0",
      "tree": "8c9722455b869c7c212955c25199c07dcf8d90ac",
      "parents": [
        "e816b57a337ea3b755de72bec38c10c864f23015",
        "92c38702e98e58438c3760ebb279c40bbca8bd5f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Apr 25 09:42:49 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Apr 25 09:42:49 2012 +0200"
      },
      "message": "Merge branch \u0027rcu/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/urgent\n"
    },
    {
      "commit": "37e377d2823e03528cb64f435d7c0e30b1c668eb",
      "tree": "4cad4e769f6e244886649001a91de85a3a2c80ce",
      "parents": [
        "66f75a5d028beaf67c931435fdc3e7823125730c"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Fri Feb 17 22:12:18 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Apr 24 20:55:39 2012 -0700"
      },
      "message": "rcu: Fixes to rcutorture error handling and cleanup\n\nThe rcutorture initialization code ignored the error returns from\nrcu_torture_onoff_init() and rcu_torture_stall_init().  The rcutorture\ncleanup code failed to NULL out a number of pointers.  These bugs will\nnormally have no effect, but this commit fixes them nevertheless.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "c57afe80db4e169135eb675acc2d241e26cc064e",
      "tree": "ec011600725a2884efdca6f4c187ea7e3fa4d277",
      "parents": [
        "2ee3dc80660ac8285a37e662fd91b2e45c46f06a"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Tue Feb 28 11:02:21 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Apr 24 20:55:20 2012 -0700"
      },
      "message": "rcu: Make RCU_FAST_NO_HZ account for pauses out of idle\n\nBoth Steven Rostedt\u0027s new idle-capable trace macros and the RCU_NONIDLE()\nmacro can cause RCU to momentarily pause out of idle without the rest\nof the system being involved.  This can cause rcu_prepare_for_idle()\nto run through its state machine too quickly, which can in turn result\nin needless scheduling-clock interrupts.\n\nThis commit therefore adds code to enable rcu_prepare_for_idle() to\ndistinguish between an initial entry to idle on the one hand (which needs\nto advance the rcu_prepare_for_idle() state machine) and an idle reentry\ndue to idle-capable trace macros and RCU_NONIDLE() on the other hand\n(which should avoid advancing the rcu_prepare_for_idle() state machine).\nAdditional state is maintained to allow the timer to be correctly reposted\nwhen returning after a momentary pause out of idle, and even more state\nis maintained to detect when new non-lazy callbacks have been enqueued\n(which may require re-evaluation of the approach to idleness).\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "2ee3dc80660ac8285a37e662fd91b2e45c46f06a",
      "tree": "d6fcd186eabf672b7bc54bd2f04f1f7956f8afe1",
      "parents": [
        "2fdbb31b662787f78bb78b3e4e18f1a072058ffc"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Thu Feb 23 17:13:19 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Apr 24 20:55:19 2012 -0700"
      },
      "message": "rcu: Make RCU_FAST_NO_HZ use timer rather than hrtimer\n\nThe RCU_FAST_NO_HZ facility uses an hrtimer to wake up a CPU when\nit is allowed to go into dyntick-idle mode, which is almost always\ncancelled soon after.  This is not what hrtimers are good at, so\nthis commit switches to the timer wheel.\n\nReported-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "2fdbb31b662787f78bb78b3e4e18f1a072058ffc",
      "tree": "c8dbe70ab53102acf7f802eb50c5262c82cd45aa",
      "parents": [
        "66f75a5d028beaf67c931435fdc3e7823125730c"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Thu Feb 23 15:58:29 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Apr 24 20:55:19 2012 -0700"
      },
      "message": "rcu: Add RCU_FAST_NO_HZ tracing for idle exit\n\nTraces of rcu_prep_idle events can be confusing because\nrcu_cleanup_after_idle() does no tracing.  This commit therefore adds\nthis tracing.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "6d8133919bac4270883b24328500875a49e71b36",
      "tree": "eae66c4640e429446ef254e468fafb9ceadb142b",
      "parents": [
        "dabb8aa96020bde8359bc73e76c484dd7ff9b7f2"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Thu Feb 23 13:30:16 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Apr 24 20:54:53 2012 -0700"
      },
      "message": "rcu: Document why rcu_blocking_is_gp() is safe\n\nThe rcu_blocking_is_gp() function tests to see if there is only one\nonline CPU, and if so, synchronize_sched() and friends become no-ops.\nHowever, for larger systems, num_online_cpus() scans a large vector,\nand might be preempted while doing so.  While preempted, any number\nof CPUs might come online and go offline, potentially resulting in\nnum_online_cpus() returning 1 when there never had only been one\nCPU online.  This could result in a too-short RCU grace period, which\ncould in turn result in total failure, except that the only way that\nthe grace period is too short is if there is an RCU read-side critical\nsection spanning it.  For RCU-sched and RCU-bh (which are the only\ncases using rcu_blocking_is_gp()), RCU read-side critical sections\nhave either preemption or bh disabled, which prevents CPUs from going\noffline.  This in turn prevents actual failures from occurring.\n\nThis commit therefore adds a large block comment to rcu_blocking_is_gp()\ndocumenting why it is safe.  This commit also moves rcu_blocking_is_gp()\ninto kernel/rcutree.c, which should help prevent unwary developers from\nmistaking it for a generally useful function.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "8932a63d5edb02f714d50c26583152fe0a97a69c",
      "tree": "ec71159908f1a78eb21e736d284ffe7ed7584b6c",
      "parents": [
        "d8169d4c369e8aa2fda10df705a4957331b5a4db"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Apr 19 12:20:14 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Apr 24 20:54:52 2012 -0700"
      },
      "message": "rcu: Reduce cache-miss initialization latencies for large systems\n\nCommit #0209f649 (rcu: limit rcu_node leaf-level fanout) set an upper\nlimit of 16 on the leaf-level fanout for the rcu_node tree.  This was\nneeded to reduce lock contention that was induced by the synchronization\nof scheduling-clock interrupts, which was in turn needed to improve\nenergy efficiency for moderate-sized lightly loaded servers.\n\nHowever, reducing the leaf-level fanout means that there are more\nleaf-level rcu_node structures in the tree, which in turn means that\nRCU\u0027s grace-period initialization incurs more cache misses.  This is\nnot a problem on moderate-sized servers with only a few tens of CPUs,\nbut becomes a major source of real-time latency spikes on systems with\nmany hundreds of CPUs.  In addition, the workloads running on these large\nsystems tend to be CPU-bound, which eliminates the energy-efficiency\nadvantages of synchronizing scheduling-clock interrupts.  Therefore,\nthese systems need maximal values for the rcu_node leaf-level fanout.\n\nThis commit addresses this problem by introducing a new kernel parameter\nnamed RCU_FANOUT_LEAF that directly controls the leaf-level fanout.\nThis parameter defaults to 16 to handle the common case of a moderate\nsized lightly loaded servers, but may be set higher on larger systems.\n\nReported-by: Mike Galbraith \u003cefault@gmx.de\u003e\nReported-by: Dimitri Sivanich \u003csivanich@sgi.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "f8262d476823a7ea1eb497ff9676d1eab2393c75",
      "tree": "dfe76c8ef2b3fc700d9550b85b69e414ef415de6",
      "parents": [
        "66f75a5d028beaf67c931435fdc3e7823125730c"
      ],
      "author": {
        "name": "Bojan Smojver",
        "email": "bojan@rexursive.com",
        "time": "Tue Apr 24 23:53:28 2012 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Apr 24 23:53:28 2012 +0200"
      },
      "message": "PM / Hibernate: fix the number of pages used for hibernate/thaw buffering\n\nHibernation regression fix, since 3.2.\n\nCalculate the number of required free pages based on non-high memory\npages only, because that is where the buffers will come from.\n\nCommit 081a9d043c983f161b78fdc4671324d1342b86bc introduced a new buffer\npage allocation logic during hibernation, in order to improve the\nperformance. The amount of pages allocated was calculated based on total\namount of pages available, although only non-high memory pages are\nusable for this purpose. This caused hibernation code to attempt to over\nallocate pages on platforms that have high memory, which led to hangs.\n\nSigned-off-by: Bojan Smojver \u003cbojan@rexursive.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@suse.de\u003e\n"
    },
    {
      "commit": "9f3045eca89a2e6fdd1901aafb9e28231d3f31fb",
      "tree": "f6d4e6acd6c2b252dfa7695446f3dba081f710a7",
      "parents": [
        "bfae8ee8d28e6a4ac1d63e8077cb09928d8a557a"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Wed Apr 18 16:29:57 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Apr 23 12:30:03 2012 -0400"
      },
      "message": "irq: hide debug macros so they don\u0027t collide with others.\n\nThe file kernel/irq/debug.h temporarily defines P, PS, PD\nand then undefines them.  However these names aren\u0027t really\n\"internal\" enough, and collide with other more legit users\nsuch as the ones in the xtensa arch, causing:\n\nIn file included from kernel/irq/internals.h:58:0,\n                 from kernel/irq/irqdesc.c:18:\nkernel/irq/debug.h:8:0: warning: \"PS\" redefined [enabled by default]\narch/xtensa/include/asm/regs.h:59:0: note: this is the location of the previous definition\n\nAdd a handful of underscores to do a better job of hiding these\ntemporary macros.\n\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "db4c75cbebd7e5910cd3bcb6790272fcc3042857",
      "tree": "068514135f1bfd68c6add551ec94545010ca5a73",
      "parents": [
        "348f0fc238efb441a28e7644c51f9fd3001b228a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Apr 19 10:31:47 2012 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Apr 19 17:00:13 2012 -0400"
      },
      "message": "tracing: Fix stacktrace of latency tracers (irqsoff and friends)\n\nWhile debugging a latency with someone on IRC (mirage335) on #linux-rt (OFTC),\nwe discovered that the stacktrace output of the latency tracers\n(preemptirqsoff) was empty.\n\nThis bug was caused by the creation of the dynamic length stack trace\nagain (like commit 12b5da3 \"tracing: Fix ent_size in trace output\" was).\n\nThis bug is caused by the latency tracers requiring the next event\nto determine the time between the current event and the next. But by\ngrabbing the next event, the iter-\u003eent_size is set to the next event\ninstead of the current one. As the stacktrace event is the last event,\nthis makes the ent_size zero and causes nothing to be printed for\nthe stack trace. The dynamic stacktrace uses the ent_size to determine\nhow much of the stack can be printed. The ent_size of zero means\nno stack.\n\nThe simple fix is to save the iter-\u003eent_size before finding the next event.\n\nNote, mirage335 asked to remain anonymous from LKML and git, so I will\nnot add the Reported-by and Tested-by tags, even though he did report\nthe issue and tested the fix.\n\nCc: stable@vger.kernel.org # 3.1+\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a6371f80230eaaafd7eef7efeedaa9509bdc982d",
      "tree": "bb2d800c95cde553e126c28cb58133189b015a47",
      "parents": [
        "b9a6a23566960d0dd3f51e2e68b472cd61911078"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Wed Apr 18 19:27:39 2012 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Apr 19 21:27:50 2012 +0200"
      },
      "message": "tick: Fix the spurious broadcast timer ticks after resume\n\nDuring resume, tick_resume_broadcast() programs the broadcast timer in\noneshot mode unconditionally. On the platforms where broadcast timer\nis not really required, this will generate spurious broadcast timer\nticks upon resume. For example, on the always running apic timer\nplatforms with HPET, I see spurious hpet tick once every ~5minutes\n(which is the 32-bit hpet counter wraparound time).\n\nSimilar to boot time, during resume make the oneshot mode setting of\nthe broadcast clock event device conditional on the state of active\nbroadcast users.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nTested-by: Santosh Shilimkar \u003csantosh.shilimkar@ti.com\u003e\nTested-by: svenjoac@gmx.de\nCc: torvalds@linux-foundation.org\nCc: rjw@sisk.pl\nLink: http://lkml.kernel.org/r/1334802459.28674.209.camel@sbsiddha-desk.sc.intel.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "b9a6a23566960d0dd3f51e2e68b472cd61911078",
      "tree": "d9da5fb202a21b9036e961a5f4d3190e57343a6c",
      "parents": [
        "b435092f70ec5ebbfb6d075d5bf3c631b49a51de"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Apr 18 17:31:58 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Apr 19 21:27:35 2012 +0200"
      },
      "message": "tick: Ensure that the broadcast device is initialized\n\nSantosh found another trap when we avoid to initialize the broadcast\ndevice in the switch_to_oneshot code. The broadcast device might be\nstill in SHUTDOWN state when we actually need to use it. That\nobviously breaks, as set_next_event() is called on a shutdown\ndevice. This did not break on x86, but Suresh analyzed it:\n\nFrom the review, most likely on Sven\u0027s system we are force enabling\nthe hpet using the pci quirk\u0027s method very late. And in this case,\nhpet_clockevent (which will be global_clock_event) handler can be\nnull, specifically as this platform might not be using deeper c-states\nand using the reliable APIC timer.\n\nPrior to commit \u0027fa4da365bc7772c\u0027, that handler will be set to\n\u0027tick_handle_oneshot_broadcast\u0027 when we switch the broadcast timer to\noneshot mode, even though we don\u0027t use it. Post commit\n\u0027fa4da365bc7772c\u0027, we stopped switching the broadcast mode to oneshot\nas this is not really needed and his platform\u0027s global_clock_event\u0027s\nhandler will remain null. While on my SNB laptop, same is set to\n\u0027clockevents_handle_noop\u0027 because hpet gets enabled very early. (noop\nhandler on my platform set when the early enabled hpet timer gets\nreplaced by the lapic timer).\n\nBut the commit \u0027fa4da365bc7772c\u0027 tracked the broadcast timer mode in\nthe SW as oneshot, even though it didn\u0027t touch the HW timer. During\nresume however, tick_resume_broadcast() saw the SW broadcast mode as\noneshot and actually programmed the broadcast device also into oneshot\nmode. So this triggered the null pointer de-reference after the hpet\nwraps around and depending on what the hpet counter is set to. On the\nnormal platforms where hpet gets enabled early we should be seeing a\nspurious interrupt (in my SNB laptop I see one spurious interrupt\nafter around 5 minutes ;) which is 32-bit hpet counter wraparound\ntime), but that\u0027s a separate issue.\n\nEnforce the mode setting when trying to set an event.\n\nReported-and-tested-by: Santosh Shilimkar \u003csantosh.shilimkar@ti.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: torvalds@linux-foundation.org\nCc: svenjoac@gmx.de\nCc: rjw@sisk.pl\nLink: http://lkml.kernel.org/r/alpine.LFD.2.02.1204181723350.2542@ionos\n\n"
    },
    {
      "commit": "b435092f70ec5ebbfb6d075d5bf3c631b49a51de",
      "tree": "c9cfd15c405dd218003fd84585196b5bffcc9bbd",
      "parents": [
        "592fe8980688e7cba46897685d014c7fb3018a67"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Apr 18 12:08:23 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Apr 18 14:00:56 2012 +0200"
      },
      "message": "tick: Fix oneshot broadcast setup really\n\nSven Joachim reported, that suspend/resume on rc3 trips over a NULL\npointer dereference. Linus spotted the clockevent handler being NULL.\n\ncommit fa4da365b(clockevents: tTack broadcast device mode change in\ntick_broadcast_switch_to_oneshot()) tried to fix a problem with the\nbroadcast device setup, which was introduced in commit 77b0d60c5(\nclockevents: Leave the broadcast device in shutdown mode when not\nneeded).\n\nThe initial commit avoided to set up the broadcast device when no\nbroadcast request bits were set, but that left the broadcast device\ndisfunctional. In consequence deep idle states which need the\nbroadcast device were not woken up.\n\ncommit fa4da365b tried to fix that by initializing the state of the\nbroadcast facility, but that missed the fact, that nothing initializes\nthe event handler and some other state of the underlying clock event\ndevice.\n\nThe fix is to revert both commits and make only the mode setting of\nthe clock event device conditional on the state of active broadcast\nusers. \n\nThat initializes everything except the low level device mode, but this\nhappens when the broadcast functionality is invoked by deep idle.\n\nReported-and-tested-by: Sven Joachim \u003csvenjoac@gmx.de\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nLink: http://lkml.kernel.org/r/alpine.LFD.2.02.1204181205540.2542@ionos\n\n"
    },
    {
      "commit": "92c38702e98e58438c3760ebb279c40bbca8bd5f",
      "tree": "775d0078f46b6d9f2fc4d4be83b80e8376a707ba",
      "parents": [
        "0034102808e0dbbf3a2394b82b1bb40b5778de9e"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Mon Apr 16 12:12:09 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Apr 17 07:30:54 2012 -0700"
      },
      "message": "rcu: Permit call_rcu() from CPU_DYING notifiers\n\nAs of:\n\n  29494be71afe (\"rcu,cleanup: simplify the code when cpu is dying\")\n\nRCU adopts callbacks from the dying CPU in its CPU_DYING notifier,\nwhich means that any callbacks posted by later CPU_DYING notifiers\nare ignored until the CPU comes back online.\n\nA WARN_ON_ONCE() was added to __call_rcu() by:\n\n  e56014000816 (\"rcu: Simplify offline processing\")\n\nto check for this condition.  Although this condition did not trigger\n(at least as far as I know) during -next testing, it did recently\ntrigger in mainline:\n\n  https://lkml.org/lkml/2012/4/2/34\n\nWhat is needed longer term is for RCU\u0027s CPU_DEAD notifier to adopt any\ncallbacks that were posted by CPU_DYING notifiers, however, the Linux\nkernel has been running with this sort of thing happening for quite\nsome time.  So the only thing that qualifies as a regression is the\nWARN_ON_ONCE(), which this commit removes.\n\nMaking RCU\u0027s CPU_DEAD notifier adopt callbacks posted by CPU_DYING\nnotifiers is a topic for the 3.5 release of the Linux kernel.\n\nReported-by: Sergey Senozhatsky \u003csergey.senozhatsky@gmail.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "348f0fc238efb441a28e7644c51f9fd3001b228a",
      "tree": "780fa93c72777045a986f0ce648efc2bf8e35999",
      "parents": [
        "6e48b550d1f5f1919e6500547ae14a73fbf66c7b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Apr 16 15:41:28 2012 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Apr 16 15:41:28 2012 -0400"
      },
      "message": "tracing: Fix regression with tracing_on\n\nThe change to make tracing_on affect only the ftrace ring buffer, caused\na bug where it wont affect any ring buffer. The problem was that the buffer\nof the trace_array was passed to the write function and not the trace array\nitself.\n\nThe trace_array can change the buffer when running a latency tracer. If this\nhappens, then the buffer being disabled may not be the buffer currently used\nby ftrace. This will cause the tracing_on file to become useless.\n\nThe simple fix is to pass the trace_array to the write function instead of\nthe buffer. Then the actual buffer may be changed.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "668ce0ac707719d866af7e432e518af7b4c575ad",
      "tree": "56981174aa46721ef0b4d3710f990153e22dda3a",
      "parents": [
        "a1c0cad352520206305b1a3c2658097721454855",
        "ef1f0982540e5f79c8bbf3675bbc0a9734dba3fc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 13 19:44:36 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 13 19:44:36 2012 -0700"
      },
      "message": "Merge branch \u0027systemh-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\nPull system.h fixups for less common arch\u0027s from Paul Gortmaker:\n \"Here is what is hopefully the last of the system.h related fixups.\n\n  The fixes for Alpha and ia64 are code relocations consistent with what\n  was done for the more mainstream architectures.  Note that the\n  diffstat lines removed vs lines added are not the same since I\u0027ve\n  fixed some of the whitespace issues in the relocated code blocks.\n  However they are functionally the same.  Compile tested locally, plus\n  these two have been in linux-next for a while.\n\n  There is also a trivial one line system.h related fix for the Tilera\n  arch from Chris Metcalf to fix an implict include..\"\n\n* \u0027systemh-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:\n  irq_work: fix compile failure on tile from missing include\n  ia64: populate the cmpxchg header with appropriate code\n  alpha: fix build failures from system.h dismemberment\n"
    },
    {
      "commit": "6e48b550d1f5f1919e6500547ae14a73fbf66c7b",
      "tree": "983a2a06bc7aaddfc05f2d8c33309c3c21d30dea",
      "parents": [
        "a7ca08038b990e2cbed324948664b2d8940fd782"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Apr 13 09:52:59 2012 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 13 21:37:04 2012 -0400"
      },
      "message": "tracing: Fix build breakage without CONFIG_PERF_EVENTS (again)\n\nToday\u0027s -next fails to link for me:\n\nkernel/built-in.o:(.data+0x178e50): undefined reference to `perf_ftrace_event_register\u0027\n\nIt looks like multiple fixes have been merged for the issue fixed by\ncommit fa73dc9 (tracing: Fix build breakage without CONFIG_PERF_EVENTS)\nthough I can\u0027t identify the other changes that have gone in at the\nminute, it\u0027s possible that the changes which caused the breakage fixed\nby the previous commit got dropped but the fix made it in.\n\nLink: http://lkml.kernel.org/r/1334307179-21255-1-git-send-email-broonie@opensource.wolfsonmicro.com\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ef1f0982540e5f79c8bbf3675bbc0a9734dba3fc",
      "tree": "7865706f7112dbb5c195c41695bbfdcf9e5471ee",
      "parents": [
        "85f8f7759e418c814ee2ceacf73eddb9bed39492"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Apr 11 12:21:39 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Fri Apr 13 13:15:16 2012 -0400"
      },
      "message": "irq_work: fix compile failure on tile from missing include\n\nBuilding with IRQ_WORK configured results in\n\nkernel/irq_work.c: In function ‘irq_work_run’:\nkernel/irq_work.c:110: error: implicit declaration of function ‘irqs_disabled’\n\nThe appropriate header just needs to be included.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "b3dfd76c945b879513b991bac23ffcb97fe88ec2",
      "tree": "fa5044e39dc816293ebf46cbb208443039eec7c5",
      "parents": [
        "9b1ef1de20e2658c77cce89941f45525704ab534",
        "5269a9ab7def9a3116663347d59c4d70afa2d180"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 12 15:33:16 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 12 15:33:16 2012 -0700"
      },
      "message": "Merge tag \u0027irqdomain-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6\n\nPull a fix for the recent irqdomain bug fixes from Grant Likely:\n \"I flubbed one patch in the last pull request which broke a format\n  string on 64 bit platforms.  Here\u0027s the fix.\"\n\n* tag \u0027irqdomain-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  irq_domain: fix type mismatch in debugfs output format\n"
    },
    {
      "commit": "5269a9ab7def9a3116663347d59c4d70afa2d180",
      "tree": "e4c93f4f7a1cc8e6c243bce6be7b5c37ece3cc54",
      "parents": [
        "ecca5c3acc0d0933d89abc44e60afb0cc8170e35"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Thu Apr 12 14:42:15 2012 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Thu Apr 12 16:25:48 2012 -0600"
      },
      "message": "irq_domain: fix type mismatch in debugfs output format\n\nsizeof(void*) returns an unsigned long, but it was being used as a width parameter to a \"%-*s\" format string which requires an int.  On 64 bit platforms this causes a type mismatch:\n\n    linux/kernel/irq/irqdomain.c:575: warning: field width should have type\n    \u0027int\u0027, but argument 6 has type \u0027long unsigned int\u0027\n\nThis change casts the size to an int so printf gets the right data type.\n\nReported-by: Andreas Schwab \u003cschwab@linux-m68k.org\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: David Daney \u003cdavid.daney@cavium.com\u003e\n"
    },
    {
      "commit": "ccb1ec95e924a24906ef01ce6d028a8dc13dc87d",
      "tree": "b16a02083ba6843fe3f2513f74a72c95d43ddccb",
      "parents": [
        "4a1d7544fee5e601a4e642ce2720689f90428d65",
        "d48fc63f6f3f485ed5aa9cf019d8e8e3a7d10263"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 12 15:16:26 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 12 15:16:26 2012 -0700"
      },
      "message": "Merge branch \u0027timers-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull timer fixes from Thomas Gleixner:\n \"The itimer removal one is not strictly a fix, but I really wanted to\n  avoid a rebase of the urgent ones.\"\n\n* \u0027timers-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  Revert \"clocksource: Load the ACPI PM clocksource asynchronously\"\n  clockevents: tTack broadcast device mode change in tick_broadcast_switch_to_oneshot()\n  itimer: Use printk_once instead of WARN_ONCE\n  nohz: Fix stale jiffies update in tick_nohz_restart()\n  tick: Document TICK_ONESHOT config option\n  proc: stats: Use arch_idle_time for idle and iowait times if available\n  itimer: Schedule silent NULL pointer fixup in setitimer() for removal\n"
    },
    {
      "commit": "ecca5c3acc0d0933d89abc44e60afb0cc8170e35",
      "tree": "e765a76f8bf07717b4c446193bc4e2601b4fd038",
      "parents": [
        "174808af90a06ee59ffedd60c00c252f1f887f25",
        "026ee1f66aaa7f01b617a0ba89ac4b531f9603f1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 12 14:15:21 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 12 14:15:21 2012 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge fixes from Andrew Morton.\n\n* emailed from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (14 patches)\n  panic: fix stack dump print on direct call to panic()\n  drivers/rtc/rtc-pl031.c: enable clock on all ST variants\n  Revert \"mm: vmscan: fix misused nr_reclaimed in shrink_mem_cgroup_zone()\"\n  hugetlb: fix race condition in hugetlb_fault()\n  drivers/rtc/rtc-twl.c: use static register while reading time\n  drivers/rtc/rtc-s3c.c: add placeholder for driver private data\n  drivers/rtc/rtc-s3c.c: fix compilation error\n  MAINTAINERS: add PCDP console maintainer\n  memcg: do not open code accesses to res_counter members\n  drivers/rtc/rtc-efi.c: fix section mismatch warning\n  drivers/rtc/rtc-r9701.c: reset registers if invalid values are detected\n  drivers/char/random.c: fix boot id uniqueness race\n  memcg: fix broken boolen expression\n  memcg: fix up documentation on global LRU\n"
    },
    {
      "commit": "026ee1f66aaa7f01b617a0ba89ac4b531f9603f1",
      "tree": "536bca88c7ee8475eb33b0b8a654bd13b8fd64a9",
      "parents": [
        "2f3972168353d355854d6381f1f360ce83b723e5"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Apr 12 12:49:17 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 12 13:12:12 2012 -0700"
      },
      "message": "panic: fix stack dump print on direct call to panic()\n\nCommit 6e6f0a1f0fa6 (\"panic: don\u0027t print redundant backtraces on oops\")\ncauses a regression where no stack trace will be printed at all for the\ncase where kernel code calls panic() directly while not processing an\noops, and of course there are 100\u0027s of instances of this type of call.\n\nThe original commit executed the check (!oops_in_progress), but this will\nalways be false because just before the dump_stack() there is a call to\nbust_spinlocks(1), which does the following:\n\n  void __attribute__((weak)) bust_spinlocks(int yes)\n  {\n\tif (yes) {\n\t\t++oops_in_progress;\n\nThe proper way to resolve the problem that original commit tried to\nsolve is to avoid printing a stack dump from panic() when the either of\nthe following conditions is true:\n\n  1) TAINT_DIE has been set (this is done by oops_end())\n     This indicates and oops has already been printed.\n  2) oops_in_progress \u003e 1\n     This guards against the rare case where panic() is invoked\n     a second time, or in between oops_begin() and oops_end()\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nCc: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\t[3.3+]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7e066489726b52bea419085e5b8929e1e89f57a8",
      "tree": "b144712e5200002b55b45f362ffa1fd53d0389c6",
      "parents": [
        "4abb663b641ee21024906dae45af7de50ebad2d8",
        "6fa6c8e25e95bdc73e92e4c96b8e3299169b616e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 12 12:49:56 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 12 12:49:56 2012 -0700"
      },
      "message": "Merge tag \u0027irqdomain-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6\n\nPull irqdomain bug fixes from Grant Likely:\n \"This branch fixes a bug in irq_create_mapping() where an error return\n  from irq_alloc_desc_from() gets ignored.\n\n  It also removes irq_virq_count to fix a bug on powerpc where the\n  irqdomain code does not find irqs allocated above the CONFIG_NR_IRQS\n  boundary.\n\n  The remaining patches get rid of an completely pointless export and\n  fix some minor bugs in the irqdomain debug output.\"\n\n* tag \u0027irqdomain-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  irq_domain: Move irq_virq_count into NOMAP revmap\n  irqdomain: Fix debugfs formatting\n  irq_domain: correct the debugfs file name\n  irq: Kill pointless irqd_to_hw export\n  irq/irq_domain: Quit ignoring error returns from irq_alloc_desc_from().\n"
    },
    {
      "commit": "6fa6c8e25e95bdc73e92e4c96b8e3299169b616e",
      "tree": "34dc13fb2448eab4916f55edd10dfa34c36505df",
      "parents": [
        "15e06bf64f686befd2030da867a3dad965b96cc0"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed Feb 15 15:06:08 2012 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Thu Apr 12 00:37:48 2012 -0600"
      },
      "message": "irq_domain: Move irq_virq_count into NOMAP revmap\n\nThis patch replaces the old global setting of irq_virq_count that is only\nused by the NOMAP mapping and instead uses a revmap_data property so that\nthe maximum NOMAP allocation can be set per NOMAP irq_domain.\n\nThere is exactly one user of irq_virq_count in-tree right now: PS3.\nAlso, irq_virq_count is only useful for the NOMAP mapping.  So,\ninstead of having a single global irq_virq_count values, this change\ndrops it entirely and added a max_irq argument to irq_domain_add_nomap().\nThat makes it a property of an individual nomap irq domain instead of\na global system settting.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nTested-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Milton Miller \u003cmiltonm@bga.com\u003e\n"
    },
    {
      "commit": "79549c6dfda0603dba9a70a53467ce62d9335c33",
      "tree": "88de05761354d81916b6a929ae9ef2fa1b51e3e5",
      "parents": [
        "923e9a1399b620d063cd88537c64561bc3d5f905"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Apr 09 21:03:50 2012 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 11 08:20:11 2012 -0700"
      },
      "message": "cred: copy_process() should clear child-\u003ereplacement_session_keyring\n\nkeyctl_session_to_parent(task) sets -\u003ereplacement_session_keyring,\nit should be processed and cleared by key_replace_session_keyring().\n\nHowever, this task can fork before it notices TIF_NOTIFY_RESUME and\nthe new child gets the bogus -\u003ereplacement_session_keyring copied by\ndup_task_struct(). This is obviously wrong and, if nothing else, this\nleads to put_cred(already_freed_cred).\n\nchange copy_creds() to clear this member. If copy_process() fails\nbefore this point the wrong -\u003ereplacement_session_keyring doesn\u0027t\nmatter, exit_creds() won\u0027t be called.\n\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "15e06bf64f686befd2030da867a3dad965b96cc0",
      "tree": "769d3c6192d1eeff58fd84d5e6c4667f2952d26c",
      "parents": [
        "ac5830a33f5b25eae1dc0708b3e7a3d270a6c07f"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed Apr 11 00:26:25 2012 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed Apr 11 01:01:45 2012 -0600"
      },
      "message": "irqdomain: Fix debugfs formatting\n\nThis patch fixes the irq_domain_mapping debugfs output to pad pointer\nvalues with leading zeros so that pointer values are displayed\ncorrectly.  Otherwise you get output similar to \"0x 5e0000000000000\".\nAlso, when the irq_domain is set to \u0027null\u0027\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: David Daney \u003cdavid.daney@cavium.com\u003e\nCc: Mika Westerberg \u003cmika.westerberg@linux.intel.com\u003e\n"
    },
    {
      "commit": "ac5830a33f5b25eae1dc0708b3e7a3d270a6c07f",
      "tree": "8e3bf52b942d432f8ebb79b8ad3c2eae1c06a744",
      "parents": [
        "a699e4e49ec3fb62c4a44394357d14081df10bef"
      ],
      "author": {
        "name": "Mika Westerberg",
        "email": "mika.westerberg@linux.intel.com",
        "time": "Tue Apr 10 15:25:42 2012 +0300"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Apr 10 22:39:17 2012 -0600"
      },
      "message": "irq_domain: correct the debugfs file name\n\nThe actual name of the irq_domain mapping debugfs file is\n\"irq_domain_mapping\" not \"virq_mapping\".\n\nSigned-off-by: Mika Westerberg \u003cmika.westerberg@linux.intel.com\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "5b7526e3a640e491075557acaa842c59c652c0c3",
      "tree": "43b3d5d33078b4683482b25559735e1e5d719a72",
      "parents": [
        "0034102808e0dbbf3a2394b82b1bb40b5778de9e"
      ],
      "author": {
        "name": "David Daney",
        "email": "david.daney@cavium.com",
        "time": "Thu Apr 05 16:52:13 2012 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Apr 10 22:39:16 2012 -0600"
      },
      "message": "irq/irq_domain: Quit ignoring error returns from irq_alloc_desc_from().\n\nIn commit 4bbdd45a (irq_domain/powerpc: eliminate irq_map; use\nirq_alloc_desc() instead) code was added that ignores error returns\nfrom irq_alloc_desc_from() by (silently) casting the return value to\nunsigned.  The negitive value error return now suddenly looks like a\nvalid irq number.\n\nCommits cc79ca69 (irq_domain: Move irq_domain code from powerpc to\nkernel/irq) and 1bc04f2c (irq_domain: Add support for base irq and\nhwirq in legacy mappings) move this code to its current location in\nirqdomain.c\n\nThe result of all of this is a null pointer dereference OOPS if one of\nthe error cases is hit.\n\nThe fix: Don\u0027t cast away the negativeness of the return value and then\ncheck for errors.\n\nSigned-off-by: David Daney \u003cdavid.daney@cavium.com\u003e\nAcked-by: Rob Herring \u003crob.herring@calxeda.com\u003e\n[grant.likely: dropped addition of new \u0027irq\u0027 variable]\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "fa4da365bc7772c2cd6d5405bdf151612455f957",
      "tree": "a688173e5ba7428e934dee1ea2905c2bbe92ef50",
      "parents": [
        "9886f444129171569461d8c39983e16f4871e3b4"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Mon Apr 09 15:41:44 2012 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Apr 10 11:42:07 2012 +0200"
      },
      "message": "clockevents: tTack broadcast device mode change in tick_broadcast_switch_to_oneshot()\n\nIn the commit 77b0d60c5adf39c74039e2142a1d3cd1e4d53799,\n\"clockevents: Leave the broadcast device in shutdown mode when not needed\",\nwe were bailing out too quickly in tick_broadcast_switch_to_oneshot(),\nwith out tracking the broadcast device mode change to \u0027TICKDEV_MODE_ONESHOT\u0027.\n\nThis breaks the platforms which need broadcast device oneshot services during\ndeep idle states. tick_broadcast_oneshot_control() thinks that it is\nin periodic mode and fails to take proper decisions based on the\nCLOCK_EVT_NOTIFY_BROADCAST_[ENTER, EXIT] notifications during deep\nidle entry/exit.\n\nFix this by tracking the broadcast device mode as \u0027TICKDEV_MODE_ONESHOT\u0027,\nbefore leaving the broadcast HW device in shutdown mode if there are no active\nrequests for the moment.\n\nReported-and-tested-by: Santosh Shilimkar \u003csantosh.shilimkar@ti.com\u003e\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: johnstul@us.ibm.com\nLink: http://lkml.kernel.org/r/1334011304.12400.81.camel@sbsiddha-desk.sc.intel.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "9886f444129171569461d8c39983e16f4871e3b4",
      "tree": "2ceefb3988e602a58f8055b4ec82b00eb306abf9",
      "parents": [
        "6f103929f8979d2638e58d7f7fda0beefcb8ee7e"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Apr 10 10:50:55 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Apr 10 11:00:30 2012 +0200"
      },
      "message": "itimer: Use printk_once instead of WARN_ONCE\n\nDavid pointed out, that WARN_ONCE() to report usage of an deprecated\nmisfeature make folks unhappy. Use printk_once() instead.\n\nAndrew told me to stop grumbling and to remove the silly typecast\nwhile touching the file.\n\nReported-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "d6a624eef128c97b35fcea47cd00ef22f005e7aa",
      "tree": "e547bfbbddc2ffa872949cc3bfe95a03d38a3783",
      "parents": [
        "f21fec96ead90eae7bcb3c847e8115c119c5dc62",
        "620f6e8e855d6d447688a5f67a4e176944a084e8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 07 09:51:36 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 07 09:51:36 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security\n\nPull security layer fixlet from James Morris.\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:\n  sysctl: fix write access to dmesg_restrict/kptr_restrict\n"
    },
    {
      "commit": "6f103929f8979d2638e58d7f7fda0beefcb8ee7e",
      "tree": "e1ef3fc388c177e8e8ca4b6daa797fe7f9306d84",
      "parents": [
        "3872c48b14259d8c0a00c9fff06a4a4123f7f4eb"
      ],
      "author": {
        "name": "Neal Cardwell",
        "email": "ncardwell@google.com",
        "time": "Tue Mar 27 15:09:37 2012 -0400"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Apr 06 13:24:17 2012 +0200"
      },
      "message": "nohz: Fix stale jiffies update in tick_nohz_restart()\n\nFix tick_nohz_restart() to not use a stale ktime_t \"now\" value when\ncalling tick_do_update_jiffies64(now).\n\nIf we reach this point in the loop it means that we crossed a tick\nboundary since we grabbed the \"now\" timestamp, so at this point \"now\"\nrefers to a time in the old jiffy, so using the old value for \"now\" is\nincorrect, and is likely to give us a stale jiffies value.\n\nIn particular, the first time through the loop the\ntick_do_update_jiffies64(now) call is always a no-op, since the\ncaller, tick_nohz_restart_sched_tick(), will have already called\ntick_do_update_jiffies64(now) with that \"now\" value.\n\nNote that tick_nohz_stop_sched_tick() already uses the correct\napproach: when we notice we cross a jiffy boundary, grab a new\ntimestamp with ktime_get(), and *then* update jiffies.\n\nSigned-off-by: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Ben Segall \u003cbsegall@google.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: stable@vger.kernel.org\nLink: http://lkml.kernel.org/r/1332875377-23014-1-git-send-email-ncardwell@google.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "5d32c88f0b94061b3af2e3ade92422407282eb12",
      "tree": "2e1f81aa47b2cf59625c8fba17199617e33802e6",
      "parents": [
        "43f63c8711ce02226b7bbdafeba7b8031faf3fb4",
        "dac23b0d0513916498d40412818bd2c581b365f7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 05 15:30:34 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 05 15:30:34 2012 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge batch of fixes from Andrew Morton:\n \"The simple_open() cleanup was held back while I wanted for laggards to\n  merge things.\n\n  I still need to send a few checkpoint/restore patches.  I\u0027ve been\n  wobbly about merging them because I\u0027m wobbly about the overall\n  prospects for success of the project.  But after speaking with Pavel\n  at the LSF conference, it sounds like they\u0027re further toward\n  completion than I feared - apparently davem is at the \"has stopped\n  complaining\" stage regarding the net changes.  So I need to go back\n  and re-review those patchs and their (lengthy) discussion.\"\n\n* emailed from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (16 patches)\n  memcg swap: use mem_cgroup_uncharge_swap fix\n  backlight: add driver for DA9052/53 PMIC v1\n  C6X: use set_current_blocked() and block_sigmask()\n  MAINTAINERS: add entry for sparse checker\n  MAINTAINERS: fix REMOTEPROC F: typo\n  alpha: use set_current_blocked() and block_sigmask()\n  simple_open: automatically convert to simple_open()\n  scripts/coccinelle/api/simple_open.cocci: semantic patch for simple_open()\n  libfs: add simple_open()\n  hugetlbfs: remove unregister_filesystem() when initializing module\n  drivers/rtc/rtc-88pm860x.c: fix rtc irq enable callback\n  fs/xattr.c:setxattr(): improve handling of allocation failures\n  fs/xattr.c:listxattr(): fall back to vmalloc() if kmalloc() failed\n  fs/xattr.c: suppress page allocation failure warnings from sys_listxattr()\n  sysrq: use SEND_SIG_FORCED instead of force_sig()\n  proc: fix mount -t proc -o AAA\n"
    },
    {
      "commit": "234e340582901211f40d8c732afc49f0630ecf05",
      "tree": "753076500dfd883b3db56d4f5410af31d8945623",
      "parents": [
        "9b3ae64be658a573b33d05a8dc73b08d3345fa44"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Thu Apr 05 14:25:11 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 05 15:25:50 2012 -0700"
      },
      "message": "simple_open: automatically convert to simple_open()\n\nMany users of debugfs copy the implementation of default_open() when\nthey want to support a custom read/write function op.  This leads to a\nproliferation of the default_open() implementation across the entire\ntree.\n\nNow that the common implementation has been consolidated into libfs we\ncan replace all the users of this function with simple_open().\n\nThis replacement was done with the following semantic patch:\n\n\u003csmpl\u003e\n@ open @\nidentifier open_f !\u003d simple_open;\nidentifier i, f;\n@@\n-int open_f(struct inode *i, struct file *f)\n-{\n(\n-if (i-\u003ei_private)\n-f-\u003eprivate_data \u003d i-\u003ei_private;\n|\n-f-\u003eprivate_data \u003d i-\u003ei_private;\n)\n-return 0;\n-}\n\n@ has_open depends on open @\nidentifier fops;\nidentifier open.open_f;\n@@\nstruct file_operations fops \u003d {\n...\n-.open \u003d open_f,\n+.open \u003d simple_open,\n...\n};\n\u003c/smpl\u003e\n\n[akpm@linux-foundation.org: checkpatch fixes]\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Julia Lawall \u003cJulia.Lawall@lip6.fr\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "620f6e8e855d6d447688a5f67a4e176944a084e8",
      "tree": "2be8f032eefc0d3bdaf9a045bd9263da4a2c6823",
      "parents": [
        "6c216ec636f75d834461be15f83ec41a6759bd2b"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Wed Apr 04 11:40:19 2012 -0700"
      },
      "committer": {
        "name": "James Morris",
        "email": "james.l.morris@oracle.com",
        "time": "Thu Apr 05 14:51:43 2012 +1000"
      },
      "message": "sysctl: fix write access to dmesg_restrict/kptr_restrict\n\nCommit bfdc0b4 adds code to restrict access to dmesg_restrict,\nhowever, it incorrectly alters kptr_restrict rather than\ndmesg_restrict.\n\nThe original patch from Richard Weinberger\n(https://lkml.org/lkml/2011/3/14/362) alters dmesg_restrict as\nexpected, and so the patch seems to have been misapplied.\n\nThis adds the CAP_SYS_ADMIN check to both dmesg_restrict and\nkptr_restrict, since both are sensitive.\n\nReported-by: Phillip Lougher \u003cplougher@redhat.com\u003e\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nAcked-by: Richard Weinberger \u003crichard@nod.at\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: James Morris \u003cjames.l.morris@oracle.com\u003e\n"
    },
    {
      "commit": "6c216ec636f75d834461be15f83ec41a6759bd2b",
      "tree": "505ab410c3208e586fd7db0bb97364d8dac490a1",
      "parents": [
        "58bca4a8fa90fcf9069379653b396b2cec642f7f",
        "3751d3e85cf693e10e2c47c03c8caa65e171099b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 04 17:26:08 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 04 17:26:08 2012 -0700"
      },
      "message": "Merge tag \u0027for_linus-3.4-rc2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/kgdb\n\nPull KGDB/KDB regression fixes from Jason Wessel:\n - Fix a Smatch warning that appeared in the 3.4 merge window\n - Fix kgdb test suite with SMP for all archs without HW single stepping\n - Fix kgdb sw breakpoints with CONFIG_DEBUG_RODATA\u003dy limitations on x86\n - Fix oops on kgdb test suite with CONFIG_DEBUG_RODATA\n - Fix kgdb test suite with SMP for all archs with HW single stepping\n\n* tag \u0027for_linus-3.4-rc2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/kgdb:\n  x86,kgdb: Fix DEBUG_RODATA limitation using text_poke()\n  kgdb,debug_core: pass the breakpoint struct instead of address and memory\n  kgdbts: (2 of 2) fix single step awareness to work correctly with SMP\n  kgdbts: (1 of 2) fix single step awareness to work correctly with SMP\n  kgdbts: Fix kernel oops with CONFIG_DEBUG_RODATA\n  kdb: Fix smatch warning on dbg_io_ops-\u003eis_console\n"
    },
    {
      "commit": "64ebe987311853ea857a244439de5b947a4b1b07",
      "tree": "b33ab6efd7f118e0f6ab5a6bcbd59ba31a313da5",
      "parents": [
        "a5149bf3fed59b94207809704b5d06fec337a771",
        "c4772d192c70b61d52262b0db76f7abd8aeb51c6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 04 14:26:40 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 04 14:26:40 2012 -0700"
      },
      "message": "Merge tag \u0027pm-for-3.4-part-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPull more power management updates from Rafael Wysocki:\n - Patch series that hopefully fixes races between the freezer and\n   request_firmware() and request_firmware_nowait() for good, with two\n   cleanups from Stephen Boyd on top.\n - Runtime PM fix from Alan Stern preventing tasks from getting stuck\n   indefinitely in the runtime PM wait queue.\n - Device PM QoS update from MyungJoo Ham introducing a new variant of\n   pm_qos_update_request() allowing the callers to specify a timeout.\n\n* tag \u0027pm-for-3.4-part-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:\n  PM / QoS: add pm_qos_update_request_timeout() API\n  firmware_class: Move request_firmware_nowait() to workqueues\n  firmware_class: Reorganize fw_create_instance()\n  PM / Sleep: Mitigate race between the freezer and request_firmware()\n  PM / Sleep: Move disabling of usermode helpers to the freezer\n  PM / Hibernate: Disable usermode helpers right before freezing tasks\n  firmware_class: Do not warn that system is not ready from async loads\n  firmware_class: Split _request_firmware() into three functions, v2\n  firmware_class: Rework usermodehelper check\n  PM / Runtime: don\u0027t forget to wake up waitqueue on failure\n"
    },
    {
      "commit": "95694129b43165911dc4e8a972f0d39ad98d86be",
      "tree": "a7faf4b70c85b457f684cbc1033ac5b79457c2e9",
      "parents": [
        "b1a808ff436343956a6ae63178ea1810c5e5a3a1",
        "80da6a4feeb9e4d6554f771f14f5b994e6c6c7e8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 02 14:41:43 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 02 14:41:43 2012 -0700"
      },
      "message": "Merge branch \u0027paul\u0027 (Fixups from Paul Gortmaker)\n\nThis merges some of the fixes from Paul Gortmaker for the header file\ncleanup fallout.\n\nSome of the patches are going through arch maintainer trees, and David\nHowells suggested another be done differently, but this at least fixes a\nfew cases.\n\n* emailed from Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e:\n  asm-generic: add linux/types.h to cmpxchg.h\n  firewire: restore the device.h include in linux/firewire.h\n  frv: fix warnings in mb93090-mb00/pci-dma.c about implicit EXPORT_SYMBOL\n  parisc: fix missing cmpxchg file error from system.h split\n  blackfin: fix cmpxchg build fails from system.h fallout\n  avr32: fix build failures from mis-naming of atmel_nand.h\n  ARM: mach-msm: fix compile fail from system.h fallout\n  irq_work: fix compile failure on MIPS from system.h split\n"
    },
    {
      "commit": "8f6b7676ceecc1f40df77d5a4d6a8bae87594a2d",
      "tree": "aaac7c2858dab9817af579f2ad39f2f18ce4dbd8",
      "parents": [
        "143418d0c87fda0c587205c45094d8b05222fd49",
        "5219a5342ab13650ae0f0c62319407268c48d0ab"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 02 09:40:24 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 02 09:40:24 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\nPull crypto fixes from Herbert Xu:\n - Fix for CPU hotplug hang in padata.\n - Avoid using cpu_active inappropriately in pcrypt and padata.\n - Fix for user-space algorithm lookup hang with IV generators.\n - Fix for netlink dump of algorithms where stuff went missing due to\n   incorrect calculation of message size.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:\n  crypto: user - Fix size of netlink dump message\n  crypto: user - Fix lookup of algorithms with IV generator\n  crypto: pcrypt - Use the online cpumask as the default\n  padata: Fix cpu hotplug\n  padata: Use the online cpumask as the default\n  padata: Add a reference to the api documentation\n"
    },
    {
      "commit": "deb74f5ca1f22f9e1c5da93143a250dbb96535af",
      "tree": "ee9eb01e5433ea50f3414a469521a4c1cfaccb7a",
      "parents": [
        "dd775ae2549217d3ae09363e3edb305d0fa19928",
        "615399c84d1b8d8d8752629e5e5ab4e5044d6918"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 02 08:53:24 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 02 08:53:24 2012 -0700"
      },
      "message": "Merge tag \u0027for-linus\u0027 of git://github.com/rustyrussell/linux\n\nPull cpumask cleanups from Rusty Russell:\n \"(Somehow forgot to send this out; it\u0027s been sitting in linux-next, and\n  if you don\u0027t want it, it can sit there another cycle)\"\n\nI\u0027m a sucker for things that actually delete lines of code.\n\nFix up trivial conflict in arch/arm/kernel/kprobes.c, where Rusty fixed\na user of \u0026cpu_online_map to be cpu_online_mask, but that code got\ndeleted by commit b21d55e98ac2 (\"ARM: 7332/1: extract out code patch\nfunction from kprobes\").\n\n* tag \u0027for-linus\u0027 of git://github.com/rustyrussell/linux:\n  cpumask: remove old cpu_*_map.\n  documentation: remove references to cpu_*_map.\n  drivers/cpufreq/db8500-cpufreq: remove references to cpu_*_map.\n  remove references to cpu_*_map in arch/\n"
    },
    {
      "commit": "83e3fa6f0193299f8b7180db588edd5ca61a3b82",
      "tree": "bb7298e580619fd3b7923364e3c4cd1e9d341972",
      "parents": [
        "dd775ae2549217d3ae09363e3edb305d0fa19928"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Sun Apr 01 16:38:37 2012 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 02 08:48:04 2012 -0700"
      },
      "message": "irq_work: fix compile failure on MIPS from system.h split\n\nBuilds of the MIPS platform ip32_defconfig fails as of commit\n0195c00244dc (\"Merge tag \u0027split-asm_system_h ...\") because MIPS xchg()\nmacro uses BUILD_BUG_ON and it was moved in commit b81947c646bf\n(\"Disintegrate asm/system.h for MIPS\").\n\nThe root cause is that the system.h split wasn\u0027t tested on a baseline\nwith commit 6c03438edeb5 (\"kernel.h: doesn\u0027t explicitly use bug.h, so\ndon\u0027t include it.\")\n\nSince this file uses BUG code in several other places besides the xchg\ncall, simply make the inclusion explicit.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f22e08a79f3765fecf060b225a46931c94fb0a92",
      "tree": "2f02777e8893d03289ec0a7f5f414f3ff01c8c37",
      "parents": [
        "f187e9fd68577cdd5f914659b6f7f11124e40485",
        "e3831edd59edf57ca11fc289f08961b20baf5146"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 31 13:35:31 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 31 13:35:31 2012 -0700"
      },
      "message": "Merge branch \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler fixes from Ingo Molnar.\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched: Fix incorrect usage of for_each_cpu_mask() in select_fallback_rq()\n  sched: Fix __schedule_bug() output when called from an interrupt\n  sched/arch: Introduce the finish_arch_post_lock_switch() scheduler callback\n"
    },
    {
      "commit": "f187e9fd68577cdd5f914659b6f7f11124e40485",
      "tree": "ad0e7422359724f7c7ffaaaa80dd3a7281f02a83",
      "parents": [
        "adb3b1f3fc1c6edb501808ebf80a81e81c52eb73",
        "8ebfdf2babcda5a3b06cc67523bca1f9aed46009"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 31 13:34:04 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 31 13:34:04 2012 -0700"
      },
      "message": "Merge branch \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull perf updates and fixes from Ingo Molnar:\n \"It\u0027s mostly fixes, but there\u0027s also two late items:\n\n   - preliminary GTK GUI support for perf report\n   - PMU raw event format descriptors in sysfs, to be parsed by tooling\n\n  The raw event format in sysfs is a new ABI.  For example for the \u0027CPU\u0027\n  PMU we have:\n\n    aldebaran:~\u003e ll /sys/bus/event_source/devices/cpu/format/*\n    -r--r--r--. 1 root root 4096 Mar 31 10:29 /sys/bus/event_source/devices/cpu/format/any\n    -r--r--r--. 1 root root 4096 Mar 31 10:29 /sys/bus/event_source/devices/cpu/format/cmask\n    -r--r--r--. 1 root root 4096 Mar 31 10:29 /sys/bus/event_source/devices/cpu/format/edge\n    -r--r--r--. 1 root root 4096 Mar 31 10:29 /sys/bus/event_source/devices/cpu/format/event\n    -r--r--r--. 1 root root 4096 Mar 31 10:29 /sys/bus/event_source/devices/cpu/format/inv\n    -r--r--r--. 1 root root 4096 Mar 31 10:29 /sys/bus/event_source/devices/cpu/format/offcore_rsp\n    -r--r--r--. 1 root root 4096 Mar 31 10:29 /sys/bus/event_source/devices/cpu/format/pc\n    -r--r--r--. 1 root root 4096 Mar 31 10:29 /sys/bus/event_source/devices/cpu/format/umask\n\n  those lists of fields contain a specific format:\n\n    aldebaran:~\u003e cat /sys/bus/event_source/devices/cpu/format/offcore_rsp\n    config1:0-63\n\n  So, those who wish to specify raw events can now use the following\n  event format:\n\n    -e cpu/cmask\u003d1,event\u003d2,umask\u003d3\n\n  Most people will not want to specify any events (let alone raw\n  events), they\u0027ll just use whatever default event the tools use.\n\n  But for more obscure PMU events that have no cross-architecture\n  generic events the above syntax is more usable and a bit more\n  structured than specifying hex numbers.\"\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (41 commits)\n  perf tools: Remove auto-generated bison/flex files\n  perf annotate: Fix off by one symbol hist size allocation and hit accounting\n  perf tools: Add missing ref-cycles event back to event parser\n  perf annotate: addr2line wants addresses in same format as objdump\n  perf probe: Finder fails to resolve function name to address\n  tracing: Fix ent_size in trace output\n  perf symbols: Handle NULL dso in dso__name_len\n  perf symbols: Do not include libgen.h\n  perf tools: Fix bug in raw sample parsing\n  perf tools: Fix display of first level of callchains\n  perf tools: Switch module.h into export.h\n  perf: Move mmap page data_head offset assertion out of header\n  perf: Fix mmap_page capabilities and docs\n  perf diff: Fix to work with new hists design\n  perf tools: Fix modifier to be applied on correct events\n  perf tools: Fix various casting issues for 32 bits\n  perf tools: Simplify event_read_id exit path\n  tracing: Fix ftrace stack trace entries\n  tracing: Move the tracing_on/off() declarations into CONFIG_TRACING\n  perf report: Add a simple GTK2-based \u0027perf report\u0027 browser\n  ...\n"
    },
    {
      "commit": "3872c48b14259d8c0a00c9fff06a4a4123f7f4eb",
      "tree": "94e5f5c1898896436e9534aa182d8c3aef255826",
      "parents": [
        "cb85a6ed67e979c59a29b7b4e8217e755b951cf4"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Mar 31 12:45:43 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Mar 31 12:45:43 2012 +0200"
      },
      "message": "tick: Document TICK_ONESHOT config option\n\nThis option has been selected from arch code as it was assumed that\nit\u0027s necessary to support oneshot mode clockevent devices. But it\u0027s\njust a core internal helper to compile tick-oneshot.c if NOHZ or\nHIG_RES_TIMERS are selected.\n\nReported-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "e3831edd59edf57ca11fc289f08961b20baf5146",
      "tree": "70dfabd35517a97a1127df573d3770848f697e55",
      "parents": [
        "1f56ee7b68fecd45d25bdcf2eda7507797594424"
      ],
      "author": {
        "name": "Srivatsa S. Bhat",
        "email": "srivatsa.bhat@linux.vnet.ibm.com",
        "time": "Fri Mar 30 19:40:28 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Sat Mar 31 10:43:36 2012 +0200"
      },
      "message": "sched: Fix incorrect usage of for_each_cpu_mask() in select_fallback_rq()\n\nThe function for_each_cpu_mask() expects a *pointer* to struct\ncpumask as its second argument, whereas select_fallback_rq()\npasses the value itself.\n\nAnd moreover, for_each_cpu_mask() has been marked as obselete\nin include/linux/cpumask.h. So move to the more appropriate\nfor_each_cpu() variant.\n\nReported-by: Sasha Levin \u003clevinsasha928@gmail.com\u003e\nSigned-off-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Liu Chuansheng \u003cchuansheng.liu@intel.com\u003e\nCc: vapier@gentoo.org\nCc: rusty@rustcorp.com.au\nLink: http://lkml.kernel.org/r/4F75BED4.9050005@linux.vnet.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "f558c272386a0f7507cc8de7b6b5afc24d17fa9c",
      "tree": "5929476273509cfb26817fc1e06392e56c872e5f",
      "parents": [
        "3a0d1849432461eec1321f8918c6c13497d390c9",
        "f5cb92ac82d06cb583c1f66666314c5c0a4d7913"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 30 18:08:05 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 30 18:08:05 2012 -0700"
      },
      "message": "Merge branch \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull genirq updates from Thomas Gleixner.\n\n* \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  genirq: Adjust irq thread affinity on IRQ_SET_MASK_OK_NOCOPY return value\n  genirq: Respect NUMA node affinity in setup_irq_irq affinity()\n  genirq: Get rid of unneeded force parameter in irq_finalize_oneshot()\n  genirq: Minor readablity improvement in irq_wake_thread()\n"
    },
    {
      "commit": "3a0d1849432461eec1321f8918c6c13497d390c9",
      "tree": "694bafcc856b38ba99eb2172c8c5b061cfa0d529",
      "parents": [
        "623ff7739e7c00fa3d55dbfd42a492a68298fd7a",
        "ec0c4274e33c0373e476b73e01995c53128f1257"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 30 18:07:13 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 30 18:07:13 2012 -0700"
      },
      "message": "Merge branch \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull core locking updates from Thomas Gleixner.\n\n* \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  futex: Mark get_robust_list as deprecated\n  futex: Do not leak robust list to unprivileged process\n"
    },
    {
      "commit": "f5cb92ac82d06cb583c1f66666314c5c0a4d7913",
      "tree": "3553fcffceda28462137f73f3f81ccccc19c620b",
      "parents": [
        "241fc640be783f903e74b6d9c68481c01873f758"
      ],
      "author": {
        "name": "Jiang Liu",
        "email": "liuj97@gmail.com",
        "time": "Fri Mar 30 23:11:33 2012 +0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 30 23:13:46 2012 +0200"
      },
      "message": "genirq: Adjust irq thread affinity on IRQ_SET_MASK_OK_NOCOPY return value\n\nirq_move_masked_irq() checks the return code of\nchip-\u003eirq_set_affinity() only for 0, but IRQ_SET_MASK_OK_NOCOPY is\nalso a valid return code, which is there to avoid a redundant copy of\nthe cpumask. But in case of IRQ_SET_MASK_OK_NOCOPY we not only avoid\nthe redundant copy, we also fail to adjust the thread affinity of an\neventually threaded interrupt handler.\n\nHandle IRQ_SET_MASK_OK (\u003d\u003d0) and IRQ_SET_MASK_OK_NOCOPY(\u003d\u003d1) return\nvalues correctly by checking the valid return values seperately.\n\nSigned-off-by: Jiang Liu \u003cjiang.liu@huawei.com\u003e\nCc: Jiang Liu \u003cliuj97@gmail.com\u003e\nCc: Keping Chen \u003cchenkeping@huawei.com\u003e\nCc: stable@vger.kernel.org\nLink: http://lkml.kernel.org/r/1333120296-13563-2-git-send-email-jiang.liu@huawei.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "aa2bf9bc6414b6972b9e51903c1ce7b1f057aee2",
      "tree": "71bde0e8c10be9e425a5bba631a0fe033ba2245f",
      "parents": [
        "f52b69f86e27903d6896ed5fa7cd280fec8de532"
      ],
      "author": {
        "name": "Sasikantha babu",
        "email": "sasikanth.v19@gmail.com",
        "time": "Wed Mar 21 20:10:54 2012 +0530"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 30 15:43:33 2012 +0200"
      },
      "message": "itimer: Schedule silent NULL pointer fixup in setitimer() for removal\n\nsetitimer() should return -EFAULT if called with an invalid pointer\nfor value. The current code excludes a NULL pointer from this rule and\nsilently uses it to stop the timer. This violates the spec.\n\nWarn about user space apps which rely on that feature and schedule it\nfor removal.\n\n[ tglx: Massaged changelog, warn message and Doc entry ]\n\nSigned-off-by: Sasikantha babu \u003csasikanth.v19@gmail.com\u003e\nLink: http://lkml.kernel.org/r/1332340854-26053-1-git-send-email-sasikanth.v19@gmail.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1338631433d8de7cf85b7e8fcf1a389ad89e7a8f",
      "tree": "9877297064899da2ef7f6f50d16d05a1cf2f1719",
      "parents": [
        "4bde23f8751f388867766b0a62ed1ef8b7e01561",
        "8f121918f2e49f852de1acdc5255cc1ef440d85b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 22:33:10 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 22:33:10 2012 -0700"
      },
      "message": "Merge branch \u0027for-3.4-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup\n\nPull urgent cgroup fix from Tejun Heo:\n \"Commit 61d1d219c4c0 (\u0027cgroup: remove extra calls to\n  find_existing_css_set\u0027) which was part of the rc1 cgroup pull request\n  made writes to the cgroup \"tasks\" file return an uninitialized retval\n  on success which can cause boot failures with systemd.\n\n  The change stayed in linux-next for quite some time but gcc\n  interestingly failed to emit warning about using uninitialized\n  variable and the problem seems to materialize only for certain build\n  combinations (probably depends on register allocation).\n\n  It\u0027s just missing local variable initialization and the fix is trivial\n  \u0026 safe.  As the problem is critical when it materializes, I\u0027m\n  fast-tracking it.  Also included is Li\u0027s email address change in\n  MAINTAINERS.\"\n\n* \u0027for-3.4-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:\n  cgroup: cgroup_attach_task() could return -errno after success\n  cgroup: update MAINTAINERS entry\n"
    },
    {
      "commit": "8f121918f2e49f852de1acdc5255cc1ef440d85b",
      "tree": "552dbbc407189e45b6941cf117b39681dc1f7e40",
      "parents": [
        "ad50c15919e8aca7ea30f9dcf4bac52448c9ab46"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Mar 29 22:03:33 2012 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Mar 29 22:03:33 2012 -0700"
      },
      "message": "cgroup: cgroup_attach_task() could return -errno after success\n\n61d1d219c4 \"cgroup: remove extra calls to find_existing_css_set\" made\ncgroup_task_migrate() return void.  An unfortunate side effect was\nthat cgroup_attach_task() was depending on that function\u0027s return\nvalue to clear its @retval on the success path.  On cgroup mounts\nwithout any subsystem with -\u003ecan_attach() callback,\ncgroup_attach_task() ended up returning @retval without initializing\nit on success.\n\nFor some reason, gcc failed to warn about it and it didn\u0027t cause\ncgroup_attach_task() to return non-zero value in many cases, probably\ndue to difference in register allocation.  When the problem\nmaterializes, systemd fails to populate /systemd cgroup mount and\nfails to boot.\n\nFix it by initializing @retval to zero on declaration.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\nLKML-Reference: \u003calpine.LNX.2.00.1203282354440.25526@pobox.suse.cz\u003e\nReviewed-by: Mandeep Singh Baines \u003cmsb@chromium.org\u003e\nAcked-by: Li Zefan \u003clizefan@huawei.com\u003e\n"
    },
    {
      "commit": "a591afc01d9e48affbacb365558a31e53c85af45",
      "tree": "9bb91f4eb94ec69fc4706c4944788ec5f3586063",
      "parents": [
        "820d41cf0cd0e94a5661e093821e2e5c6b36a9d8",
        "31796ac4e8f0e88f5c10f1ad6dab8f19bebe44a4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 18:12:23 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 18:12:23 2012 -0700"
      },
      "message": "Merge branch \u0027x86-x32-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x32 support for x86-64 from Ingo Molnar:\n \"This tree introduces the X32 binary format and execution mode for x86:\n  32-bit data space binaries using 64-bit instructions and 64-bit kernel\n  syscalls.\n\n  This allows applications whose working set fits into a 32 bits address\n  space to make use of 64-bit instructions while using a 32-bit address\n  space with shorter pointers, more compressed data structures, etc.\"\n\nFix up trivial context conflicts in arch/x86/{Kconfig,vdso/vma.c}\n\n* \u0027x86-x32-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (71 commits)\n  x32: Fix alignment fail in struct compat_siginfo\n  x32: Fix stupid ia32/x32 inversion in the siginfo format\n  x32: Add ptrace for x32\n  x32: Switch to a 64-bit clock_t\n  x32: Provide separate is_ia32_task() and is_x32_task() predicates\n  x86, mtrr: Use explicit sizing and padding for the 64-bit ioctls\n  x86/x32: Fix the binutils auto-detect\n  x32: Warn and disable rather than error if binutils too old\n  x32: Only clear TIF_X32 flag once\n  x32: Make sure TS_COMPAT is cleared for x32 tasks\n  fs: Remove missed -\u003efds_bits from cessation use of fd_set structs internally\n  fs: Fix close_on_exec pointer in alloc_fdtable\n  x32: Drop non-__vdso weak symbols from the x32 VDSO\n  x32: Fix coding style violations in the x32 VDSO code\n  x32: Add x32 VDSO support\n  x32: Allow x32 to be configured\n  x32: If configured, add x32 system calls to system call tables\n  x32: Handle process creation\n  x32: Signal-related system calls\n  x86: Add #ifdef CONFIG_COMPAT to \u003casm/sys_ia32.h\u003e\n  ...\n"
    },
    {
      "commit": "12679a2d7e3bfbdc7586e3e86d1ca90c46659363",
      "tree": "d9c00f2e599d1c3e04a349229a6a19906d01f99e",
      "parents": [
        "1c036588772d01655d851f75dffc27c971e072e2",
        "b0df89868006517417251e02cc4ce5d4b0165885"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 16:53:48 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 16:53:48 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.linaro.org/people/rmk/linux-arm\n\nPull more ARM updates from Russell King.\n\nThis got a fair number of conflicts with the \u003casm/system.h\u003e split, but\nalso with some other sparse-irq and header file include cleanups.  They\nall looked pretty trivial, though.\n\n* \u0027for-linus\u0027 of git://git.linaro.org/people/rmk/linux-arm: (59 commits)\n  ARM: fix Kconfig warning for HAVE_BPF_JIT\n  ARM: 7361/1: provide XIP_VIRT_ADDR for no-MMU builds\n  ARM: 7349/1: integrator: convert to sparse irqs\n  ARM: 7259/3: net: JIT compiler for packet filters\n  ARM: 7334/1: add jump label support\n  ARM: 7333/2: jump label: detect %c support for ARM\n  ARM: 7338/1: add support for early console output via semihosting\n  ARM: use set_current_blocked() and block_sigmask()\n  ARM: exec: remove redundant set_fs(USER_DS)\n  ARM: 7332/1: extract out code patch function from kprobes\n  ARM: 7331/1: extract out insn generation code from ftrace\n  ARM: 7330/1: ftrace: use canonical Thumb-2 wide instruction format\n  ARM: 7351/1: ftrace: remove useless memory checks\n  ARM: 7316/1: kexec: EOI active and mask all interrupts in kexec crash path\n  ARM: Versatile Express: add NO_IOPORT\n  ARM: get rid of asm/irq.h in asm/prom.h\n  ARM: 7319/1: Print debug info for SIGBUS in user faults\n  ARM: 7318/1: gic: refactor irq_start assignment\n  ARM: 7317/1: irq: avoid NULL check in for_each_irq_desc loop\n  ARM: 7315/1: perf: add support for the Cortex-A7 PMU\n  ...\n"
    },
    {
      "commit": "98b54aa1a2241b59372468bd1e9c2d207bdba54b",
      "tree": "0a6cc3bc8426434a176e0fcb3c2da23d383a5a3b",
      "parents": [
        "23bbd8e346f1ef3fc1219c79cea53d8d52b207d8"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Mar 21 10:17:03 2012 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Mar 29 17:41:25 2012 -0500"
      },
      "message": "kgdb,debug_core: pass the breakpoint struct instead of address and memory\n\nThere is extra state information that needs to be exposed in the\nkgdb_bpt structure for tracking how a breakpoint was installed.  The\ndebug_core only uses the the probe_kernel_write() to install\nbreakpoints, but this is not enough for all the archs.  Some arch such\nas x86 need to use text_poke() in order to install a breakpoint into a\nread only page.\n\nPassing the kgdb_bpt structure to kgdb_arch_set_breakpoint() and\nkgdb_arch_remove_breakpoint() allows other archs to set the type\nvariable which indicates how the breakpoint was installed.\n\nCc: stable@vger.kernel.org # \u003e\u003d 2.6.36\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "78724b8ef83fc2bcfbc0a72a7ad8a3ce5ad25e6a",
      "tree": "f1f9bfae9d197765d361779a458aa1dfdb135193",
      "parents": [
        "1ba0c1720eb0de2d0f3abf84c0b128d10af520d1"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Mar 29 06:17:17 2012 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Mar 29 17:41:23 2012 -0500"
      },
      "message": "kdb: Fix smatch warning on dbg_io_ops-\u003eis_console\n\nThe Smatch tool warned that the change from commit b8adde8dd\n(kdb: Avoid using dbg_io_ops until it is initialized) should\nadd another null check later in the kdb_printf().\n\nIt is worth noting that the second use of dbg_io_ops-\u003eis_console\nis protected by the KDB_PAGER state variable which would only\nget set when kdb is fully active and initialized.  If we\never encounter changes or defects in the KDB_PAGER state\nwe do not want to crash the kernel in a kdb_printf/printk.\n\nCC: Tim Bird \u003ctim.bird@am.sony.com\u003e\nReported-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "7fda0412c5f7afdd1a5ff518f98dee5157266d8a",
      "tree": "d312af46758fa9b59431a479d258b54184a00591",
      "parents": [
        "6b8212a313dae341ef3a2e413dfec5c4dea59617",
        "160594e99dbbb0a5600ad922c630952c7c1c14bf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:46:05 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:46:05 2012 -0700"
      },
      "message": "Merge branch \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler fixes from Ingo Molnar.\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  cpusets: Remove an unused variable\n  sched/rt: Improve pick_next_highest_task_rt()\n  sched: Fix select_fallback_rq() vs cpu_active/cpu_online\n  sched/x86/smp: Do not enable IRQs over calibrate_delay()\n  sched: Fix compiler warning about declared inline after use\n  MAINTAINERS: Update email address for SCHEDULER and PERF EVENTS\n"
    },
    {
      "commit": "6b8212a313dae341ef3a2e413dfec5c4dea59617",
      "tree": "bbca09d88f61f999c7714fe82710bdfe6ee0e98b",
      "parents": [
        "bcd550745fc54f789c14e7526e0633222c505faa",
        "8abc3122aa02567bfe626cd13f4d34853c9b1225"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:28:26 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:28:26 2012 -0700"
      },
      "message": "Merge branch \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 updates from Ingo Molnar.\n\nThis touches some non-x86 files due to the sanitized INLINE_SPIN_UNLOCK\nconfig usage.\n\nFixed up trivial conflicts due to just header include changes (removing\nheaders due to cpu_idle() merge clashing with the \u003casm/system.h\u003e split).\n\n* \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86/apic/amd: Be more verbose about LVT offset assignments\n  x86, tls: Off by one limit check\n  x86/ioapic: Add io_apic_ops driver layer to allow interception\n  x86/olpc: Add debugfs interface for EC commands\n  x86: Merge the x86_32 and x86_64 cpu_idle() functions\n  x86/kconfig: Remove CONFIG_TR\u003dy from the defconfigs\n  x86: Stop recursive fault in print_context_stack after stack overflow\n  x86/io_apic: Move and reenable irq only when CONFIG_GENERIC_PENDING_IRQ\u003dy\n  x86/apic: Add separate apic_id_valid() functions for selected apic drivers\n  locking/kconfig: Simplify INLINE_SPIN_UNLOCK usage\n  x86/kconfig: Update defconfigs\n  x86: Fix excessive MSR print out when show_msr is not specified\n"
    },
    {
      "commit": "bcd550745fc54f789c14e7526e0633222c505faa",
      "tree": "c3fe11a6503b7ffdd4406a9fece5c40b3e2a3f6d",
      "parents": [
        "93f378883cecb9dcb2cf5b51d9d24175906659da",
        "646783a389828e76e813f50791f7999429c821bc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:16:48 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:16:48 2012 -0700"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull timer core updates from Thomas Gleixner.\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  ia64: vsyscall: Add missing paranthesis\n  alarmtimer: Don\u0027t call rtc_timer_init() when CONFIG_RTC_CLASS\u003dn\n  x86: vdso: Put declaration before code\n  x86-64: Inline vdso clock_gettime helpers\n  x86-64: Simplify and optimize vdso clock_gettime monotonic variants\n  kernel-time: fix s/then/than/ spelling errors\n  time: remove no_sync_cmos_clock\n  time: Avoid scary backtraces when warning of \u003e 11% adj\n  alarmtimer: Make sure we initialize the rtctimer\n  ntp: Fix leap-second hrtimer livelock\n  x86, tsc: Skip refined tsc calibration on systems with reliable TSC\n  rtc: Provide flag for rtc devices that don\u0027t support UIE\n  ia64: vsyscall: Use seqcount instead of seqlock\n  x86: vdso: Use seqcount instead of seqlock\n  x86: vdso: Remove bogus locking in update_vsyscall_tz()\n  time: Remove bogus comments\n  time: Fix change_clocksource locking\n  time: x86: Fix race switching from vsyscall to non-vsyscall clock\n"
    },
    {
      "commit": "092b2fb0766e7a0bf2e50d9cdd7d3b6bb5d12e19",
      "tree": "dafeb26d9e12262c602469a2bc7e5484ab1ce188",
      "parents": [
        "b5174fa3a7f4f8f150bfa3b917c92608953dfa0f"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Thu Mar 29 14:10:30 2012 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Thu Mar 29 14:31:02 2012 -0600"
      },
      "message": "irqdomain: Remove powerpc dependency from debugfs file\n\nThe debugfs code is really generic for all platforms.  This patch removes the\npowerpc-specific directory reference and makes it available to all\narchitectures.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "9612090527526a15832480c48b1f4b39e93e8a35",
      "tree": "d34a4459c33251ed9dbcb395eb41dce790b9b75e",
      "parents": [
        "13614e0fb1a8840c134be35c179ff23e23676304"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Mar 28 08:44:07 2012 +0200"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Mar 29 19:52:46 2012 +0800"
      },
      "message": "padata: Fix cpu hotplug\n\nWe don\u0027t remove the cpu that went offline from our cpumasks\non cpu hotplug. This got lost somewhere along the line, so\nrestore it. This fixes a hang of the padata instance on cpu\nhotplug.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "13614e0fb1a8840c134be35c179ff23e23676304",
      "tree": "e9fb16b0d3840562ebe5b5a8f2eb6e37f9e26a8d",
      "parents": [
        "107f8bdac992356b3a80d41c9f6ff4399159aa81"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Mar 28 08:43:21 2012 +0200"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Mar 29 19:52:46 2012 +0800"
      },
      "message": "padata: Use the online cpumask as the default\n\nWe use the active cpumask to determine the superset of cpus\nto use for parallelization. However, the active cpumask is\nfor internal usage of the scheduler and therefore not the\nappropriate cpumask for these purposes. So use the online\ncpumask instead.\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "107f8bdac992356b3a80d41c9f6ff4399159aa81",
      "tree": "7eae814e5a38514d12aea5aba0896cb6cf40697e",
      "parents": [
        "6a76a6992341faab0ef31e7d97000e0cf336d0ba"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Mar 28 08:42:34 2012 +0200"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Mar 29 19:52:45 2012 +0800"
      },
      "message": "padata: Add a reference to the api documentation\n\nAdd a reference to the padata api documentation at Documentation/padata.txt\n\nSuggested-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "1f56ee7b68fecd45d25bdcf2eda7507797594424",
      "tree": "782ec71491cdfb0ce5d5117428be6c3af7070207",
      "parents": [
        "6135fc1eb4b1c9ae5f535507ed59591bab51e630",
        "01f23e1630d944f7085cd8fd5793e31ea91c03d8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Mar 29 12:48:15 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Mar 29 12:48:22 2012 +0200"
      },
      "message": "Merge branch \u0027sched/arch\u0027 into sched/urgent\n\nMerge reason: It has not gone upstream via the ARM tree, merge it via\n              the scheduler tree.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ec0c4274e33c0373e476b73e01995c53128f1257",
      "tree": "9a73585bde46f22b3896191efe57393d19966b32",
      "parents": [
        "bdbb776f882f5ad431aa1e694c69c1c3d6a4a5b8"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Fri Mar 23 12:08:55 2012 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 29 11:37:17 2012 +0200"
      },
      "message": "futex: Mark get_robust_list as deprecated\n\nNotify get_robust_list users that the syscall is going away.\n\nSuggested-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Darren Hart \u003cdvhart@linux.intel.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Jiri Kosina \u003cjkosina@suse.cz\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Serge E. Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: kernel-hardening@lists.openwall.com\nCc: spender@grsecurity.net\nLink: http://lkml.kernel.org/r/20120323190855.GA27213@www.outflux.net\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "bdbb776f882f5ad431aa1e694c69c1c3d6a4a5b8",
      "tree": "854b6b5869857d40a02d21bb51b375812bdb2ed0",
      "parents": [
        "b5174fa3a7f4f8f150bfa3b917c92608953dfa0f"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Mon Mar 19 16:12:53 2012 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 29 11:37:17 2012 +0200"
      },
      "message": "futex: Do not leak robust list to unprivileged process\n\nIt was possible to extract the robust list head address from a setuid\nprocess if it had used set_robust_list(), allowing an ASLR info leak. This\nchanges the permission checks to be the same as those used for similar\ninfo that comes out of /proc.\n\nRunning a setuid program that uses robust futexes would have had:\n  cred-\u003eeuid !\u003d pcred-\u003eeuid\n  cred-\u003eeuid \u003d\u003d pcred-\u003euid\nso the old permissions check would allow it. I\u0027m not aware of any setuid\nprograms that use robust futexes, so this is just a preventative measure.\n\n(This patch is based on changes from grsecurity.)\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Darren Hart \u003cdvhart@linux.intel.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Jiri Kosina \u003cjkosina@suse.cz\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Serge E. Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: kernel-hardening@lists.openwall.com\nCc: spender@grsecurity.net\nLink: http://lkml.kernel.org/r/20120319231253.GA20893@www.outflux.net\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "241fc640be783f903e74b6d9c68481c01873f758",
      "tree": "253793b9f94721554c3aa2b286ca27052b3390e8",
      "parents": [
        "f3f79e38d51f8a419f4c484a86ece4baea35b993"
      ],
      "author": {
        "name": "Prarit Bhargava",
        "email": "prarit@redhat.com",
        "time": "Mon Mar 26 15:02:18 2012 -0400"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 29 11:31:53 2012 +0200"
      },
      "message": "genirq: Respect NUMA node affinity in setup_irq_irq affinity()\n\nWe respect node affinity of devices already in the irq descriptor\nallocation, but we ignore it for the initial interrupt affinity\nsetup, so the interrupt might be routed to a different node.\n\nRestrict the default affinity mask to the node on which the irq\ndescriptor is allocated.\n\n[ tglx: Massaged changelog ]\n\nSigned-off-by: Prarit Bhargava \u003cprarit@redhat.com\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nLink: http://lkml.kernel.org/r/1332788538-17425-1-git-send-email-prarit@redhat.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "f3f79e38d51f8a419f4c484a86ece4baea35b993",
      "tree": "ea1bd43fbd35efcf914b1717f7eca605478670a9",
      "parents": [
        "69592db298e400a7c175c4dfbe7a086c783f349d"
      ],
      "author": {
        "name": "Alexander Gordeev",
        "email": "agordeev@redhat.com",
        "time": "Wed Mar 21 17:22:35 2012 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 29 11:31:53 2012 +0200"
      },
      "message": "genirq: Get rid of unneeded force parameter in irq_finalize_oneshot()\n\nThe only place irq_finalize_oneshot() is called with force parameter set\nis the threaded handler error exit path. But IRQTF_RUNTHREAD is dropped\nat this point and irq_wake_thread() is not going to set it again,\nsince PF_EXITING is set for this thread already. So irq_finalize_oneshot()\nwill drop the threads bit in threads_oneshot anyway and hence the force\nparameter is superfluous.\n\nSigned-off-by: Alexander Gordeev \u003cagordeev@redhat.com\u003e\nLink: http://lkml.kernel.org/r/20120321162234.GP24806@dhcp-26-207.brq.redhat.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    }
  ],
  "next": "69592db298e400a7c175c4dfbe7a086c783f349d"
}
