)]}'
{
  "log": [
    {
      "commit": "f262af3d08d3fffc4e11277d3a177b2d67ea2aba",
      "tree": "cf5e4ac1bc39fe46cfbf4d17a0e9c71ee43b9728",
      "parents": [
        "1014cfe2fb4cdd663137aafb21448cb613dd6a7d",
        "72d5a9f7a9542f88397558c65bcfc3b115a65e34"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 18 08:17:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 18 08:17:58 2010 -0700"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (24 commits)\n  rcu: remove all rcu head initializations, except on_stack initializations\n  rcu head introduce rcu head init on stack\n  Debugobjects transition check\n  rcu: fix build bug in RCU_FAST_NO_HZ builds\n  rcu: RCU_FAST_NO_HZ must check RCU dyntick state\n  rcu: make SRCU usable in modules\n  rcu: improve the RCU CPU-stall warning documentation\n  rcu: reduce the number of spurious RCU_SOFTIRQ invocations\n  rcu: permit discontiguous cpu_possible_mask CPU numbering\n  rcu: improve RCU CPU stall-warning messages\n  rcu: print boot-time console messages if RCU configs out of ordinary\n  rcu: disable CPU stall warnings upon panic\n  rcu: enable CPU_STALL_VERBOSE by default\n  rcu: slim down rcutiny by removing rcu_scheduler_active and friends\n  rcu: refactor RCU\u0027s context-switch handling\n  rcu: rename rcutiny rcu_ctrlblk to rcu_sched_ctrlblk\n  rcu: shrink rcutiny by making synchronize_rcu_bh() be inline\n  rcu: fix now-bogus rcu_scheduler_active comments.\n  rcu: Fix bogus CONFIG_PROVE_LOCKING in comments to reflect reality.\n  rcu: ignore offline CPUs in last non-dyntick-idle CPU check\n  ...\n"
    },
    {
      "commit": "1014cfe2fb4cdd663137aafb21448cb613dd6a7d",
      "tree": "13b5fc4e7036b4226d94bd33aefb74a3dbb25b6a",
      "parents": [
        "8123d8f17d8ba9d67e556688e4f025456ca97842",
        "4726f2a617ebd868a4fdeb5679613b897e5f1676"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 18 08:17:35 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 18 08:17:35 2010 -0700"
      },
      "message": "Merge branch \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  lockdep: Reduce stack_trace usage\n  lockdep: No need to disable preemption in debug atomic ops\n  lockdep: Actually _dec_ in debug_atomic_dec\n  lockdep: Provide off case for redundant_hardirqs_on increment\n  lockdep: Simplify debug atomic ops\n  lockdep: Fix redundant_hardirqs_on incremented with irqs enabled\n  lockstat: Make lockstat counting per cpu\n  i8253: Convert i8253_lock to raw_spinlock\n"
    },
    {
      "commit": "3d2c978e0cd8b1157f9eebd13062d61fb7a75ad5",
      "tree": "d7e221e70d14aae2b4e5972ed9715a2cb18a3b98",
      "parents": [
        "81880d603d00c645e0890d0a44d50711c503b72b",
        "b8bc1389b74c2b66255651a6fcfae56c78b6e63f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 17 13:48:10 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 17 13:48:10 2010 -0700"
      },
      "message": "Merge branch \u0027bkl/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing\n\n* \u0027bkl/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing:\n  ptrace: Cleanup useless header\n  ptrace: kill BKL in ptrace syscall\n"
    },
    {
      "commit": "16a2164bb03612efe79a76c73da6da44445b9287",
      "tree": "980cb743acfe0a295d3bc70c263abcd20fd6ba80",
      "parents": [
        "bfcc6e2eca507819e297a4c758ebd6b26e625330"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Fri May 14 19:44:10 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 14 19:45:06 2010 -0700"
      },
      "message": "profile: fix stats and data leakage\n\nIf the kernel is large or the profiling step small, /proc/profile\nleaks data and readprofile shows silly stats, until readprofile -r\nhas reset the buffer: clear the prof_buffer when it is vmalloc()ed.\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "747388d78a0ae768fd82b55c4ed38aa646a72364",
      "tree": "03efabf9761209cffef4e8da9b6989887f76428e",
      "parents": [
        "7f0f15464185a92f9d8791ad231bcd7bf6df54e4"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Tue May 11 14:06:59 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 11 17:33:42 2010 -0700"
      },
      "message": "memcg: fix css_is_ancestor() RCU locking\n\nSome callers (in memcontrol.c) calls css_is_ancestor() without\nrcu_read_lock.  Because css_is_ancestor() has to access RCU protected\ndata, it should be under rcu_read_lock().\n\nThis makes css_is_ancestor() itself does safe access to RCU protected\narea.  (At least, \"root\" can have refcnt\u003d\u003d0 if it\u0027s not an ancestor of\n\"child\".  So, we need rcu_read_lock().)\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7f0f15464185a92f9d8791ad231bcd7bf6df54e4",
      "tree": "a1d4f4c39632659497963b0ccf62828237478d72",
      "parents": [
        "11cad320a4f4bc53d3585c85600c782faa12b99e"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Tue May 11 14:06:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 11 17:33:42 2010 -0700"
      },
      "message": "memcg: fix css_id() RCU locking for real\n\nCommit ad4ba375373937817404fd92239ef4cadbded23b (\"memcg: css_id() must be\ncalled under rcu_read_lock()\") modifies memcontol.c for fixing RCU check\nmessage.  But Andrew Morton pointed out that the fix doesn\u0027t seems sane\nand it was just for hidining lockdep messages.\n\nThis is a patch for do proper things.  Checking again, all places,\naccessing without rcu_read_lock, that commit fixies was intentional....\nall callers of css_id() has reference count on it.  So, it\u0027s not necessary\nto be under rcu_read_lock().\n\nConsidering again, we can use rcu_dereference_check for css_id().  We know\ncss-\u003eid is valid if css-\u003erefcnt \u003e 0.  (css-\u003eid never changes and freed\nafter css-\u003erefcnt going to be 0.)\n\nThis patch makes use of rcu_dereference_check() in css_id/depth and remove\nunnecessary rcu-read-lock added by the commit.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "11cad320a4f4bc53d3585c85600c782faa12b99e",
      "tree": "6e246590d7905d42b7e298817e1df90381a1e9e4",
      "parents": [
        "ab941e0fff3947b6dcc9c578d918d1bba54a6874"
      ],
      "author": {
        "name": "Vitaliy Gusev",
        "email": "vgusev@openvz.org",
        "time": "Tue May 11 14:06:56 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 11 17:33:42 2010 -0700"
      },
      "message": "bsdacct: use del_timer_sync() in acct_exit_ns()\n\nacct_exit_ns --\u003e acct_file_reopen deletes timer without check timer\nexecution on other CPUs.  So acct_timeout() can change an unmapped memory.\n\nSigned-off-by: Vitaliy Gusev \u003cvgusev@openvz.org\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "475f9aa6aa538befcbd0fa95bdebada600f247cd",
      "tree": "204167585e965b67a3b95b972744a96069f0169a",
      "parents": [
        "d586ebbb8814e039545d38f69029533f3f17748d"
      ],
      "author": {
        "name": "Vitaly Mayatskikh",
        "email": "v.mayatskih@gmail.com",
        "time": "Tue May 11 14:06:51 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 11 17:33:42 2010 -0700"
      },
      "message": "kexec: fix OOPS in crash_kernel_shrink\n\nTwo \"echo 0 \u003e /sys/kernel/kexec_crash_size\" OOPSes kernel.  Also content\nof this file is invalid after first shrink to zero: it shows 1 instead of\n0.\n\nThis scenario is unlikely to happen often (root privs, valid crashkernel\u003d\nin cmdline, dump-capture kernel not loaded), I hit it only by chance.\n\nThis patch fixes it.\n\nSigned-off-by: Vitaly Mayatskikh \u003cv.mayatskih@gmail.com\u003e\nCc: Cong Wang \u003camwang@redhat.com\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "34441427aab4bdb3069a4ffcda69a99357abcb2e",
      "tree": "3beebde910f25b0945e9105017fd743c9e5241a5",
      "parents": [
        "3c904afd7358e9ef515eb5df36b6f25c2b7fc2da"
      ],
      "author": {
        "name": "Robin Holt",
        "email": "holt@sgi.com",
        "time": "Tue May 11 14:06:46 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 11 17:33:41 2010 -0700"
      },
      "message": "revert \"procfs: provide stack information for threads\" and its fixup commits\n\nOriginally, commit d899bf7b (\"procfs: provide stack information for\nthreads\") attempted to introduce a new feature for showing where the\nthreadstack was located and how many pages are being utilized by the\nstack.\n\nCommit c44972f1 (\"procfs: disable per-task stack usage on NOMMU\") was\napplied to fix the NO_MMU case.\n\nCommit 89240ba0 (\"x86, fs: Fix x86 procfs stack information for threads on\n64-bit\") was applied to fix a bug in ia32 executables being loaded.\n\nCommit 9ebd4eba7 (\"procfs: fix /proc/\u003cpid\u003e/stat stack pointer for kernel\nthreads\") was applied to fix a bug which had kernel threads printing a\nuserland stack address.\n\nCommit 1306d603f (\u0027proc: partially revert \"procfs: provide stack\ninformation for threads\"\u0027) was then applied to revert the stack pages\nbeing used to solve a significant performance regression.\n\nThis patch nearly undoes the effect of all these patches.\n\nThe reason for reverting these is it provides an unusable value in\nfield 28.  For x86_64, a fork will result in the task-\u003estack_start\nvalue being updated to the current user top of stack and not the stack\nstart address.  This unpredictability of the stack_start value makes\nit worthless.  That includes the intended use of showing how much stack\nspace a thread has.\n\nOther architectures will get different values.  As an example, ia64\ngets 0.  The do_fork() and copy_process() functions appear to treat the\nstack_start and stack_size parameters as architecture specific.\n\nI only partially reverted c44972f1 (\"procfs: disable per-task stack usage\non NOMMU\") .  If I had completely reverted it, I would have had to change\nmm/Makefile only build pagewalk.o when CONFIG_PROC_PAGE_MONITOR is\nconfigured.  Since I could not test the builds without significant effort,\nI decided to not change mm/Makefile.\n\nI only partially reverted 89240ba0 (\"x86, fs: Fix x86 procfs stack\ninformation for threads on 64-bit\") .  I left the KSTK_ESP() change in\nplace as that seemed worthwhile.\n\nSigned-off-by: Robin Holt \u003cholt@sgi.com\u003e\nCc: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Michal Simek \u003cmonstr@monstr.eu\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "72d5a9f7a9542f88397558c65bcfc3b115a65e34",
      "tree": "e46d3ad1948de45b9641d1a8b88f88bfb3809007",
      "parents": [
        "4376030a54860dedab9d848dfa7cc700a6025c0b"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 17:12:17 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue May 11 16:10:47 2010 -0700"
      },
      "message": "rcu: remove all rcu head initializations, except on_stack initializations\n\nRemove all rcu head inits. We don\u0027t care about the RCU head state before passing\nit to call_rcu() anyway. Only leave the \"on_stack\" variants so debugobjects can\nkeep track of objects on stack.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "d822ed1094032ab524344a9a474c93128d9c2159",
      "tree": "36f4a24c7501c799a071384e4450a823b387d18b",
      "parents": [
        "77e38ed347162423c6b72e06c865a121081c2bb6"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 08 19:58:22 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:35 2010 -0700"
      },
      "message": "rcu: fix build bug in RCU_FAST_NO_HZ builds\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "77e38ed347162423c6b72e06c865a121081c2bb6",
      "tree": "328b746af71b47c4af97e6ea06dc24b12528a955",
      "parents": [
        "d14aada8e20bdf81ffd43f433b123972cf575b32"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sun Apr 25 21:04:29 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:35 2010 -0700"
      },
      "message": "rcu: RCU_FAST_NO_HZ must check RCU dyntick state\n\nThe current version of RCU_FAST_NO_HZ reproduces the old CLASSIC_RCU\ndyntick-idle bug, as it fails to detect CPUs that have interrupted\nor NMIed out of dyntick-idle mode.  Fix this by making rcu_needs_cpu()\ncheck the state in the per-CPU rcu_dynticks variables, thus correctly\ndetecting the dyntick-idle state from an RCU perspective.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "d21670acab9fcb4bc74a40b68a6941059234c55c",
      "tree": "6a4c054bc4dbadf0524b4e221889a8da558dbdaf",
      "parents": [
        "4a90a0681cf6cd21cd444184302aa045156486b3"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Apr 14 17:39:26 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:35 2010 -0700"
      },
      "message": "rcu: reduce the number of spurious RCU_SOFTIRQ invocations\n\nLai Jiangshan noted that up to 10% of the RCU_SOFTIRQ are spurious, and\ntraced this down to the fact that the current grace-period machinery\nwill uselessly raise RCU_SOFTIRQ when a given CPU needs to go through\na quiescent state, but has not yet done so.  In this situation, there\nmight well be nothing that RCU_SOFTIRQ can do, and the overhead can be\nworth worrying about in the ksoftirqd case.  This patch therefore avoids\nraising RCU_SOFTIRQ in this situation.\n\nChanges since v1 (http://lkml.org/lkml/2010/3/30/122 from Lai Jiangshan):\n\no\tOmit the rcu_qs_pending() prechecks, as they aren\u0027t that\n\tmuch less expensive than the quiescent-state checks.\n\no\tMerge with the set_need_resched() patch that reduces IPIs.\n\no\tAdd the new n_rp_report_qs field to the rcu_pending tracing output.\n\no\tUpdate the tracing documentation accordingly.\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": "4a90a0681cf6cd21cd444184302aa045156486b3",
      "tree": "5e54587e0844d51f6c015f4c489cbf021c9db509",
      "parents": [
        "4300aa642cc9ecb35f2e0683dd294fb790ef028c"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Apr 14 16:48:11 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:35 2010 -0700"
      },
      "message": "rcu: permit discontiguous cpu_possible_mask CPU numbering\n\nTREE_RCU assumes that CPU numbering is contiguous, but some users need\nlarge holes in the numbering to better map to hardware layout.  This patch\nmakes TREE_RCU (and TREE_PREEMPT_RCU) tolerate large holes in the CPU\nnumbering.  However, NR_CPUS must still be greater than the largest\nCPU number.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "4300aa642cc9ecb35f2e0683dd294fb790ef028c",
      "tree": "b70d676b02c6311a638fdaa6f3df8773b39fade1",
      "parents": [
        "26845c2860cebebe6ce2d9d01ae3cb3db84b7e29"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Apr 13 16:18:22 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:34 2010 -0700"
      },
      "message": "rcu: improve RCU CPU stall-warning messages\n\nThe existing RCU CPU stall-warning messages can be confusing, especially\nin the case where one CPU detects a single other stalled CPU.  In addition,\nthe console messages did not say which flavor of RCU detected the stall,\nwhich can make it difficult to work out exactly what is causing the stall.\nThis commit improves these messages.\n\nRequested-by: Dhaval Giani \u003cdhaval.giani@gmail.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "26845c2860cebebe6ce2d9d01ae3cb3db84b7e29",
      "tree": "83849948ea7bffb5e87eecc17a7275e357740632",
      "parents": [
        "c68de2097a8799549a3c3bf27cbfeea24a604284"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Apr 13 14:19:23 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:34 2010 -0700"
      },
      "message": "rcu: print boot-time console messages if RCU configs out of ordinary\n\nPrint boot-time messages if tracing is enabled, if fanout is set\nto non-default values, if exact fanout is specified, if accelerated\ndyntick-idle grace periods have been enabled, if RCU-lockdep is enabled,\nif rcutorture has been boot-time enabled, if the CPU stall detector has\nbeen disabled, or if four-level hierarchy has been enabled.\n\nThis is all for TREE_RCU and TREE_PREEMPT_RCU.  TINY_RCU will be handled\nseparately, if at all.\n\nSuggested-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "c68de2097a8799549a3c3bf27cbfeea24a604284",
      "tree": "acf2e5cb6de06185002a7d22daa91d893068551b",
      "parents": [
        "55ec936ff4e57cc626db336a7bf33b267390e9b4"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Apr 15 10:12:40 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:34 2010 -0700"
      },
      "message": "rcu: disable CPU stall warnings upon panic\n\nThe current RCU CPU stall warnings remain enabled even after a panic\noccurs, which some people have found to be a bit counterproductive.\nThis patch therefore uses a notifier to disable stall warnings once a\npanic occurs.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "bbad937983147c017c25406860287cb94da9af7c",
      "tree": "57311598c360b92b189c7ec337146e4bc779c73d",
      "parents": [
        "25502a6c13745f4650cc59322bd198194f55e796"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Fri Apr 02 16:17:17 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:34 2010 -0700"
      },
      "message": "rcu: slim down rcutiny by removing rcu_scheduler_active and friends\n\nTINY_RCU does not need rcu_scheduler_active unless CONFIG_DEBUG_LOCK_ALLOC.\nSo conditionally compile rcu_scheduler_active in order to slim down\nrcutiny a bit more.  Also gets rid of an EXPORT_SYMBOL_GPL, which is\nresponsible for most of the slimming.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "25502a6c13745f4650cc59322bd198194f55e796",
      "tree": "d76cc659d3ea797c5da4630e219ac363d17c44a6",
      "parents": [
        "99652b54de1ee094236f7171485214071af4ef31"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Apr 01 17:37:01 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:33 2010 -0700"
      },
      "message": "rcu: refactor RCU\u0027s context-switch handling\n\nThe addition of preemptible RCU to treercu resulted in a bit of\nconfusion and inefficiency surrounding the handling of context switches\nfor RCU-sched and for RCU-preempt.  For RCU-sched, a context switch\nis a quiescent state, pure and simple, just like it always has been.\nFor RCU-preempt, a context switch is in no way a quiescent state, but\nspecial handling is required when a task blocks in an RCU read-side\ncritical section.\n\nHowever, the callout from the scheduler and the outer loop in ksoftirqd\nstill calls something named rcu_sched_qs(), whose name is no longer\naccurate.  Furthermore, when rcu_check_callbacks() notes an RCU-sched\nquiescent state, it ends up unnecessarily (though harmlessly, aside\nfrom the performance hit) enqueuing the current task if it happens to\nbe running in an RCU-preempt read-side critical section.  This not only\nincreases the maximum latency of scheduler_tick(), it also needlessly\nincreases the overhead of the next outermost rcu_read_unlock() invocation.\n\nThis patch addresses this situation by separating the notion of RCU\u0027s\ncontext-switch handling from that of RCU-sched\u0027s quiescent states.\nThe context-switch handling is covered by rcu_note_context_switch() in\ngeneral and by rcu_preempt_note_context_switch() for preemptible RCU.\nThis permits rcu_sched_qs() to handle quiescent states and only quiescent\nstates.  It also reduces the maximum latency of scheduler_tick(), though\nprobably by much less than a microsecond.  Finally, it means that tasks\nwithin preemptible-RCU read-side critical sections avoid incurring the\noverhead of queuing unless there really is a context switch.\n\nSuggested-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\n"
    },
    {
      "commit": "99652b54de1ee094236f7171485214071af4ef31",
      "tree": "fd3691aacd46a6afd9ee6ae6f38ca5e9aafb5783",
      "parents": [
        "da848c47bc6e873a54a445ea1960423a495b6b32"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Mar 30 15:50:01 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:32 2010 -0700"
      },
      "message": "rcu: rename rcutiny rcu_ctrlblk to rcu_sched_ctrlblk\n\nMake naming line up in preparation for CONFIG_TINY_PREEMPT_RCU.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "da848c47bc6e873a54a445ea1960423a495b6b32",
      "tree": "4c0eaef1a5990585730f00caca0cfcba21fe9f9f",
      "parents": [
        "32c141a0a1dfa29e0a07d78bec0c0919fc4b9f88"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Mar 30 15:46:01 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:32 2010 -0700"
      },
      "message": "rcu: shrink rcutiny by making synchronize_rcu_bh() be inline\n\nBecause synchronize_rcu_bh() is identical to synchronize_sched(),\nmake the former a static inline invoking the latter, saving the\noverhead of an EXPORT_SYMBOL_GPL() and the duplicate code.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "5db356736acb9ba717df1aa9444e4e44cbb30a71",
      "tree": "719d734fc3ef0f5fca3a7bf12a00dccfde278864",
      "parents": [
        "0c34029abdfdea64420cb4264c4e91a776b22157"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Mar 30 18:40:36 2010 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:31 2010 -0700"
      },
      "message": "rcu: ignore offline CPUs in last non-dyntick-idle CPU check\n\nOffline CPUs are not in nohz_cpu_mask, but can be ignored when checking\nfor the last non-dyntick-idle CPU.  This patch therefore only checks\nonline CPUs for not being dyntick idle, allowing fast entry into\nfull-system dyntick-idle state even when there are some offline CPUs.\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": "0c34029abdfdea64420cb4264c4e91a776b22157",
      "tree": "9025ccfef4210c04520617a4ae11ec4f24128660",
      "parents": [
        "f261414f0d56dd1a0e34888e27d1d4902ad052f3"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Sun Mar 28 11:12:30 2010 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:31 2010 -0700"
      },
      "message": "rcu: move some code from macro to function\n\nShrink the RCU_INIT_FLAVOR() macro by moving all but the initialization\nof the -\u003erda[] array to rcu_init_one().  The call to rcu_init_one()\ncan then be moved to the end of the RCU_INIT_FLAVOR() macro, which is\nrequired because rcu_boot_init_percpu_data(), which is now called from\nrcu_init_one(), depends on the initialization of the -\u003erda[] array.\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": "f261414f0d56dd1a0e34888e27d1d4902ad052f3",
      "tree": "6779e82e0a520121a8d1b86fbfb248bef3ab201a",
      "parents": [
        "d25eb9442bb2c38c1e742f0fa764d7132d72593f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Sun Mar 28 11:15:20 2010 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:31 2010 -0700"
      },
      "message": "rcu: make dead code really dead\n\ncleanup: make dead code really dead\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": "d25eb9442bb2c38c1e742f0fa764d7132d72593f",
      "tree": "0a2604a3b61ce7a0868c021ac945d9826e0d88f1",
      "parents": [
        "2b3fc35f6919344e3cf722dde8308f47235c0b70"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Mar 18 21:36:51 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:31 2010 -0700"
      },
      "message": "rcu: substitute set_need_resched for sending resched IPIs\n\nThis patch adds a check to __rcu_pending() that does a local\nset_need_resched() if the current CPU is holding up the current grace\nperiod and if force_quiescent_state() will be called soon.  The goal is\nto reduce the probability that force_quiescent_state() will need to do\nsmp_send_reschedule(), which sends an IPI and is therefore more expensive\non most architectures.\n\nSigned-off-by: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "2b3fc35f6919344e3cf722dde8308f47235c0b70",
      "tree": "2bc2cfc9c1a032d51a3d99a10e309e100b9eea4a",
      "parents": [
        "b57f95a38233a2e73b679bea4a5453a1cc2a1cc9"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Apr 20 16:23:07 2010 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 10 11:08:31 2010 -0700"
      },
      "message": "rcu: optionally leave lockdep enabled after RCU lockdep splat\n\nThere is no need to disable lockdep after an RCU lockdep splat,\nso remove the debug_lockdeps_off() from lockdep_rcu_dereference().\nTo avoid repeated lockdep splats, use a static variable in the inlined\nrcu_dereference_check() and rcu_dereference_protected() macros so that\na given instance splats only once, but so that multiple instances can\nbe detected per boot.\n\nThis is controlled by a new config variable CONFIG_PROVE_RCU_REPEATEDLY,\nwhich is disabled by default.  This provides the normal lockdep behavior\nby default, but permits people who want to find multiple RCU-lockdep\nsplats per boot to easily do so.\n\nRequested-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nTested-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "91bc482ec5a615e8ecebc106aaf7d0c267d511de",
      "tree": "ad75789a5825fb2da75b2dbdc02d1969bad9b338",
      "parents": [
        "e8e8fade7b351f131433fa44ca5d4e960e1c0f9c",
        "ee84b8243b07c33a5c8aed42b4b2da60cb16d1d2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 07 13:58:21 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 07 13:58:21 2010 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rcu: create rcu_my_thread_group_empty() wrapper\n  memcg: css_id() must be called under rcu_read_lock()\n  cgroup: Check task_lock in task_subsys_state()\n  sched: Fix an RCU warning in print_task()\n  cgroup: Fix an RCU warning in alloc_css_id()\n  cgroup: Fix an RCU warning in cgroup_path()\n  KEYS: Fix an RCU warning in the reading of user keys\n  KEYS: Fix an RCU warning\n"
    },
    {
      "commit": "4726f2a617ebd868a4fdeb5679613b897e5f1676",
      "tree": "c9eea44c66f98123802d99aad5b3cce93626eda8",
      "parents": [
        "54d47a2be5e7f928fb77b2f5a0761f6bd3c9dbff"
      ],
      "author": {
        "name": "Yong Zhang",
        "email": "yong.zhang@windriver.com",
        "time": "Tue May 04 14:16:48 2010 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri May 07 11:27:26 2010 +0200"
      },
      "message": "lockdep: Reduce stack_trace usage\n\nWhen calling check_prevs_add(), if all validations passed\nadd_lock_to_list() will add new lock to dependency tree and\nalloc stack_trace for each list_entry.\n\nBut at this time, we are always on the same stack, so stack_trace\nfor each list_entry has the same value. This is redundant and eats\nup lots of memory which could lead to warning on low\nMAX_STACK_TRACE_ENTRIES.\n\nUse one copy of stack_trace instead.\n\nV2: As suggested by Peter Zijlstra, move save_trace() from\n    check_prevs_add() to check_prev_add().\n    Add tracking for trylock dependence which is also redundant.\n\nSigned-off-by: Yong Zhang \u003cyong.zhang0@windriver.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20100504065711.GC10784@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ee84b8243b07c33a5c8aed42b4b2da60cb16d1d2",
      "tree": "a5b3cad55179fe8340c6422deaf6e11120222ad1",
      "parents": [
        "ad4ba375373937817404fd92239ef4cadbded23b"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu May 06 09:28:41 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu May 06 09:28:41 2010 -0700"
      },
      "message": "rcu: create rcu_my_thread_group_empty() wrapper\n\nSome RCU-lockdep splat repairs need to know whether they are running\nin a single-threaded process.  Unfortunately, the thread_group_empty()\nprimitive is defined in sched.h, and can induce #include hell.  This\ncommit therefore introduces a rcu_my_thread_group_empty() wrapper that\nis defined in rcupdate.c, thus avoiding the need to include sched.h\neverywhere.\n\nSigned-off-by: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "8777c793d6a24c7f3adf52b1b1086e9706de4589",
      "tree": "87817c46c895307df4f9188e7f13d1f18b0eb01e",
      "parents": [
        "7437e7d3672b6d23c08212c68752c9a9c25f8e9e",
        "47dd5be2d6a82b8153e059a1d09eb3879d485bfd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 05 07:56:36 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 05 07:56:36 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  workqueue: flush_delayed_work: keep the original workqueue for re-queueing\n"
    },
    {
      "commit": "f5fa05d97252b23b12749a7cd02710870c0762b0",
      "tree": "e7c5e2c78a186bd66c63a7eeb61005f5ba90f7f4",
      "parents": [
        "f2809d61d6cf47c2ed2963ba3b4c59e709144ccb",
        "048c852051d2bd5da54a4488bc1f16b0fc74c695"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 04 15:16:15 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 04 15:16:15 2010 -0700"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf: Fix resource leak in failure path of perf_event_open()\n"
    },
    {
      "commit": "f2809d61d6cf47c2ed2963ba3b4c59e709144ccb",
      "tree": "4cfc2aadc16b52ef4562833ea838b34723e6b3fb",
      "parents": [
        "d93ac51c7a129db7a1431d859a3ef45a0b1f3fc5",
        "8b46f880841aac821af8efa6581bb0e46b8b9845"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 04 15:15:43 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 04 15:15:43 2010 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rcu: Fix RCU lockdep splat on freezer_fork path\n  rcu: Fix RCU lockdep splat in set_task_cpu on fork path\n  mutex: Don\u0027t spin when the owner CPU is offline or other weird cases\n"
    },
    {
      "commit": "b629317e66fb1c6066c550dded45ab85a936163c",
      "tree": "f618cd5bc21001144999a48bcb57c4bef725db06",
      "parents": [
        "fae9c791703606636c1220e47f6690660042ce7f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Apr 22 17:30:40 2010 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue May 04 09:25:01 2010 -0700"
      },
      "message": "sched: Fix an RCU warning in print_task()\n\nWith CONFIG_PROVE_RCU\u003dy, a warning can be triggered:\n\n  $ cat /proc/sched_debug\n\n...\nkernel/cgroup.c:1649 invoked rcu_dereference_check() without protection!\n...\n\nBoth cgroup_path() and task_group() should be called with either\nrcu_read_lock or cgroup_mutex held.\n\nThe rcu_dereference_check() does include cgroup_lock_is_held(), so we\nknow that this lock is not held.  Therefore, in a CONFIG_PREEMPT kernel,\nto say nothing of a CONFIG_PREEMPT_RT kernel, the original code could\nhave ended up copying a string out of the freelist.\n\nThis patch inserts RCU read-side primitives needed to prevent this\nscenario.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "fae9c791703606636c1220e47f6690660042ce7f",
      "tree": "c4d1bf20f4b73ee438ae2c3168b9b7ead1418215",
      "parents": [
        "9a9686b634acc5cb6b7c601c171ae64af0318a24"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Apr 22 17:30:00 2010 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue May 04 09:25:00 2010 -0700"
      },
      "message": "cgroup: Fix an RCU warning in alloc_css_id()\n\nWith CONFIG_PROVE_RCU\u003dy, a warning can be triggered:\n\n  # mount -t cgroup -o memory xxx /mnt\n  # mkdir /mnt/0\n\n...\nkernel/cgroup.c:4442 invoked rcu_dereference_check() without protection!\n...\n\nThis is a false-positive. It\u0027s safe to directly access parent_css-\u003eid.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "9a9686b634acc5cb6b7c601c171ae64af0318a24",
      "tree": "4a8431117018d8883c6d34d5c06f2eff99dcfed6",
      "parents": [
        "e35ec2d2c1fc45dd3e46dde74bb0c4c4366125bf"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Apr 22 17:29:24 2010 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue May 04 09:24:59 2010 -0700"
      },
      "message": "cgroup: Fix an RCU warning in cgroup_path()\n\nwith CONFIG_PROVE_RCU\u003dy, a warning can be triggered:\n\n  # mount -t cgroup -o debug xxx /mnt\n  # cat /proc/$$/cgroup\n\n...\nkernel/cgroup.c:1649 invoked rcu_dereference_check() without protection!\n...\n\nThis is a false-positive, because cgroup_path() can be called\nwith either rcu_read_lock() held or cgroup_mutex held.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "54d47a2be5e7f928fb77b2f5a0761f6bd3c9dbff",
      "tree": "f31a627eea303b08da532645fce94cbb4452ec30",
      "parents": [
        "fa9a97dec611c5356301645d576b523ce3919eba"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 04 04:54:47 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 04 05:38:16 2010 +0200"
      },
      "message": "lockdep: No need to disable preemption in debug atomic ops\n\nNo need to disable preemption in the debug_atomic_* ops, as\nwe ensure interrupts are disabled already.\n\nSo let\u0027s use the __this_cpu_ops() rather than this_cpu_ops() that\nenclose the ops in a preempt disabled section.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\n"
    },
    {
      "commit": "fa9a97dec611c5356301645d576b523ce3919eba",
      "tree": "4ce76bb7be82f1909258b601f1b4050dcc784e35",
      "parents": [
        "ba697f40dbb704956a4cf67a7845b538015a01ea"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 04 04:52:48 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 04 05:38:12 2010 +0200"
      },
      "message": "lockdep: Actually _dec_ in debug_atomic_dec\n\nFix a silly copy-paste mistake that was making debug_atomic_dec use\nthis_cpu_inc instead of this_cpu_dec.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\n"
    },
    {
      "commit": "ba697f40dbb704956a4cf67a7845b538015a01ea",
      "tree": "9ab6f1391bd45c52145d04b588e31c2f1abe0c53",
      "parents": [
        "0e417fe1f247bb3ac056ee04604332005c334fac"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 04 04:47:25 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 04 05:37:28 2010 +0200"
      },
      "message": "lockdep: Provide off case for redundant_hardirqs_on increment\n\nWe forgot to provide a !CONFIG_DEBUG_LOCKDEP case for the\nredundant_hardirqs_on stat handling.\n\nManage that in the headers with a new __debug_atomic_inc() helper.\n\nFixes:\n\n\tkernel/lockdep.c:2306: error: \u0027lockdep_stats\u0027 undeclared (first use in this function)\n\tkernel/lockdep.c:2306: error: (Each undeclared identifier is reported only once\n\tkernel/lockdep.c:2306: error: for each function it appears in.)\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\n"
    },
    {
      "commit": "048c852051d2bd5da54a4488bc1f16b0fc74c695",
      "tree": "c1482ae433455c1aa5f2f20c68773f79b60881c8",
      "parents": [
        "66f41d4c5c8a5deed66fdcc84509376c9a0bf9d8"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sat May 01 10:11:35 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat May 01 13:11:25 2010 +0200"
      },
      "message": "perf: Fix resource leak in failure path of perf_event_open()\n\nperf_event_open() kfrees event after init failure which doesn\u0027t\nrelease all resources allocated by perf_event_alloc().  Use\nfree_event() instead.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@au1.ibm.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: \u003cstable@kernel.org\u003e\nLKML-Reference: \u003c4BDBE237.1040809@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "913769f24eadcd38a936ffae41d9b4895ec02e43",
      "tree": "b1786f5789aa015f488a834a675c20120791bce3",
      "parents": [
        "8795d7717c467bea7b0a0649d44a258e09f34db2"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Apr 15 23:10:43 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Apr 30 19:15:56 2010 +0200"
      },
      "message": "lockdep: Simplify debug atomic ops\n\nSimplify debug_atomic_inc/dec by using this_cpu_inc/dec() instead\nof doing it through an indirect get_cpu_var() and a manual\nincrementation.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\n"
    },
    {
      "commit": "8795d7717c467bea7b0a0649d44a258e09f34db2",
      "tree": "33d0dc56ef918bfc7dd615162be20e77899147c5",
      "parents": [
        "868c522b1b75fd3fd3e6a636b4c344ac08edf13a"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Apr 15 23:10:42 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Apr 30 19:15:49 2010 +0200"
      },
      "message": "lockdep: Fix redundant_hardirqs_on incremented with irqs enabled\n\nWhen a path restore the flags while irqs are already enabled, we\nupdate the per cpu var redundant_hardirqs_on in a racy fashion\nand debug_atomic_inc() warns about this situation.\n\nIn this particular case, loosing a few hits in a stat is not a big\ndeal, so increment it without protection.\n\nv2: Don\u0027t bother with disabling irq, we can miss one count in\n    rare situations\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "868c522b1b75fd3fd3e6a636b4c344ac08edf13a",
      "tree": "d85b984d9818abc3ccc0237eb53b710d9e96c39e",
      "parents": [
        "bd6d29c25bb1a24a4c160ec5de43e0004e01f72b",
        "66f41d4c5c8a5deed66fdcc84509376c9a0bf9d8"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Apr 30 19:11:13 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Apr 30 19:12:47 2010 +0200"
      },
      "message": "Merge commit \u0027v2.6.34-rc6\u0027 into core/locking\n\nMerge reason: Further lockdep patches depend on per cpu updates\nmade in -rc1.\n"
    },
    {
      "commit": "8b46f880841aac821af8efa6581bb0e46b8b9845",
      "tree": "4172415abf0f8cbbdd7367023cf521e7a56b9a3a",
      "parents": [
        "8b08ca52f5942c21564bbb90ccfb61053f2c26a1"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Apr 21 13:02:08 2010 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 30 12:03:17 2010 +0200"
      },
      "message": "rcu: Fix RCU lockdep splat on freezer_fork path\n\nAdd an RCU read-side critical section to suppress this false\npositive.\n\nLocated-by: Eric Paris \u003ceparis@parisplace.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nAcked-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: laijs@cn.fujitsu.com\nCc: dipankar@in.ibm.com\nCc: mathieu.desnoyers@polymtl.ca\nCc: josh@joshtriplett.org\nCc: dvhltc@us.ibm.com\nCc: niv@us.ibm.com\nCc: peterz@infradead.org\nCc: rostedt@goodmis.org\nCc: Valdis.Kletnieks@vt.edu\nCc: dhowells@redhat.com\nCc: eric.dumazet@gmail.com\nLKML-Reference: \u003c1271880131-3951-2-git-send-email-paulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8b08ca52f5942c21564bbb90ccfb61053f2c26a1",
      "tree": "3fbba8114fdad7d077390c206ae17c38fbc85cb8",
      "parents": [
        "4b402210486c6414fe5fbfd85934a0a22da56b04"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Wed Apr 21 13:02:07 2010 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 30 12:03:17 2010 +0200"
      },
      "message": "rcu: Fix RCU lockdep splat in set_task_cpu on fork path\n\nAdd an RCU read-side critical section to suppress this false\npositive.\n\nLocated-by: Eric Paris \u003ceparis@parisplace.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: laijs@cn.fujitsu.com\nCc: dipankar@in.ibm.com\nCc: mathieu.desnoyers@polymtl.ca\nCc: josh@joshtriplett.org\nCc: dvhltc@us.ibm.com\nCc: niv@us.ibm.com\nCc: peterz@infradead.org\nCc: rostedt@goodmis.org\nCc: Valdis.Kletnieks@vt.edu\nCc: dhowells@redhat.com\nCc: eric.dumazet@gmail.com\nLKML-Reference: \u003c1271880131-3951-1-git-send-email-paulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "47dd5be2d6a82b8153e059a1d09eb3879d485bfd",
      "tree": "8d67407e8c3e00d303bd59bf97ecad5d08b4dd19",
      "parents": [
        "66f41d4c5c8a5deed66fdcc84509376c9a0bf9d8"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Apr 30 07:23:51 2010 +0200"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Apr 30 07:24:51 2010 +0200"
      },
      "message": "workqueue: flush_delayed_work: keep the original workqueue for re-queueing\n\nflush_delayed_work() always uses keventd_wq for re-queueing,\nbut it should use the workqueue this dwork was queued on.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "b8bc1389b74c2b66255651a6fcfae56c78b6e63f",
      "tree": "dc3d2b1d6beab0dd44ed0dda2e0aa1cc2a99be44",
      "parents": [
        "5534ecb2dda04345e8243901e0e49599228b4273"
      ],
      "author": {
        "name": "Alessio Igor Bogani",
        "email": "abogani@texware.it",
        "time": "Sun Apr 25 13:18:48 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Apr 26 23:42:51 2010 +0200"
      },
      "message": "ptrace: Cleanup useless header\n\nBKL isn\u0027t present anymore into this file thus we can safely remove\nsmp_lock.h inclusion.\n\nSigned-off-by: Alessio Igor Bogani \u003cabogani@texware.it\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "46da27664887fb95cedba53eafcf876de812c8c1",
      "tree": "5a2ee7566cacfeaef874a3306922c40b5d897294",
      "parents": [
        "fb2162df74bb19552db3d988fd11c787cf5fad56"
      ],
      "author": {
        "name": "Andreas Schwab",
        "email": "schwab@linux-m68k.org",
        "time": "Fri Apr 23 13:17:44 2010 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 24 11:31:24 2010 -0700"
      },
      "message": "kernel/sys.c: fix compat uname machine\n\nOn ppc64 you get this error:\n\n  $ setarch ppc -R true\n  setarch: ppc: Unrecognized architecture\n\nbecause uname still reports ppc64 as the machine.\n\nSo mask off the personality flags when checking for PER_LINUX32.\n\nSigned-off-by: Andreas Schwab \u003cschwab@linux-m68k.org\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4b402210486c6414fe5fbfd85934a0a22da56b04",
      "tree": "23e7052c710e0443ccd895a1000b2bdd7723ab51",
      "parents": [
        "d5a30458a90597915977f06e79406b664a41b8ac"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri Apr 16 23:20:00 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 23 11:00:28 2010 +0200"
      },
      "message": "mutex: Don\u0027t spin when the owner CPU is offline or other weird cases\n\nDue to recent load-balancer changes that delay the task migration to\nthe next wakeup, the adaptive mutex spinning ends up in a live lock\nwhen the owner\u0027s CPU gets offlined because the cpu_online() check\nlives before the owner running check.\n\nThis patch changes mutex_spin_on_owner() to return 0 (don\u0027t spin) in\nany case where we aren\u0027t sure about the owner struct validity or CPU\nnumber, and if the said CPU is offline. There is no point going back \u0026\nre-evaluate spinning in corner cases like that, let\u0027s just go to\nsleep.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1271212509.13059.135.camel@pasglop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e134d200d57d43b171dcb0b55c178a1a0c7db14a",
      "tree": "4092cd25cd927eeac87c5bcd49f581a5cd06cbcf",
      "parents": [
        "eff30363c0b8b057f773108589bfd8881659fe74"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Apr 21 10:28:25 2010 +0100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Apr 22 09:14:29 2010 +1000"
      },
      "message": "CRED: Fix a race in creds_are_invalid() in credentials debugging\n\ncreds_are_invalid() reads both cred-\u003eusage and cred-\u003esubscribers and then\ncompares them to make sure the number of processes subscribed to a cred struct\nnever exceeds the refcount of that cred struct.\n\nThe problem is that this can cause a race with both copy_creds() and\nexit_creds() as the two counters, whilst they are of atomic_t type, are only\natomic with respect to themselves, and not atomic with respect to each other.\n\nThis means that if creds_are_invalid() can read the values on one CPU whilst\nthey\u0027re being modified on another CPU, and so can observe an evolving state in\nwhich the subscribers count now is greater than the usage count a moment\nbefore.\n\nSwitching the order in which the counts are read cannot help, so the thing to\ndo is to remove that particular check.\n\nI had considered rechecking the values to see if they\u0027re in flux if the test\nfails, but I can\u0027t guarantee they won\u0027t appear the same, even if they\u0027ve\nchanged several times in the meantime.\n\nNote that this can only happen if CONFIG_DEBUG_CREDENTIALS is enabled.\n\nThe problem is only likely to occur with multithreaded programs, and can be\ntested by the tst-eintr1 program from glibc\u0027s \"make check\".  The symptoms look\nlike:\n\n\tCRED: Invalid credentials\n\tCRED: At include/linux/cred.h:240\n\tCRED: Specified credentials: ffff88003dda5878 [real][eff]\n\tCRED: -\u003emagic\u003d43736564, put_addr\u003d(null)\n\tCRED: -\u003eusage\u003d766, subscr\u003d766\n\tCRED: -\u003e*uid \u003d { 0,0,0,0 }\n\tCRED: -\u003e*gid \u003d { 0,0,0,0 }\n\tCRED: -\u003esecurity is ffff88003d72f538\n\tCRED: -\u003esecurity {359, 359}\n\t------------[ cut here ]------------\n\tkernel BUG at kernel/cred.c:850!\n\t...\n\tRIP: 0010:[\u003cffffffff81049889\u003e]  [\u003cffffffff81049889\u003e] __invalid_creds+0x4e/0x52\n\t...\n\tCall Trace:\n\t [\u003cffffffff8104a37b\u003e] copy_creds+0x6b/0x23f\n\nNote the -\u003eusage\u003d766 and subscr\u003d766.  The values appear the same because\nthey\u0027ve been re-read since the check was made.\n\nReported-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "eff30363c0b8b057f773108589bfd8881659fe74",
      "tree": "6ae631c2fa01174a24da347b68fc25f0c350bc2b",
      "parents": [
        "05ce7bfe547c9fa967d9cab6c37867a9cb6fb3fa"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Apr 20 22:41:18 2010 +0100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Apr 21 09:20:35 2010 +1000"
      },
      "message": "CRED: Fix double free in prepare_usermodehelper_creds() error handling\n\nPatch 570b8fb505896e007fd3bb07573ba6640e51851d:\n\n\tAuthor: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\n\tDate:   Tue Mar 30 00:04:00 2010 +0100\n\tSubject: CRED: Fix memory leak in error handling\n\nattempts to fix a memory leak in the error handling by making the offending\nreturn statement into a jump down to the bottom of the function where a\nkfree(tgcred) is inserted.\n\nThis is, however, incorrect, as it does a kfree() after doing put_cred() if\nsecurity_prepare_creds() fails.  That will result in a double free if \u0027error\u0027\nis jumped to as put_cred() will also attempt to free the new tgcred record by\nvirtue of it being pointed to by the new cred record.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "bc293d62b26ec590afc90a9e0a31c45d355b7bd8",
      "tree": "4b61dee53e849f0ba1d5a7fef58522e224be836e",
      "parents": [
        "50aec0024eccb1d5f540ab64a1958eebcdb9340c"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Apr 15 12:50:39 2010 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 19 08:37:19 2010 +0200"
      },
      "message": "rcu: Make RCU lockdep check the lockdep_recursion variable\n\nThe lockdep facility temporarily disables lockdep checking by\nincrementing the current-\u003elockdep_recursion variable.  Such\ndisabling happens in NMIs and in other situations where lockdep\nmight expect to recurse on itself.\n\nThis patch therefore checks current-\u003elockdep_recursion, disabling RCU\nlockdep splats when this variable is non-zero.  In addition, this patch\nremoves the \"likely()\", as suggested by Lai Jiangshan.\n\nReported-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nReported-by: David Miller \u003cdavem@davemloft.net\u003e\nTested-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: laijs@cn.fujitsu.com\nCc: dipankar@in.ibm.com\nCc: mathieu.desnoyers@polymtl.ca\nCc: josh@joshtriplett.org\nCc: dvhltc@us.ibm.com\nCc: niv@us.ibm.com\nCc: peterz@infradead.org\nCc: rostedt@goodmis.org\nCc: Valdis.Kletnieks@vt.edu\nCc: dhowells@redhat.com\nCc: eric.dumazet@gmail.com\nLKML-Reference: \u003c20100415195039.GA22623@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d88d4050dcaf09e417aaa9a5024dd9449ef71b2e",
      "tree": "5156b4821fdb1a3c13cb9577c93b2eb6acb48814",
      "parents": [
        "0eddb519b9127c73d53db4bf3ec1d45b13f844d1"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Sat Apr 10 22:28:56 2010 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Apr 10 22:28:56 2010 +0200"
      },
      "message": "PM / Hibernate: user.c, fix SNAPSHOT_SET_SWAP_AREA handling\n\nWhen CONFIG_DEBUG_BLOCK_EXT_DEVT is set we decode the device\nimproperly by old_decode_dev and it results in an error while\nhibernating with s2disk.\n\nAll users already pass the new device number, so switch to\nnew_decode_dev().\n\nSigned-off-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nReported-and-tested-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\nSigned-off-by: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "5534ecb2dda04345e8243901e0e49599228b4273",
      "tree": "1d09ca0bcc6fcac12310300a306c233e350151c7",
      "parents": [
        "2eaa9cfdf33b8d7fb7aff27792192e0019ae8fc6"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sat Feb 27 19:49:37 2010 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Apr 10 15:34:21 2010 +0200"
      },
      "message": "ptrace: kill BKL in ptrace syscall\n\nThe comment suggests that this usage is stale. There is no bkl in the\nexec path so if there is a race lurking there, the bkl in ptrace is\nnot going to help in this regard.\n\nOverview of the possibility of \"accidental\" races this bkl might\nprotect:\n\n- ptrace_traceme() is protected against task removal and concurrent\nread/write on current-\u003eptrace as it locks write tasklist_lock.\n\n- arch_ptrace_attach() is serialized by ptrace_traceme() against\nconcurrent PTRACE_TRACEME or PTRACE_ATTACH\n\n- ptrace_attach() is protected the same way ptrace_traceme() and\nin turn serializes arch_ptrace_attach()\n\n- ptrace_check_attach() does its own well described serializing too.\n\nThere is no obvious race here.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\n"
    },
    {
      "commit": "2aedd192f799c362ccefc3c316f0c4bd5154126b",
      "tree": "080ead7bd2c4ae496ef82e9633eadc1d1af28946",
      "parents": [
        "cf90bfe2ebaf9d32f37acbebb7425c280fd6cd30",
        "84fba5ec91f11c0efb27d0ed6098f7447491f0df"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 08 08:37:05 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 08 08:37:05 2010 -0700"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Fix sched_getaffinity()\n"
    },
    {
      "commit": "a3a2e76c77fa22b114e421ac11dec0c56c3503fb",
      "tree": "cc67bbd8d5d364e55ea7a00d0b5ad68d5eac08ac",
      "parents": [
        "b01d0942c2b7a3026d2b7d38b5773d3d00420e06"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Tue Apr 06 14:34:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 07 08:38:02 2010 -0700"
      },
      "message": "mm: avoid null-pointer deref in sync_mm_rss()\n\n- We weren\u0027t zeroing p-\u003erss_stat[] at fork()\n\n- Consequently sync_mm_rss() was dereferencing tsk-\u003emm for kernel\n  threads and was oopsing.\n\n- Make __sync_task_rss_stat() static, too.\n\nAddresses https://bugzilla.kernel.org/show_bug.cgi?id\u003d15648\n\n[akpm@linux-foundation.org: remove the BUG_ON(!mm-\u003erss)]\nReported-by: Troels Liebe Bentsen \u003ctlb@rapanden.dk\u003e\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\n\"Michael S. Tsirkin\" \u003cmst@redhat.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "94c4fcec0144e032ef7d4ec761ab81d570b0bc2a",
      "tree": "b67880526801ce7af4c6bc847fcb1742569dc0f9",
      "parents": [
        "14e71e4fb94c340273534a6d7f210aa82a3ca717",
        "753649dbc49345a73a2454c770a3f2d54d11aec6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 06 13:03:22 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 06 13:03:22 2010 -0700"
      },
      "message": "Merge branch \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  genirq: Force MSI irq handlers to run with interrupts disabled\n"
    },
    {
      "commit": "84fba5ec91f11c0efb27d0ed6098f7447491f0df",
      "tree": "ca48cd8f7baddf29c2bcfc3cc0c7853298449f7b",
      "parents": [
        "db217dece3003df0841bacf9556b5c06aa097dae"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Tue Apr 06 17:02:19 2010 +1000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 06 10:01:35 2010 +0200"
      },
      "message": "sched: Fix sched_getaffinity()\n\ntaskset on 2.6.34-rc3 fails on one of my ppc64 test boxes with\nthe following error:\n\n  sched_getaffinity(0, 16, 0x10029650030) \u003d -1 EINVAL (Invalid argument)\n\nThis box has 128 threads and 16 bytes is enough to cover it.\n\nCommit cd3d8031eb4311e516329aee03c79a08333141f1 (sched:\nsched_getaffinity(): Allow less than NR_CPUS length) is\ncomparing this 16 bytes agains nr_cpu_ids.\n\nFix it by comparing nr_cpu_ids to the number of bits in the\ncpumask we pass in.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Sharyathi Nagesh \u003csharyath@in.ibm.com\u003e\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Russ Anderson \u003crja@sgi.com\u003e\nCc: Mike Travis \u003ctravis@sgi.com\u003e\nLKML-Reference: \u003c20100406070218.GM5594@kryten\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5fbfb18d7a5b846946d52c4a10e3aaa213ec31b6",
      "tree": "bcfa13dec8cb2527c3007b3e5f957cb50e571c64",
      "parents": [
        "7da23b86e14b77c094b11a9fa5ef5b3758fc9193"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Thu Apr 01 19:09:40 2010 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 05 19:50:02 2010 -0700"
      },
      "message": "Fix up possibly racy module refcounting\n\nModule refcounting is implemented with a per-cpu counter for speed.\nHowever there is a race when tallying the counter where a reference may\nbe taken by one CPU and released by another.  Reference count summation\nmay then see the decrement without having seen the previous increment,\nleading to lower than expected count.  A module which never has its\nactual reference drop below 1 may return a reference count of 0 due to\nthis race.\n\nModule removal generally runs under stop_machine, which prevents this\nrace causing bugs due to removal of in-use modules.  However there are\nother real bugs in module.c code and driver code (module_refcount is\nexported) where the callers do not run under stop_machine.\n\nFix this by maintaining running per-cpu counters for the number of\nmodule refcount increments and the number of refcount decrements.  The\nincrements are tallied after the decrements, so any decrement seen will\nalways have its corresponding increment counted.  The final refcount is\nthe difference of the total increments and decrements, preventing a\nlow-refcount from being returned.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bd6d29c25bb1a24a4c160ec5de43e0004e01f72b",
      "tree": "0aa96c7e9fdfbe7dc9c7e40151aed928903240f0",
      "parents": [
        "ced918eb748ce30b3aace549fd17540e40ffdca0"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Apr 06 00:10:17 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 06 00:15:37 2010 +0200"
      },
      "message": "lockstat: Make lockstat counting per cpu\n\nLocking statistics are implemented using global atomic\nvariables. This is usually fine unless some path write them very\noften.\n\nThis is the case for the function and function graph tracers\nthat disable irqs for each entry saved (except if the function\ntracer is in preempt disabled only mode).\nAnd calls to local_irq_save/restore() increment\nhardirqs_on_events and hardirqs_off_events stats (or similar\nstats for redundant versions).\n\nIncrementing these global vars for each function ends up in too\nmuch cache bouncing if lockstats are enabled.\n\nTo solve this, implement the debug_atomic_*() operations using\nper cpu vars.\n\n -v2: Use per_cpu() instead of get_cpu_var() to fetch the desired\n      cpu vars on debug_atomic_read()\n\n -v3: Store the stats in a structure. No need for local_t as we\n      are NMI/irq safe.\n\n -v4: Fix tons of build errors. I thought I had tested it but I\n      probably forgot to select the relevant config.\n\nSuggested-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1270505417-8144-1-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "449cedf099b23a250e7d61982e35555ccb871182",
      "tree": "75c205a2a44146196f916cbc4ec282751f7dad34",
      "parents": [
        "b66696e3c0d8fc01efdbc701eba1276618332cb3"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Apr 05 16:16:26 2010 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 05 13:19:45 2010 -0700"
      },
      "message": "audit: preface audit printk with audit\n\nThere have been a number of reports of people seeing the message:\n\"name_count maxed, losing inode data: dev\u003d00:05, inode\u003d3185\"\nin dmesg.  These usually lead to people reporting problems to the filesystem\ngroup who are in turn clueless what they mean.\n\nEventually someone finds me and I explain what is going on and that\nthese come from the audit system.  The basics of the problem is that the\naudit subsystem never expects a single syscall to \u0027interact\u0027 (for some\nwish washy meaning of interact) with more than 20 inodes.  But in fact\nsome operations like loading kernel modules can cause changes to lots of\ninodes in debugfs.\n\nThere are a couple real fixes being bandied about including removing the\nfixed compile time limit of 20 or not auditing changes in debugfs (or\nboth) but neither are small and obvious so I am not sending them for\nimmediate inclusion (I hope Al forwards a real solution next devel\nwindow).\n\nIn the meantime this patch simply adds \u0027audit\u0027 to the beginning of the\ncrap message so if a user sees it, they come blame me first and we can\ntalk about what it means and make sure we understand all of the reasons\nit can happen and make sure this gets solved correctly in the long run.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b66696e3c0d8fc01efdbc701eba1276618332cb3",
      "tree": "3094ef42787b8e0c900bce1f2391ced081ed1ba4",
      "parents": [
        "9e74e7c81a24aee66024fc477786bd1de84e293b",
        "a32f3926632e71c8aa23ce32fe2625f8d5f792c2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 05 09:39:11 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 05 09:39:11 2010 -0700"
      },
      "message": "Merge branch \u0027slabh\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc\n\n* \u0027slabh\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc:\n  eeepc-wmi: include slab.h\n  staging/otus: include slab.h from usbdrv.h\n  percpu: don\u0027t implicitly include slab.h from percpu.h\n  kmemcheck: Fix build errors due to missing slab.h\n  include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n  iwlwifi: don\u0027t include iwl-dev.h from iwl-devtrace.h\n  x86: don\u0027t include slab.h from arch/x86/include/asm/pgtable_32.h\n\nFix up trivial conflicts in include/linux/percpu.h due to\nis_kernel_percpu_address() having been introduced since the slab.h\ncleanup with the percpu_up.c splitup.\n"
    },
    {
      "commit": "9e74e7c81a24aee66024fc477786bd1de84e293b",
      "tree": "8f172b7e5a86fe6b51e46f1d219e9c0707beab60",
      "parents": [
        "4946d54cb55e86a156216fcfeed5568514b0830f",
        "d5e50daf92df8afcb701fd717b301985691e802f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 05 09:16:37 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 05 09:16:37 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:\n  module: add stub for is_module_percpu_address\n  percpu, module: implement and use is_kernel/module_percpu_address()\n  module: encapsulate percpu handling better and record percpu_size\n"
    },
    {
      "commit": "336f5899d287f06d8329e208fc14ce50f7ec9698",
      "tree": "9b762d450d5eb248a6ff8317badb7e223d93ed58",
      "parents": [
        "a4ab2773205e8b94c18625455f85e3b6bb9d7ad6",
        "db217dece3003df0841bacf9556b5c06aa097dae"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Apr 05 11:37:28 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Apr 05 11:37:28 2010 +0900"
      },
      "message": "Merge branch \u0027master\u0027 into export-slabh\n"
    },
    {
      "commit": "8ce42c8b7fdf4fc008a6fc7349beb8f4dd5cb774",
      "tree": "bc05326ed8ade9137e3ce5fb5b1d439dcdce266f",
      "parents": [
        "0121b0c771f929bb5298554b70843ab46280c298",
        "6e03bb5ad363fdbe4e1e227cfb78f7978c662e18"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 04 12:13:10 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 04 12:13:10 2010 -0700"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf: Always build the powerpc perf_arch_fetch_caller_regs version\n  perf: Always build the stub perf_arch_fetch_caller_regs version\n  perf, probe-finder: Build fix on Debian\n  perf/scripts: Tuple was set from long in both branches in python_process_event()\n  perf: Fix \u0027perf sched record\u0027 deadlock\n  perf, x86: Fix callgraphs of 32-bit processes on 64-bit kernels\n  perf, x86: Fix AMD hotplug \u0026 constraint initialization\n  x86: Move notify_cpu_starting() callback to a later stage\n  x86,kgdb: Always initialize the hw breakpoint attribute\n  perf: Use hot regs with software sched switch/migrate events\n  perf: Correctly align perf event tracing buffer\n"
    },
    {
      "commit": "0121b0c771f929bb5298554b70843ab46280c298",
      "tree": "f6d9f9102eeffdc8231a08c95444136f402ebf5b",
      "parents": [
        "a8941b0ed0f1e39a4d41560c3a2e7ee37d5b6e10",
        "47a70985e5c093ae03d8ccf633c70a93761d86f2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 04 12:12:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 04 12:12:31 2010 -0700"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: set_cpus_allowed_ptr(): Don\u0027t use rq-\u003emigration_thread after unlock\n  sched: Fix proc_sched_set_task()\n"
    },
    {
      "commit": "a8941b0ed0f1e39a4d41560c3a2e7ee37d5b6e10",
      "tree": "cf1a15d5dfc7e1552c12b4a3ec04fa9ee92581ef",
      "parents": [
        "d82ef020cf31504c816803b1def94eb5ff173363",
        "292f60c0c4ab44aa2d589ba03c12e64a3b3c5e38"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 04 12:12:19 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 04 12:12:19 2010 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  ring-buffer: Add missing unlock\n  tracing: Fix lockdep warning in global_clock()\n"
    },
    {
      "commit": "26d80aa782e708c380a47601779d42d30bf016d6",
      "tree": "0d4c1357fa600123d1173d536537a88c8316e031",
      "parents": [
        "b0f86f5a169c758a82b0e23eef6795356f6d5a25"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Apr 03 12:22:05 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Apr 03 12:22:05 2010 +0200"
      },
      "message": "perf: Always build the stub perf_arch_fetch_caller_regs version\n\nNow that software events use perf_arch_fetch_caller_regs() too, we\nneed the stub version to be always built in for archs that don\u0027t\nimplement it.\n\nFixes the following build error in PARISC:\n\n\tkernel/built-in.o: In function `perf_event_task_sched_out\u0027:\n\t(.text.perf_event_task_sched_out+0x54): undefined reference to `perf_arch_fetch_caller_regs\u0027\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "5e123e5d9bf8c4ae44121ffe5e844adeb30ff21b",
      "tree": "55545dab00ec8d15ba75764f80459944b6fd204a",
      "parents": [
        "24b99d1576e6e330c2eba534a793b6e6dcb37f6b",
        "4da75b9ceac6939cd76830ec9581bef5bb398ad3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 02 19:45:05 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 02 19:45:05 2010 -0700"
      },
      "message": "Merge branch \u0027kgdb-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb\n\n* \u0027kgdb-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb:\n  kgdb: Turn off tracing while in the debugger\n  kgdb: use atomic_inc and atomic_dec instead of atomic_set\n  kgdb: eliminate kgdb_wait(), all cpus enter the same way\n  kgdbts,sh: Add in breakpoint pc offset for superh\n  kgdb: have ebin2mem call probe_kernel_write once\n"
    },
    {
      "commit": "24b99d1576e6e330c2eba534a793b6e6dcb37f6b",
      "tree": "c8ad2d4ad7e06161d1b12013e91bf34d5eb9f556",
      "parents": [
        "6da8d866d0d39e9509ff826660f6a86a6757c966",
        "5a7aadfe2fcb0f69e2acc1fbefe22a096e792fc9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 02 19:44:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 02 19:44:42 2010 -0700"
      },
      "message": "Merge branch \u0027pm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027pm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:\n  Freezer: Fix buggy resume test for tasks frozen with cgroup freezer\n  Freezer: Only show the state of tasks refusing to freeze\n"
    },
    {
      "commit": "4da75b9ceac6939cd76830ec9581bef5bb398ad3",
      "tree": "5b4880b07563d13bd17753d0891aae8d8fe77e4d",
      "parents": [
        "ae6bf53e0255c8ab04b6fe31806e318432570e3c"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Apr 02 11:57:18 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Apr 02 14:58:19 2010 -0500"
      },
      "message": "kgdb: Turn off tracing while in the debugger\n\nThe kernel debugger should turn off kernel tracing any time the\ndebugger is active and restore it on resume.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nReviewed-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ae6bf53e0255c8ab04b6fe31806e318432570e3c",
      "tree": "d4726e48bfe5e0dd6ce4061551af3d0518efbe83",
      "parents": [
        "62fae312197a8fbcd3727261d59f5a6bd0dbf158"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Apr 02 14:58:18 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Apr 02 14:58:18 2010 -0500"
      },
      "message": "kgdb: use atomic_inc and atomic_dec instead of atomic_set\n\nMemory barriers should be used for the kgdb cpu synchronization.  The\natomic_set() does not imply a memory barrier.\n\nReported-by: Will Deacon \u003cwill.deacon@arm.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "62fae312197a8fbcd3727261d59f5a6bd0dbf158",
      "tree": "aa5166126f2735545326fe8af8a76627f5760191",
      "parents": [
        "cad08acebf4b7d993b0cefb9af67208c48fb9a5e"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Apr 02 11:47:02 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Apr 02 14:58:18 2010 -0500"
      },
      "message": "kgdb: eliminate kgdb_wait(), all cpus enter the same way\n\nThis is a kgdb architectural change to have all the cpus (master or\nslave) enter the same function.\n\nA cpu that hits an exception (wants to be the master cpu) will call\nkgdb_handle_exception() from the trap handler and then invoke a\nkgdb_roundup_cpu() to synchronize the other cpus and bring them into\nthe kgdb_handle_exception() as well.\n\nA slave cpu will enter kgdb_handle_exception() from the\nkgdb_nmicallback() and set the exception state to note that the\nprocessor is a slave.\n\nPreviously the salve cpu would have called kgdb_wait().  This change\nallows the debug core to change cpus without resuming the system in\norder to inspect arch specific cpu information.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "a0279bd58060ccedbd414edf97d50cfa3778c370",
      "tree": "af70474c8f284ce4a0429b22417699fa7b40e9a5",
      "parents": [
        "42be79e37e264557f12860fa4cc84b4de3685954"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Apr 02 11:33:29 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Apr 02 14:58:17 2010 -0500"
      },
      "message": "kgdb: have ebin2mem call probe_kernel_write once\n\nRather than call probe_kernel_write() one byte at a time, process the\nwhole buffer locally and pass the entire result in one go.  This way,\narchitectures that need to do special handling based on the length can\ndo so, or we only end up calling memcpy() once.\n\n[sonic.zhang@analog.com: Reported original problem and preliminary patch]\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Sonic Zhang \u003csonic.zhang@analog.com\u003e\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\n"
    },
    {
      "commit": "47a70985e5c093ae03d8ccf633c70a93761d86f2",
      "tree": "cabda69d97cd880d9b3de382d41b6b7736575a8f",
      "parents": [
        "269484a492d9177072ee11ec8c9bff71d256837a"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Mar 30 18:58:29 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 02 20:11:05 2010 +0200"
      },
      "message": "sched: set_cpus_allowed_ptr(): Don\u0027t use rq-\u003emigration_thread after unlock\n\nTrivial typo fix. rq-\u003emigration_thread can be NULL after\ntask_rq_unlock(), this is why we have \"mt\" which should be\n used instead.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20100330165829.GA18284@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "269484a492d9177072ee11ec8c9bff71d256837a",
      "tree": "4910c802ac71e70a6e722d7f0bd5119962304f80",
      "parents": [
        "42be79e37e264557f12860fa4cc84b4de3685954"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Mar 30 11:09:53 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 02 20:06:40 2010 +0200"
      },
      "message": "sched: Fix proc_sched_set_task()\n\nLatencytop clearing sum_exec_runtime via proc_sched_set_task() breaks\ntask_times().  Other places in kernel use nvcsw and nivcsw, which are\nbeing cleared as well,  Clear task statistics only.\n\nReported-by: Török Edwin \u003cedwintorok@gmail.com\u003e\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1269940193.19286.14.camel@marge.simson.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8bb39f9aa068262732fe44b965d7a6eb5a5a7d67",
      "tree": "820af25532c62179f518bda83ea27b6b21ee736b",
      "parents": [
        "257ef9d21f1b008a6c7425544b36641c4325a922"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Fri Mar 26 11:11:33 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 02 19:30:05 2010 +0200"
      },
      "message": "perf: Fix \u0027perf sched record\u0027 deadlock\n\nperf sched record can deadlock a box should the holder of\nhandle-\u003edata-\u003elock take an interrupt, and then attempt to\nacquire an rq lock held by a CPU trying to acquire the\nsame lock. Disable interrupts.\n\n   CPU0                            CPU1\n   sched event with rq-\u003elock held\n                                   grab handle-\u003edata-\u003elock\n   spin on handle-\u003edata-\u003elock\n                                   interrupt\n                                   try to grab rq-\u003elock\n\nReported-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nTested-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1269598293.6174.8.camel@marge.simson.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "50d11d190afa4e21284b735bb0a092036f298f0b",
      "tree": "098257e5933d1b1a5cbbc3470cef20a4cb856836",
      "parents": [
        "42be79e37e264557f12860fa4cc84b4de3685954",
        "ab310b5edb8b601bcb02491ed6f7676da4fd1757"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 02 19:29:17 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 02 19:29:17 2010 +0200"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/urgent\n"
    },
    {
      "commit": "e49a5bd38159dfb1928fd25b173bc9de4bbadb21",
      "tree": "85c7c5fcce6df6a6ab6c119c40f6652d7783ec0b",
      "parents": [
        "eb1e79611cc9bfe21978230e3521e77ea2d7874a"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Mar 22 19:40:03 2010 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Apr 01 08:26:31 2010 +0200"
      },
      "message": "perf: Use hot regs with software sched switch/migrate events\n\nScheduler\u0027s task migration events don\u0027t work because they always\npass NULL regs perf_sw_event(). The event hence gets filtered\nin perf_swevent_add().\n\nScheduler\u0027s context switches events use task_pt_regs() to get\nthe context when the event occured which is a wrong thing to\ndo as this won\u0027t give us the place in the kernel where we went\nto sleep but the place where we left userspace. The result is\neven more wrong if we switch from a kernel thread.\n\nUse the hot regs snapshot for both events as they belong to the\nnon-interrupt/exception based events family. Unlike page faults\nor so that provide the regs matching the exact origin of the event,\nwe need to save the current context.\n\nThis makes the task migration event working and fix the context\nswitch callchains and origin ip.\n\nExample: perf record -a -e cs\n\nBefore:\n\n    10.91%      ksoftirqd/0                  0  [k] 0000000000000000\n                |\n                --- (nil)\n                    perf_callchain\n                    perf_prepare_sample\n                    __perf_event_overflow\n                    perf_swevent_overflow\n                    perf_swevent_add\n                    perf_swevent_ctx_event\n                    do_perf_sw_event\n                    __perf_sw_event\n                    perf_event_task_sched_out\n                    schedule\n                    run_ksoftirqd\n                    kthread\n                    kernel_thread_helper\n\nAfter:\n\n    23.77%  hald-addon-stor  [kernel.kallsyms]  [k] schedule\n            |\n            --- schedule\n               |\n               |--60.00%-- schedule_timeout\n               |          wait_for_common\n               |          wait_for_completion\n               |          blk_execute_rq\n               |          scsi_execute\n               |          scsi_execute_req\n               |          sr_test_unit_ready\n               |          |\n               |          |--66.67%-- sr_media_change\n               |          |          media_changed\n               |          |          cdrom_media_changed\n               |          |          sr_block_media_changed\n               |          |          check_disk_change\n               |          |          cdrom_open\n\nv2: Always build perf_arch_fetch_caller_regs() now that software\nevents need that too. They don\u0027t need it from modules, unlike trace\nevents, so we keep the EXPORT_SYMBOL in trace_event_perf.c\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eb1e79611cc9bfe21978230e3521e77ea2d7874a",
      "tree": "0d5ebdb4a0b178fcd524d3b725da3e8a3cd6151e",
      "parents": [
        "b72c40949b0f04728f2993a1434598d3bad094ea"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Mar 23 00:08:59 2010 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Apr 01 08:26:30 2010 +0200"
      },
      "message": "perf: Correctly align perf event tracing buffer\n\nThe trace event buffer used by perf to record raw sample events\nis typed as an array of char and may then not be aligned to 8\nby alloc_percpu().\n\nBut we need it to be aligned to 8 in sparc64 because we cast\nthis buffer into a random structure type built by the TRACE_EVENT()\nmacro to store the traces. So if a random 64 bits field is accessed\ninside, it may be not under an expected good alignment.\n\nUse an array of long instead to force the appropriate alignment, and\nperform a compile time check to ensure the size in byte of the buffer\nis a multiple of sizeof(long) so that its actual size doesn\u0027t get\nshrinked under us.\n\nThis fixes unaligned accesses reported while using perf lock\nin sparc 64.\n\nSuggested-by: David Miller \u003cdavem@davemloft.net\u003e\nSuggested-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "753649dbc49345a73a2454c770a3f2d54d11aec6",
      "tree": "7489a4f883a1281a4874817826ebf369f7d019f0",
      "parents": [
        "2eaa9cfdf33b8d7fb7aff27792192e0019ae8fc6"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 31 13:30:19 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 31 15:48:38 2010 +0200"
      },
      "message": "genirq: Force MSI irq handlers to run with interrupts disabled\n\nNetwork folks reported that directing all MSI-X vectors of their multi\nqueue NICs to a single core can cause interrupt stack overflows when\nenough interrupts fire at the same time.\n\nThis is caused by the fact that we run interrupt handlers by default\nwith interrupts enabled unless the driver reuqests the interrupt with\nthe IRQF_DISABLED set. The NIC handlers do not set this flag, so\nsimultaneous interrupts can nest unlimited and cause the stack\noverflow.\n\nThe only safe counter measure is to run the interrupt handlers with\ninterrupts disabled. We can\u0027t switch to this mode in general right\nnow, but it is safe to do so for MSI interrupts.\n\nForce IRQF_DISABLED for MSI interrupt handlers.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Linus Torvalds \u003ctorvalds@osdl.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "246750ffa1b26335df4e485b4e4d28d83756ac43",
      "tree": "8c28306f1b66bd89713c9dfe8738097d56056d06",
      "parents": [
        "4660d3d240ac6c92cd3ad33657ca302026bdc24b",
        "570b8fb505896e007fd3bb07573ba6640e51851d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 30 07:26:30 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 30 07:26:30 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:\n  CRED: Fix memory leak in error handling\n"
    },
    {
      "commit": "be3fd3cc7c2142c46d5dcfec05e6031990d1f2ca",
      "tree": "606074b5c60ef823ad86174e408904c563eab38d",
      "parents": [
        "9623e5a23724d09283c238960946ec6f65733afe",
        "eed63519e3e74d515d2007ecd895338d0ba2a85c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 30 07:22:38 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 30 07:22:38 2010 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86: Do not free zero sized per cpu areas\n  x86: Make sure free_init_pages() frees pages on page boundary\n  x86: Make smp_locks end with page alignment\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "570b8fb505896e007fd3bb07573ba6640e51851d",
      "tree": "fd36f685aa2028628605733708bbf7d1af62f3ec",
      "parents": [
        "9623e5a23724d09283c238960946ec6f65733afe"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@efficios.com",
        "time": "Tue Mar 30 00:04:00 2010 +0100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Mar 30 17:15:38 2010 +1100"
      },
      "message": "CRED: Fix memory leak in error handling\n\nFix a memory leak on an OOM condition in prepare_usermodehelper_creds().\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "292f60c0c4ab44aa2d589ba03c12e64a3b3c5e38",
      "tree": "0c33c9b23202a27c768dee45776503c9ec6b8306",
      "parents": [
        "e36673ec5126f15a8cddf6049aede7bdcf484c26"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Mon Mar 29 17:37:02 2010 +0200"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Mar 29 15:23:24 2010 -0400"
      },
      "message": "ring-buffer: Add missing unlock\n\nIn some error handling cases the lock is not unlocked.  The return is\nconverted to a goto, to share the unlock at the end of the function.\n\nA simplified version of the semantic patch that finds this problem is as\nfollows: (http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@r exists@\nexpression E1;\nidentifier f;\n@@\n\nf (...) { \u003c+...\n* spin_lock_irq (E1,...);\n... when !\u003d E1\n* return ...;\n...+\u003e }\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nLKML-Reference: \u003cPine.LNX.4.64.1003291736440.21896@ask.diku.dk\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "e36673ec5126f15a8cddf6049aede7bdcf484c26",
      "tree": "020070456e2875bc2293c36b4fb7415e4d717199",
      "parents": [
        "b72c40949b0f04728f2993a1434598d3bad094ea"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Mar 24 10:57:37 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Mar 29 15:16:44 2010 -0400"
      },
      "message": "tracing: Fix lockdep warning in global_clock()\n\n# echo 1 \u003e events/enable\n # echo global \u003e trace_clock\n\n------------[ cut here ]------------\nWARNING: at kernel/lockdep.c:3162 check_flags+0xb2/0x190()\n...\n---[ end trace 3f86734a89416623 ]---\npossible reason: unannotated irqs-on.\n...\n\nThere\u0027s no reason to use the raw_local_irq_save() in trace_clock_global.\nThe local_irq_save() version is fine, and does not cause the bug in lockdep.\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4BA97FA1.7030606@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "eed63519e3e74d515d2007ecd895338d0ba2a85c",
      "tree": "4b33f284ab39080293b287316d18745c770058e2",
      "parents": [
        "c967da6a0ba837f762042e931d4afcf72045547c"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ian.campbell@citrix.com",
        "time": "Sun Mar 28 19:42:56 2010 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 29 18:55:40 2010 +0200"
      },
      "message": "x86: Do not free zero sized per cpu areas\n\nThis avoids an infinite loop in free_early_partial().\n\nAdd a warning to free_early_partial() to catch future problems.\n\n-v5: put back start \u003e end back into WARN_ONCE()\n-v6: use one line for warning, suggested by Linus\n-v7: more tests\n-v8: remove the function name as suggested by Johannes\n     WARN_ONCE() will print out that function name.\n\nSigned-off-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nTested-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nTested-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nTested-by: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLKML-Reference: \u003c1269830604-26214-4-git-send-email-yinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a53f4f9efaeb1d87cfae066346979d4d70e1abe9",
      "tree": "d774e3c010b96bc71226d5aedd1df04462629db5",
      "parents": [
        "88be12c440cfa2fa3f5be83507360aac9ea1c54e"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Mar 29 13:08:52 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 29 09:14:47 2010 -0700"
      },
      "message": "SLOW_WORK: CONFIG_SLOW_WORK_PROC should be CONFIG_SLOW_WORK_DEBUG\n\nCONFIG_SLOW_WORK_PROC was changed to CONFIG_SLOW_WORK_DEBUG, but not in all\ninstances.  Change the remaining instances.  This makes the debugfs file\ndisplay the time mark and the owner\u0027s description again.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "88be12c440cfa2fa3f5be83507360aac9ea1c54e",
      "tree": "ec8593b4f626debde062eda917355afc35573684",
      "parents": [
        "376a21ff42ba71167afe7a47aeb1ca19470cf580"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Mon Mar 29 12:01:50 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 29 09:13:30 2010 -0700"
      },
      "message": "slow-work: use get_ref wrapper instead of directly calling get_ref\n\nOtherwise we can get an oops if the user has no get_ref/put_ref\nrequirement.\n\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "10fad5e46f6c7bdfb01b1a012380a38e3c6ab346",
      "tree": "9ec6e3955e7f879f64ea79812cf5ecd41baa6939",
      "parents": [
        "259354deaaf03d49a02dbb9975d6ec2a54675672"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 10 18:57:54 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Mar 29 23:07:12 2010 +0900"
      },
      "message": "percpu, module: implement and use is_kernel/module_percpu_address()\n\nlockdep has custom code to check whether a pointer belongs to static\npercpu area which is somewhat broken.  Implement proper\nis_kernel/module_percpu_address() and replace the custom code.\n\nOn UP, percpu variables are regular static variables and can\u0027t be\ndistinguished from them.  Always return %false on UP.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\n"
    },
    {
      "commit": "259354deaaf03d49a02dbb9975d6ec2a54675672",
      "tree": "a05fbdfecfa5c2924235ce2fb7618b3acdecaa16",
      "parents": [
        "b72c40949b0f04728f2993a1434598d3bad094ea"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 10 18:56:10 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Mar 29 23:07:12 2010 +0900"
      },
      "message": "module: encapsulate percpu handling better and record percpu_size\n\nBetter encapsulate module static percpu area handling so that code\noutsidef of CONFIG_SMP ifdef doesn\u0027t deal with mod-\u003epercpu directly\nand add mod-\u003epercpu_size and record percpu_size in it.  Both percpu\nfields are compiled out on UP.  While at it, mark mod-\u003epercpu w/\n__percpu.\n\nThis is to prepare for is_module_percpu_address().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "b72c40949b0f04728f2993a1434598d3bad094ea",
      "tree": "612b99ceac1f713d15cb288d370578e138537e49",
      "parents": [
        "e4d50423d773fb8d5b714430ba5358e8a1b87c14",
        "d558b483d5a73f5718705b270cb2090f66ea48c8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 26 16:34:29 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 26 16:34:29 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:\n  x86/PCI: truncate _CRS windows with _LEN \u003e _MAX - _MIN + 1\n  x86/PCI: for host bridge address space collisions, show conflicting resource\n  frv/PCI: remove redundant warnings\n  x86/PCI: remove redundant warnings\n  PCI: don\u0027t say we claimed a resource if we failed\n  PCI quirk: Disable MSI on VIA K8T890 systems\n  PCI quirk: RS780/RS880: work around missing MSI initialization\n  PCI quirk: only apply CX700 PCI bus parking quirk if external VT6212L is present\n  PCI: complain about devices that seem to be broken\n  PCI: print resources consistently with %pR\n  PCI: make disabled window printk style match the enabled ones\n  PCI: break out primary/secondary/subordinate for readability\n  PCI: for address space collisions, show conflicting resource\n  resources: add interfaces that return conflict information\n  PCI: cleanup error return for pcix get and set mmrbc functions\n  PCI: fix access of PCI_X_CMD by pcix get and set mmrbc functions\n  PCI: kill off pci_register_set_vga_state() symbol export.\n  PCI: fix return value from pcix_get_max_mmrbc()\n"
    },
    {
      "commit": "5a7aadfe2fcb0f69e2acc1fbefe22a096e792fc9",
      "tree": "dc1b649fc6aa05ecd25cab23e464894e660830d5",
      "parents": [
        "4f598458ea4450f53e8ed929ee4e66b3404a7286"
      ],
      "author": {
        "name": "Matt Helsley",
        "email": "matthltc@us.ibm.com",
        "time": "Fri Mar 26 23:51:44 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 26 23:51:44 2010 +0100"
      },
      "message": "Freezer: Fix buggy resume test for tasks frozen with cgroup freezer\n\nWhen the cgroup freezer is used to freeze tasks we do not want to thaw\nthose tasks during resume. Currently we test the cgroup freezer\nstate of the resuming tasks to see if the cgroup is FROZEN.  If so\nthen we don\u0027t thaw the task. However, the FREEZING state also indicates\nthat the task should remain frozen.\n\nThis also avoids a problem pointed out by Oren Ladaan: the freezer state\ntransition from FREEZING to FROZEN is updated lazily when userspace reads\nor writes the freezer.state file in the cgroup filesystem. This means that\nresume will thaw tasks in cgroups which should be in the FROZEN state if\nthere is no read/write of the freezer.state file to trigger this\ntransition before suspend.\n\nNOTE: Another \"simple\" solution would be to always update the cgroup\nfreezer state during resume. However it\u0027s a bad choice for several reasons:\nUpdating the cgroup freezer state is somewhat expensive because it requires\nwalking all the tasks in the cgroup and checking if they are each frozen.\nWorse, this could easily make resume run in N^2 time where N is the number\nof tasks in the cgroup. Finally, updating the freezer state from this code\npath requires trickier locking because of the way locks must be ordered.\n\nInstead of updating the freezer state we rely on the fact that lazy\nupdates only manage the transition from FREEZING to FROZEN. We know that\na cgroup with the FREEZING state may actually be FROZEN so test for that\nstate too. This makes sense in the resume path even for partially-frozen\ncgroups -- those that really are FREEZING but not FROZEN.\n\nReported-by: Oren Ladaan \u003corenl@cs.columbia.edu\u003e\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "4f598458ea4450f53e8ed929ee4e66b3404a7286",
      "tree": "7947a560c241edc3320436406b13cdbb464bb202",
      "parents": [
        "e1ee65d85904c5dd4b9cea1b15d5e85e20eae8a1"
      ],
      "author": {
        "name": "Xiaotian Feng",
        "email": "dfeng@redhat.com",
        "time": "Wed Mar 10 22:59:13 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 26 23:51:13 2010 +0100"
      },
      "message": "Freezer: Only show the state of tasks refusing to freeze\n\nshow_state will dump all tasks state, so if freezer failed to freeze\nany task, kernel will dump all tasks state and flood the dmesg log.\nThis patch makes freezer only show state of tasks refusing to freeze.\n\nSigned-off-by: Xiaotian Feng \u003cdfeng@redhat.com\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "054319b5e255c0671012a5a89b344a7d55cda80c",
      "tree": "5f815e837eacb11504f19c00e155befcecdf0903",
      "parents": [
        "833961d81f0ece46b7884f988cc65509e2c49646",
        "830ec0458c390f29c6c99e1ff7feab9e36368d12"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 26 15:10:38 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 26 15:10:38 2010 -0700"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  time: Fix accumulation bug triggered by long delay.\n  posix-cpu-timers: Reset expire cache when no timer is running\n  timer stats: Fix del_timer_sync() and try_to_del_timer_sync()\n  clockevents: Sanitize min_delta_ns adjustment and prevent overflows\n"
    },
    {
      "commit": "833961d81f0ece46b7884f988cc65509e2c49646",
      "tree": "4c4bef2e8ec7d8510de827d83010b0fe76c4924f",
      "parents": [
        "3cacf42462c8c97e045a07a5fc92aa357489c8b5",
        "2271048d1b3b0aabf83d25b29c20646dcabedc05"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 26 15:10:13 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 26 15:10:13 2010 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  ring-buffer: Do 8 byte alignment for 64 bit that can not handle 4 byte align\n"
    },
    {
      "commit": "3cacf42462c8c97e045a07a5fc92aa357489c8b5",
      "tree": "32ed28929899a93c2a3cf9ba5d051d01ed798a7d",
      "parents": [
        "6fa41366c1c5e8b9640baba22d2b90ec9035a889",
        "8bc037fb89bb3104b9ae290d18c877624cd7d9cc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 26 15:09:59 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 26 15:09:59 2010 -0700"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Use proper type in sched_getaffinity()\n  kernel/sched.c: Suppress unused var warning\n  sched: sched_getaffinity(): Allow less than NR_CPUS length\n"
    },
    {
      "commit": "309d1dcb5b73ab1f8212aff3037a7bcb46afe819",
      "tree": "af8ccaeb98051504db8f44a32f56945382f67271",
      "parents": [
        "8128f55a0bc60cf3779135a1f837c4323e77c582",
        "860652bfb890bd861c999ec39fcffabe5b712f85"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 26 15:09:06 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 26 15:09:06 2010 -0700"
      },
      "message": "Merge branch \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  genirq: Move two IRQ functions from .init.text to .text\n  genirq: Protect access to irq_desc-\u003eaction in can_request_irq()\n  genirq: Prevent oneshot irq thread race\n"
    },
    {
      "commit": "8128f55a0bc60cf3779135a1f837c4323e77c582",
      "tree": "a6f23d18496049651617f5c5cbe21648fa521f4e",
      "parents": [
        "50da56706b989b99edb20f9c03172df193240c78",
        "c26f91a3df1999ec1b3298372d73f90cbab81106"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 26 15:08:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 26 15:08:31 2010 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86: Remove excessive early_res debug output\n  softlockup: Stop spurious softlockup messages due to overflow\n  rcu: Fix local_irq_disable() CONFIG_PROVE_RCU\u003dy false positives\n  rcu: Fix tracepoints \u0026 lockdep false positive\n  rcu: Make rcu_read_lock_bh_held() allow for disabled BH\n"
    },
    {
      "commit": "53feb29767c29c877f9d47dcfe14211b5b0f7ebd",
      "tree": "0416744ece6b7fd667bef355434ed9157fe67b2a",
      "parents": [
        "5ab116c9349ef52d6fbd2e2917a53f13194b048e"
      ],
      "author": {
        "name": "Miao Xie",
        "email": "miaox@cn.fujitsu.com",
        "time": "Tue Mar 23 13:35:35 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 24 16:31:21 2010 -0700"
      },
      "message": "cpuset: alloc nodemask_t on the heap rather than the stack\n\nSigned-off-by: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "5ab116c9349ef52d6fbd2e2917a53f13194b048e"
}
