)]}'
{
  "log": [
    {
      "commit": "fc9ea5a1e53ee54f681e226d735008e2a6f8f470",
      "tree": "fe59eb9aef5d797ae387885e6833c9c4d05735ad",
      "parents": [
        "61be7fdec2f51b99570cd5dcc30c7848c8e56513",
        "9da79ab83ee33ddc1fdd0858fd3d70925a1bde99"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 05 08:46:15 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 05 08:46:15 2010 +0200"
      },
      "message": "Merge branch \u0027perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 into perf/core\n"
    },
    {
      "commit": "61be7fdec2f51b99570cd5dcc30c7848c8e56513",
      "tree": "4a73ee635bc3e35dc54f75caddd26ffb6238bb5c",
      "parents": [
        "12a81c8df13c60904febcafcf6b90ca1acb67122",
        "eb703f98191a505f78d0066712ad67d5dedc4c90"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 05 08:45:05 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 05 08:45:05 2010 +0200"
      },
      "message": "Merge branch \u0027perf/nmi\u0027 into perf/core\n\nConflicts:\n\tkernel/Makefile\n\nMerge reason: Add the now complete topic, fix the conflict.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9da79ab83ee33ddc1fdd0858fd3d70925a1bde99",
      "tree": "116f9d3c256a91ede964ebbfd3779949cc5953d4",
      "parents": [
        "b83f920e179101a54721e5ab1d6c3edfb9d4bcbb"
      ],
      "author": {
        "name": "Srikar Dronamraju",
        "email": "srikar@linux.vnet.ibm.com",
        "time": "Wed Jun 30 14:15:48 2010 +0530"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Aug 04 12:41:23 2010 -0300"
      },
      "message": "tracing/kprobes: unregister_trace_probe needs to be called under mutex\n\nComment in unregister_trace_probe() says probe_lock will be held when it\ngets called. However there is a case where it might called without the\nprobe_lock being held. Also since we are traversing the probe_list and\ndeleting an element from the probe_list, probe_lock should be held.\n\nThis was first pointed in uprobes traceevent review by Frederic\nWeisbecker here.  (http://lkml.org/lkml/2010/5/12/106)\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nAcked-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c20100630084548.GA10325@linux.vnet.ibm.com\u003e\nSigned-off-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "3772b734720e1a3f2dc1d95cfdfaa5332f4ccf01",
      "tree": "a1a8cc85948c086aa12a1d8014151a7ca7c04ea8",
      "parents": [
        "9fc3af467d0749989518a23f7289a6f44e5cb214",
        "9fe6206f400646a2322096b56c59891d530e8d51"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 02 08:29:56 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 02 08:31:54 2010 +0200"
      },
      "message": "Merge commit \u0027v2.6.35\u0027 into perf/core\n\nConflicts:\n\ttools/perf/Makefile\n\ttools/perf/util/hist.c\n\nMerge reason: Resolve the conflicts and update to latest upstream.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "669336e4cf3e1cb95800f3f5924558a76d723c21",
      "tree": "b2254ef3ca3dfa2cf102bb992275138e694a67bd",
      "parents": [
        "3a01736e70a7d629140695ba46a901266b4460cc"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jul 20 17:29:54 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Aug 02 01:30:56 2010 +0200"
      },
      "message": "perf: Use tracepoint_synchronize_unregister() to flush any pending tracepoint call\n\nWe use synchronize_sched() to ensure a tracepoint won\u0027t be called\nwhile/after we release the perf buffers it references.\n\nBut the tracepoint API has its own API for that:\ntracepoint_synchronize_unregister(). Use it instead as it\u0027s\nself-explanatory and eases maintainance.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\n"
    },
    {
      "commit": "de09a9771a5346029f4d11e4ac886be7f9bfdd75",
      "tree": "ccce9e75753c98a9f38075d54ab98aa4b89e66c7",
      "parents": [
        "540ad6b62b3a188a53b51cac81d8a60d40e29fbd"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Jul 29 12:45:49 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 29 15:16:17 2010 -0700"
      },
      "message": "CRED: Fix get_task_cred() and task_state() to not resurrect dead credentials\n\nIt\u0027s possible for get_task_cred() as it currently stands to \u0027corrupt\u0027 a set of\ncredentials by incrementing their usage count after their replacement by the\ntask being accessed.\n\nWhat happens is that get_task_cred() can race with commit_creds():\n\n\tTASK_1\t\t\tTASK_2\t\t\tRCU_CLEANER\n\t--\u003eget_task_cred(TASK_2)\n\trcu_read_lock()\n\t__cred \u003d __task_cred(TASK_2)\n\t\t\t\t--\u003ecommit_creds()\n\t\t\t\told_cred \u003d TASK_2-\u003ereal_cred\n\t\t\t\tTASK_2-\u003ereal_cred \u003d ...\n\t\t\t\tput_cred(old_cred)\n\t\t\t\t  call_rcu(old_cred)\n\t\t[__cred-\u003eusage \u003d\u003d 0]\n\tget_cred(__cred)\n\t\t[__cred-\u003eusage \u003d\u003d 1]\n\trcu_read_unlock()\n\t\t\t\t\t\t\t--\u003eput_cred_rcu()\n\t\t\t\t\t\t\t[__cred-\u003eusage \u003d\u003d 1]\n\t\t\t\t\t\t\tpanic()\n\nHowever, since a tasks credentials are generally not changed very often, we can\nreasonably make use of a loop involving reading the creds pointer and using\natomic_inc_not_zero() to attempt to increment it if it hasn\u0027t already hit zero.\n\nIf successful, we can safely return the credentials in the knowledge that, even\nif the task we\u0027re accessing has released them, they haven\u0027t gone to the RCU\ncleanup code.\n\nWe then change task_state() in procfs to use get_task_cred() rather than\ncalling get_cred() on the result of __task_cred(), as that suffers from the\nsame problem.\n\nWithout this change, a BUG_ON in __put_cred() or in put_cred_rcu() can be\ntripped when it is noticed that the usage count is not zero as it ought to be,\nfor example:\n\nkernel BUG at kernel/cred.c:168!\ninvalid opcode: 0000 [#1] SMP\nlast sysfs file: /sys/kernel/mm/ksm/run\nCPU 0\nPid: 2436, comm: master Not tainted 2.6.33.3-85.fc13.x86_64 #1 0HR330/OptiPlex\n745\nRIP: 0010:[\u003cffffffff81069881\u003e]  [\u003cffffffff81069881\u003e] __put_cred+0xc/0x45\nRSP: 0018:ffff88019e7e9eb8  EFLAGS: 00010202\nRAX: 0000000000000001 RBX: ffff880161514480 RCX: 00000000ffffffff\nRDX: 00000000ffffffff RSI: ffff880140c690c0 RDI: ffff880140c690c0\nRBP: ffff88019e7e9eb8 R08: 00000000000000d0 R09: 0000000000000000\nR10: 0000000000000001 R11: 0000000000000040 R12: ffff880140c690c0\nR13: ffff88019e77aea0 R14: 00007fff336b0a5c R15: 0000000000000001\nFS:  00007f12f50d97c0(0000) GS:ffff880007400000(0000) knlGS:0000000000000000\nCS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\nCR2: 00007f8f461bc000 CR3: 00000001b26ce000 CR4: 00000000000006f0\nDR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\nDR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\nProcess master (pid: 2436, threadinfo ffff88019e7e8000, task ffff88019e77aea0)\nStack:\n ffff88019e7e9ec8 ffffffff810698cd ffff88019e7e9ef8 ffffffff81069b45\n\u003c0\u003e ffff880161514180 ffff880161514480 ffff880161514180 0000000000000000\n\u003c0\u003e ffff88019e7e9f28 ffffffff8106aace 0000000000000001 0000000000000246\nCall Trace:\n [\u003cffffffff810698cd\u003e] put_cred+0x13/0x15\n [\u003cffffffff81069b45\u003e] commit_creds+0x16b/0x175\n [\u003cffffffff8106aace\u003e] set_current_groups+0x47/0x4e\n [\u003cffffffff8106ac89\u003e] sys_setgroups+0xf6/0x105\n [\u003cffffffff81009b02\u003e] system_call_fastpath+0x16/0x1b\nCode: 48 8d 71 ff e8 7e 4e 15 00 85 c0 78 0b 8b 75 ec 48 89 df e8 ef 4a 15 00\n48 83 c4 18 5b c9 c3 55 8b 07 8b 07 48 89 e5 85 c0 74 04 \u003c0f\u003e 0b eb fe 65 48 8b\n04 25 00 cc 00 00 48 3b b8 58 04 00 00 75\nRIP  [\u003cffffffff81069881\u003e] __put_cred+0xc/0x45\n RSP \u003cffff88019e7e9eb8\u003e\n---[ end trace df391256a100ebdd ]---\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b82bab4bbe9efa7bc7177fc20620fff19bd95484",
      "tree": "c033a090fbd3caa61f2f3b6ece52c0b4dffeb229",
      "parents": [
        "d15aa2cc641bd193596382357de917b32f1b40cb"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Tue Jul 27 13:18:01 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 27 14:32:06 2010 -0700"
      },
      "message": "dynamic debug: move ddebug_remove_module() down into free_module()\n\nThe command\n\n\techo \"file ec.c +p\" \u003e/sys/kernel/debug/dynamic_debug/control\n\ncauses an oops.\n\nMove the call to ddebug_remove_module() down into free_module().  In this\nway it should be called from all error paths.  Currently, we are missing\nthe remove if the module init routine fails.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nReported-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nTested-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.32+]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3a01736e70a7d629140695ba46a901266b4460cc",
      "tree": "49ff8ce1e7c6a267f0ce84b5daddbe6666bc4253",
      "parents": [
        "4c21adf26f8fcf86a755b9b9f55c2e9fd241e1fb",
        "24a461d537f49f9da6533d83100999ea08c6c755"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 23 09:10:29 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 23 09:10:29 2010 +0200"
      },
      "message": "Merge branch \u0027tip/perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "24a461d537f49f9da6533d83100999ea08c6c755",
      "tree": "b7aa6258df988a64d802eff0b15e92c394742a2e",
      "parents": [
        "a484e54fae891703cbe1c9ec1b536605f11f5482"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Sat Jul 10 12:06:44 2010 +0200"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jul 22 14:56:41 2010 -0400"
      },
      "message": "trace: strlen() return doesn\u0027t account for the NULL\n\nWe need to add one to the strlen() return because of the NULL\ncharacter.  The type-\u003ename here generally comes from the kernel and I\ndon\u0027t think any of them come close to being MAX_TRACER_SIZE (100)\ncharacters long so this is basically a cleanup.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nLKML-Reference: \u003c20100710100644.GV19184@bicker\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "edd63cb6b91024332d6983fc51058ac1ef0c081e",
      "tree": "2df04fc5dc35899aa7d4f4c52197f7b492c16c8b",
      "parents": [
        "b0679c63db655fa12007558e267bc0eb1d486fdb"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Jul 21 19:27:07 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Jul 21 19:27:07 2010 -0500"
      },
      "message": "sysrq,kdb: Use __handle_sysrq() for kdb\u0027s sysrq function\n\nThe kdb code should not toggle the sysrq state in case an end user\nwants to try and resume the normal kernel execution.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nAcked-by: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\n"
    },
    {
      "commit": "b0679c63db655fa12007558e267bc0eb1d486fdb",
      "tree": "b210de833621055d02c2114b77d419f09ea73a36",
      "parents": [
        "9e8b624fcaebf9c237b5be9116f4424bf168e6d1"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Jul 21 19:27:07 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Jul 21 19:27:07 2010 -0500"
      },
      "message": "debug_core,kdb: fix kgdb_connected bit set in the wrong place\n\nImmediately following an exit from the kdb shell the kgdb_connected\nvariable should be set to zero, unless there are breakpoints planted.\nIf the kgdb_connected variable is not zeroed out with kdb, it is\nimpossible to turn off kdb.\n\nThis patch is merely a work around for now, the real fix will check\nfor the breakpoints.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "9e8b624fcaebf9c237b5be9116f4424bf168e6d1",
      "tree": "9c46796acdbb4bbfe6adbf89bc731dd6eb0adf19",
      "parents": [
        "fb82c0ff27b2c40c6f7a3d1a94cafb154591fa80"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Jul 21 19:27:06 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Jul 21 19:27:06 2010 -0500"
      },
      "message": "Fix merge regression from external kdb to upstream kdb\n\nIn the process of merging kdb to the mainline, the kdb lsmod command\nstopped printing the base load address of kernel modules.  This is\nneeded for using kdb in conjunction with external tools such as gdb.\n\nSimply restore the functionality by adding a kdb_printf for the base\nload address of the kernel modules.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "fb82c0ff27b2c40c6f7a3d1a94cafb154591fa80",
      "tree": "98e49fdc15e9db7eb45e91571ca6187f9a5cf516",
      "parents": [
        "1396a21ba0d4ec381db19bc9cd5b6f25a89cf633"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Jul 21 19:27:05 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Jul 21 19:27:05 2010 -0500"
      },
      "message": "repair gdbstub to match the gdbserial protocol specification\n\nThe gdbserial protocol handler should return an empty packet instead\nof an error string when ever it responds to a command it does not\nimplement.\n\nThe problem cases come from a debugger client sending\nqTBuffer, qTStatus, qSearch, qSupported.\n\nThe incorrect response from the gdbstub leads the debugger clients to\nnot function correctly.  Recent versions of gdb will not detach correctly as a result of this behavior.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Dongdong Deng \u003cdongdong.deng@windriver.com\u003e\n"
    },
    {
      "commit": "1396a21ba0d4ec381db19bc9cd5b6f25a89cf633",
      "tree": "09bbe851de6b70d1896d0a72f832b21d98331d9d",
      "parents": [
        "d0c6f6258478e1dba532bf7c28e2cd6e1047d3a4"
      ],
      "author": {
        "name": "Martin Hicks",
        "email": "mort@sgi.com",
        "time": "Wed Jul 21 19:27:05 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Jul 21 19:27:05 2010 -0500"
      },
      "message": "kdb: break out of kdb_ll() when command is terminated\n\nWithout this patch the \"ll\" linked-list traversal command won\u0027t\nterminate when you hit q/Q.\n\nSigned-off-by: Martin Hicks \u003cmort@sgi.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "23c2875725ebb03e58e598754309e198648f608a",
      "tree": "35f9ffe9e7b52624642cb651687dea5faf5dc6a3",
      "parents": [
        "9dcdbf7a33d9018ac5d45debcf261be648bdd56a",
        "b444786f1a797a7f84e2561346a670649f9c7b3c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 21 21:44:18 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 21 21:44:18 2010 +0200"
      },
      "message": "Merge branch \u0027perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/core\n"
    },
    {
      "commit": "9dcdbf7a33d9018ac5d45debcf261be648bdd56a",
      "tree": "bbcc1a018f11ff76cd7ce174ef3ffe2c02da07ee",
      "parents": [
        "cc5edb0eb9ce892b530e34a5d110382483587942",
        "cd5b8f8755a89a57fc8c408d284b8b613f090345"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 21 21:43:03 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 21 21:43:06 2010 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into perf/core\n\nMerge reason: Pick up the latest perf fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ef710e100c1068d3dd5774d2b34c5485219e06ce",
      "tree": "ed295053a31de472d4ed4338679c00ac8e8437c7",
      "parents": [
        "bc289ae98b75d93228d24f521ef02a076e506e94"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Thu Jul 01 14:34:35 2010 +0900"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jul 21 10:20:17 2010 -0400"
      },
      "message": "tracing: Shrink max latency ringbuffer if unnecessary\n\nDocumentation/trace/ftrace.txt says\n\n  buffer_size_kb:\n\n        This sets or displays the number of kilobytes each CPU\n        buffer can hold. The tracer buffers are the same size\n        for each CPU. The displayed number is the size of the\n        CPU buffer and not total size of all buffers. The\n        trace buffers are allocated in pages (blocks of memory\n        that the kernel uses for allocation, usually 4 KB in size).\n        If the last page allocated has room for more bytes\n        than requested, the rest of the page will be used,\n        making the actual allocation bigger than requested.\n        ( Note, the size may not be a multiple of the page size\n          due to buffer management overhead. )\n\n        This can only be updated when the current_tracer\n        is set to \"nop\".\n\nBut it\u0027s incorrect. currently total memory consumption is\n\u0027buffer_size_kb x CPUs x 2\u0027.\n\nWhy two times difference is there? because ftrace implicitly allocate\nthe buffer for max latency too.\n\nThat makes sad result when admin want to use large buffer. (If admin\nwant full logging and makes detail analysis). example, If admin\nhave 24 CPUs machine and write 200MB to buffer_size_kb, the system\nconsume ~10GB memory (200MB x 24 x 2). umm.. 5GB memory waste is\nusually unacceptable.\n\nFortunatelly, almost all users don\u0027t use max latency feature.\nThe max latency buffer can be disabled easily.\n\nThis patch shrink buffer size of the max latency buffer if\nunnecessary.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nLKML-Reference: \u003c20100701104554.DA2D.A69D9226@jp.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "bc289ae98b75d93228d24f521ef02a076e506e94",
      "tree": "50d151d0fbde1b106932c0f80a2639839d261ca3",
      "parents": [
        "985023dee6e212493831431ba2e3ce8918f001b2"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Thu Jun 03 18:26:24 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jul 20 22:05:34 2010 -0400"
      },
      "message": "tracing: Reduce latency and remove percpu trace_seq\n\n__print_flags() and __print_symbolic() use percpu trace_seq:\n\n1) Its memory is allocated at compile time, it wastes memory if we don\u0027t use tracing.\n2) It is percpu data and it wastes more memory for multi-cpus system.\n3) It disables preemption when it executes its core routine\n   \"trace_seq_printf(s, \"%s: \", #call);\" and introduces latency.\n\nSo we move this trace_seq to struct trace_iterator.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4C078350.7090106@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "985023dee6e212493831431ba2e3ce8918f001b2",
      "tree": "7b8afee8eed100ff3ab1069504598445e644fe05",
      "parents": [
        "e870e9a1240bcef1157ffaaf71dac63362e71904"
      ],
      "author": {
        "name": "Richard Kennedy",
        "email": "richard@rsk.demon.co.uk",
        "time": "Thu Mar 25 11:27:36 2010 +0000"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jul 20 21:58:44 2010 -0400"
      },
      "message": "trace: Reorder struct ring_buffer_per_cpu to remove padding on 64bit\n\nReorder structure to remove 8 bytes of padding on 64 bit builds.\nThis shrinks the size to 128 bytes so allowing allocation from a smaller\nslab \u0026 needed one fewer cache lines.\n\nSigned-off-by: Richard Kennedy \u003crichard@rsk.demon.co.uk\u003e\nLKML-Reference: \u003c1269516456.2054.8.camel@localhost\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "e870e9a1240bcef1157ffaaf71dac63362e71904",
      "tree": "b8f57a68ff45b35dab8cdfa474e17622d275bdc6",
      "parents": [
        "cc5edb0eb9ce892b530e34a5d110382483587942"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Jul 02 11:07:32 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jul 20 21:52:33 2010 -0400"
      },
      "message": "tracing: Allow to disable cmdline recording\n\nWe found that even enabling a single trace event that will rarely be\ntriggered can add big overhead to context switch.\n\n(lmbench context switch test)\n -------------------------------------------------\n 2p/0K 2p/16K 2p/64K 8p/16K 8p/64K 16p/16K 16p/64K\n ctxsw  ctxsw  ctxsw ctxsw  ctxsw   ctxsw   ctxsw\n------ ------ ------ ------ ------ ------- -------\n  2.19   2.3   2.21   2.56   2.13     2.54    2.07\n  2.39   2.51  2.35   2.75   2.27     2.81    2.24\n\nThe overhead is 6% ~ 11%.\n\nIt\u0027s because when a trace event is enabled 3 tracepoints (sched_switch,\nsched_wakeup, sched_wakeup_new) will be activated to map pid to cmdname.\n\nWe\u0027d like to avoid this overhead, so add a trace option \u0027(no)record-cmd\u0027\nto allow to disable cmdline recording.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4C2D57F4.2050204@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b444786f1a797a7f84e2561346a670649f9c7b3c",
      "tree": "42260d0930addbe623d952fff75e0fba7f63d6c6",
      "parents": [
        "eb7beb5c09af75494234ea6acd09d0a647cf7338"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Jul 07 23:40:11 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jul 20 14:31:24 2010 +0200"
      },
      "message": "tracing: Use generic_file_llseek for debugfs\n\nThe default for llseek will change to no_llseek,\nso the tracing debugfs files need to add explicit\n.llseek assignments. Since we\u0027re dealing with regular\nfiles from a VFS perspective, use generic_file_llseek.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: John Kacur \u003cjkacur@redhat.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c1278538820-1392-10-git-send-email-arnd@arndb.de\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "eb7beb5c09af75494234ea6acd09d0a647cf7338",
      "tree": "ab76cb3a6c1f1ea9befbbc72d0f997c03423dd57",
      "parents": [
        "f376bf5ffbad863d4bc3b2586b7e34cdf756ad17"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jul 16 00:50:03 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jul 20 14:31:07 2010 +0200"
      },
      "message": "tracing: Remove special traces\n\nSpecial traces type was only used by sysprof. Lets remove it now\nthat sysprof ftrace plugin has been dropped.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Soeren Sandmann \u003csandmann@daimi.au.dk\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\n"
    },
    {
      "commit": "f376bf5ffbad863d4bc3b2586b7e34cdf756ad17",
      "tree": "712a78b2b455995ceb4e12b5ae02df76dc07f01e",
      "parents": [
        "cc5edb0eb9ce892b530e34a5d110382483587942"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jul 16 00:26:26 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jul 20 14:29:46 2010 +0200"
      },
      "message": "tracing: Remove sysprof ftrace plugin\n\nThe sysprof ftrace plugin doesn\u0027t seem to be seriously used\nsomewhere. There is a branch in the sysprof tree that makes\nan interface to it, but the real sysprof tool uses either its\nown module or perf events.\n\nDrop the sysprof ftrace plugin then, as it\u0027s mostly useless.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Soeren Sandmann \u003csandmann@daimi.au.dk\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\n"
    },
    {
      "commit": "9078370c0d2cfe4a905aa34f398bbb0d65921a2b",
      "tree": "0b0d3b1f2a9a6dd2f2deaae9fbf9c8c5509ac13c",
      "parents": [
        "7952f98818d561ed0e11434a7a16acd9a7bae859"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Mon Jul 19 11:54:15 2010 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Mon Jul 19 11:54:15 2010 +0100"
      },
      "message": "kmemleak: Add support for NO_BOOTMEM configurations\n\nWith commits 08677214 and 59be5a8e, alloc_bootmem()/free_bootmem() and\nfriends use the early_res functions for memory management when\nNO_BOOTMEM is enabled. This patch adds the kmemleak calls in the\ncorresponding code paths for bootmem allocations.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "5d550467b9770042e9699690907babc32104a8d4",
      "tree": "eda923f5976f5d6f881719998207696147cffa41",
      "parents": [
        "86a8c63f75a4582c44465e2bf71bc2df175cee77"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Jul 15 23:27:35 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Jul 15 23:59:33 2010 +0200"
      },
      "message": "tracing: Remove ksym tracer\n\nThe ksym (breakpoint) ftrace plugin has been superseded by perf\ntools that are much more poweful to use the cpu breakpoints.\nThis tracer doesn\u0027t bring more feature. It has been deprecated\nfor a while now, lets remove it.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "eb703f98191a505f78d0066712ad67d5dedc4c90",
      "tree": "5dc85a0e152c6b4d25816f4ba5f98d3207054c20",
      "parents": [
        "e35e7fb0e9ea557f7504ced6fe4ccf69e44b7f07"
      ],
      "author": {
        "name": "Kulikov Vasiliy",
        "email": "segooon@gmail.com",
        "time": "Mon Jul 05 12:00:54 2010 +0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 07 08:46:42 2010 +0200"
      },
      "message": "kernel/watchdog: Initialize \u0027result\u0027\n\nVariable on the stack is not initialized to zero, do it\nexplicitly.\n\nThis bug was found by a compiler warning:\n\n kernel/watchdog.c:463: warning: \u0027result\u0027 may be used uninitialized in this function\n\nSigned-off-by: Kulikov Vasiliy \u003csegooon@gmail.com\u003e\nAcked-by: Don Zickus \u003cdzickus@redhat.com\u003e\nCc: 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: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1278316854-28442-1-git-send-email-segooon@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8bd0e1be25c43a9fbd33a8de06449088879d527a",
      "tree": "8f24493dfd45df467faa69e2ecef67b8321932ef",
      "parents": [
        "39ef13a4ac28aa64cfe1bc36e6e00f1096707a28",
        "b7dcb857cc3eb89136111fefe89780129c1af1d7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 06 09:00:32 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 06 09:00:32 2010 +0200"
      },
      "message": "Merge branch \u0027perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 into perf/core\n"
    },
    {
      "commit": "e09c8614b32915c16f68e039ac7040e602d73e35",
      "tree": "725c768b1d2fbd569e447e7d4a2044dc0aa7a1d5",
      "parents": [
        "167a58f10d9cd1bdf6a911aa1eecbdff596de156"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Mon Jul 05 15:54:45 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jul 05 15:54:45 2010 -0300"
      },
      "message": "tracing/kprobes: Support \"string\" type\n\nSupport string type tracing and printing in kprobe-tracer.\n\nThis allows user to trace string data in kernel including __user data. Note\nthat sometimes __user data may not be accessed if it is paged-out (sorry, but\nkprobes operation should be done in atomic, we can not wait for page-in).\n\nCommiter note: Fixed up conflicts with b7e2ece.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20100519195724.2885.18788.stgit@localhost6.localdomain6\u003e\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "08f8ba07998ab1b9efcdd3f28dadf6866a605ddb",
      "tree": "8e09855446f7b0312bb729d4b539090756e57927",
      "parents": [
        "0879b100f3c187257729f36cba33d96ec2875766",
        "815c4163b6c8ebf8152f42b0a5fd015cfdcedc78"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 05 08:30:55 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 05 08:30:58 2010 +0200"
      },
      "message": "Merge commit \u0027v2.6.35-rc4\u0027 into perf/core\n\nMerge reason: Pick up the latest perf fixes\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ff49d74ad383f54041378144ca1a229ee9aeaa59",
      "tree": "6f37335e313c9a680db8d4e4ce00d17aa11a099b",
      "parents": [
        "e3668dd83ba5958429984286efbc3055be5344c4"
      ],
      "author": {
        "name": "Yehuda Sadeh",
        "email": "yehuda@hq.newdream.net",
        "time": "Sat Jul 03 13:07:35 2010 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 04 20:17:22 2010 -0700"
      },
      "message": "module: initialize module dynamic debug later\n\nWe should initialize the module dynamic debug datastructures\nonly after determining that the module is not loaded yet. This\nfixes a bug that introduced in 2.6.35-rc2, where when a trying\nto load a module twice, we also load it\u0027s dynamic printing data\ntwice which causes all sorts of nasty issues. Also handle\nthe dynamic debug cleanup later on failure.\n\nSigned-off-by: Yehuda Sadeh \u003cyehuda@hq.newdream.net\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e (removed a #ifdef)\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "123f94f22e3d283dfe68742b269c245b0501ad82",
      "tree": "1d40043b0909f309cf77204ea87be9e61f143e79",
      "parents": [
        "4b78c119f0ba715b4e29b190bf4d7bce810ea0d6",
        "8c215bd3890c347dfb6a2db4779755f8b9c298a9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 02 09:52:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 02 09:52:58 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: Cure nr_iowait_cpu() users\n  init: Fix comment\n  init, sched: Fix race between init and kthreadd\n"
    },
    {
      "commit": "8c215bd3890c347dfb6a2db4779755f8b9c298a9",
      "tree": "e6bd5de8a028babe9ec75f744977bd1424df106c",
      "parents": [
        "9715856922bf8475f5428c29b6f4a9eebc97d391"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Thu Jul 01 09:07:17 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 01 09:39:48 2010 +0200"
      },
      "message": "sched: Cure nr_iowait_cpu() users\n\nCommit 0224cf4c5e (sched: Intoduce get_cpu_iowait_time_us())\nbroke things by not making sure preemption was indeed disabled\nby the callers of nr_iowait_cpu() which took the iowait value of\nthe current cpu.\n\nThis resulted in a heap of preempt warnings. Cure this by making\nnr_iowait_cpu() take a cpu number and fix up the callers to pass\nin the right number.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Sergey Senozhatsky \u003csergey.senozhatsky@gmail.com\u003e\nCc: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Jiri Slaby \u003cjslaby@suse.cz\u003e\nCc: linux-pm@lists.linux-foundation.org\nLKML-Reference: \u003c1277968037.1868.120.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7a0ea09ad5352efce8fe79ed853150449903b9f5",
      "tree": "939829793ffb34a78f83b694a725e66dfc50cc16",
      "parents": [
        "f4985dc714d7ab1920c5aa502b7f4073fa1b4177"
      ],
      "author": {
        "name": "Michal Hocko",
        "email": "mhocko@suse.cz",
        "time": "Wed Jun 30 09:51:19 2010 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 30 15:43:44 2010 -0700"
      },
      "message": "futex: futex_find_get_task remove credentails check\n\nfutex_find_get_task is currently used (through lookup_pi_state) from two\ncontexts, futex_requeue and futex_lock_pi_atomic.  None of the paths\nlooks it needs the credentials check, though.  Different (e)uids\nshouldn\u0027t matter at all because the only thing that is important for\nshared futex is the accessibility of the shared memory.\n\nThe credentail check results in glibc assert failure or process hang (if\nglibc is compiled without assert support) for shared robust pthread\nmutex with priority inheritance if a process tries to lock already held\nlock owned by a process with a different euid:\n\npthread_mutex_lock.c:312: __pthread_mutex_lock_full: Assertion `(-(e)) !\u003d 3 || !robust\u0027 failed.\n\nThe problem is that futex_lock_pi_atomic which is called when we try to\nlock already held lock checks the current holder (tid is stored in the\nfutex value) to get the PI state.  It uses lookup_pi_state which in turn\ngets task struct from futex_find_get_task.  ESRCH is returned either\nwhen the task is not found or if credentials check fails.\n\nfutex_lock_pi_atomic simply returns if it gets ESRCH.  glibc code,\nhowever, doesn\u0027t expect that robust lock returns with ESRCH because it\nshould get either success or owner died.\n\nSigned-off-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nAcked-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Alexey Kuznetsov \u003ckuznet@ms2.inr.ac.ru\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e05bd3367bd3d88715b53766f95bb3a8ec7ab59e",
      "tree": "db9f13cd687c39bf873ff5dbed28bbd142fc6940",
      "parents": [
        "482ce512c543f3b30ab881702fa997e71252e604"
      ],
      "author": {
        "name": "Pavan Naregundi",
        "email": "pavan@linux.vnet.ibm.com",
        "time": "Tue Jun 29 15:05:28 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 29 15:29:31 2010 -0700"
      },
      "message": "kexec: fix Oops in crash_shrink_memory()\n\nWhen crashkernel is not enabled, \"echo 0 \u003e /sys/kernel/kexec_crash_size\"\nOOPSes the kernel in crash_shrink_memory.  This happens when\ncrash_shrink_memory tries to release the \u0027crashk_res\u0027 resource which are\nnot reserved.  Also value of \"/sys/kernel/kexec_crash_size\" shows as 1,\nwhich should be 0.\n\nThis patch fixes the OOPS in crash_shrink_memory and shows\n\"/sys/kernel/kexec_crash_size\" as 0 when crash kernel memory is not\nreserved.\n\nSigned-off-by: Pavan Naregundi \u003cpavan@linux.vnet.ibm.com\u003e\nReviewed-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Simon Horman \u003chorms@verge.net.au\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a1d0ce8213e9ddf4046ef5ba95c55762d075f541",
      "tree": "c72fb18588de555c8fa0c61452ae14ffe37dbf8a",
      "parents": [
        "d62f85d1e22e537192ce494c89540e1ac0d8bfc7"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Jun 08 11:22:06 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 21:13:14 2010 -0400"
      },
      "message": "tracing: Use class-\u003ereg() for all registering of events\n\nBecause kprobes and syscalls need special processing to register\nevents, the class-\u003ereg() method was created to handle the differences.\n\nBut instead of creating a default -\u003ereg for perf and ftrace events,\nthe code was scattered with:\n\n\tif (class-\u003ereg)\n\t\tclass-\u003ereg();\n\telse\n\t\tdefault_reg();\n\nThis is messy and can also lead to bugs.\n\nThis patch cleans up this code and creates a default reg() entry for\nthe events allowing for the code to directly call the class-\u003ereg()\nwithout the condition.\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d62f85d1e22e537192ce494c89540e1ac0d8bfc7",
      "tree": "6ea77c37dbdc9d0b82ca93ace71ffe5f44f234d3",
      "parents": [
        "67ead0a6ceb001b4cb891d782e440f0e79493ba2"
      ],
      "author": {
        "name": "Chase Douglas",
        "email": "chase.douglas@canonical.com",
        "time": "Tue Jun 15 12:29:15 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 21:11:39 2010 -0400"
      },
      "message": "tracing/function-graph: Use correct string size for snprintf\n\nThe nsecs_str string is a local variable defined as:\n\nchar nsecs_str[5];\n\nIt is possible for the snprintf call to use a size value larger than the\nsize of the string. This should not cause a buffer overrun as it is\nwritten now due to the value for the string format \"%03lu\" can not be\nlarger than 1000. However, this change makes it correct. By making the\nsize correct we guard against potential future changes that could actually\ncause a buffer overrun.\n\nSigned-off-by: Chase Douglas \u003cchase.douglas@canonical.com\u003e\nLKML-Reference: \u003c1276619355-18116-1-git-send-email-chase.douglas@canonical.com\u003e\n\n[ added \u0027UL\u0027 to number 8 to fix gcc warning comparing it to sizeof() ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "67ead0a6ceb001b4cb891d782e440f0e79493ba2",
      "tree": "bd2c13961ef3a5769feebdcb04ff751cb1b37648",
      "parents": [
        "ffb9f99528574ab9a55d4c8fd22e9d3ca49efa86"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon May 24 16:25:13 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 17:12:55 2010 -0400"
      },
      "message": "tracing: Remove open-coded __trace_add_event_call()\n\nLet trace_module_add_events() and event_trace_init() call\n__trace_add_event_call().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4BFA37E9.1020106@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ffb9f99528574ab9a55d4c8fd22e9d3ca49efa86",
      "tree": "3b5d2a5e0c33b214bd7c53d1733fe3771a68d4c7",
      "parents": [
        "c9d932cf8a1c608b676021aef0189376ba6ef151"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon May 24 16:24:52 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 17:12:53 2010 -0400"
      },
      "message": "tracing: Remove redundant raw_init callbacks\n\nraw_init callback is optional.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4BFA37D4.7070500@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c9d932cf8a1c608b676021aef0189376ba6ef151",
      "tree": "b12777124aad80e266c937dbad33be7706aafe7f",
      "parents": [
        "210f766915207636acccba7bec42248bfe882998"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon May 24 16:24:28 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 17:12:52 2010 -0400"
      },
      "message": "tracing: Remove test of NULL define_fields callback\n\nEvery event (or event class) has it\u0027s define_fields callback,\nso the test is redundant.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4BFA37BC.8080707@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "8728fe501ed562c1b46dde3c195eadec77bca033",
      "tree": "c911b4a6af85817ba6bdf3342cbae4838c14b1bb",
      "parents": [
        "c9642c49aae1272d7c24008a40ae614470b957a6"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon May 24 16:22:49 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 17:12:46 2010 -0400"
      },
      "message": "tracing: Don\u0027t allocate common fields for every trace events\n\nEvery event has the same common fields, so it\u0027s a big waste of\nmemory to have a copy of those fields for every event.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4BFA3759.30105@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c9642c49aae1272d7c24008a40ae614470b957a6",
      "tree": "dd42bf76ad9652bc952c0332b14e0b3b7ea38d3c",
      "parents": [
        "f384c954c9fe3d3c6fce5ae66b67f2ddd947d098"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon May 24 16:22:30 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 17:12:44 2010 -0400"
      },
      "message": "tracing: Use a global field list for all syscall exit events\n\nAll syscall exit events have the same fields.\n\nThe kernel size drops 2.5K:\n\n   text    data     bss     dec     hex filename\n7018612 2034376 7251132 16304120         f8c7f8 vmlinux.o.orig\n7018612 2031888 7251132 16301632         f8be40 vmlinux.o\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4BFA3746.8070100@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f384c954c9fe3d3c6fce5ae66b67f2ddd947d098",
      "tree": "a38541b8083a2304435e9a153d408bd7cd44116e",
      "parents": [
        "9a15a07fe2175dc25cd928a354b3839f562ac8cc",
        "5904b3b81d25166e5e39b9727645bb47937618e3"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jun 28 22:33:13 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jun 28 22:33:24 2010 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into perf/core\n\nReason: Further changes conflict with upstream fixes\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "5904b3b81d25166e5e39b9727645bb47937618e3",
      "tree": "2a306f8b0cdea354b3ebc157623dededcf471091",
      "parents": [
        "f3866db8f7534ba8bbb342bebcf5ede542035528",
        "b70e4f0529c089b00d0a6da13106db4de1ada4c7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 28 12:24:43 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 28 12:24:43 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  tracing: Fix undeclared ENOSYS in include/linux/tracepoint.h\n  perf record: prevent kill(0, SIGTERM);\n  perf session: Remove threads from tree on PERF_RECORD_EXIT\n  perf/tracing: Fix regression of perf losing kprobe events\n  perf_events: Fix Intel Westmere event constraints\n  perf record: Don\u0027t call newt functions when not initialized\n"
    },
    {
      "commit": "f3866db8f7534ba8bbb342bebcf5ede542035528",
      "tree": "f73e761ac85faea698eb6ab700361ef199aa68c7",
      "parents": [
        "f014d937d61f47761f961eba903feb2ffa1793aa",
        "4673247562e39a17e09440fa1400819522ccd446"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 28 12:23:12 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 28 12:23:12 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: Deal with desc-\u003eset_type() changing desc-\u003echip\n"
    },
    {
      "commit": "f014d937d61f47761f961eba903feb2ffa1793aa",
      "tree": "4a6a9441b21711e34d567a8066950548935b9b3a",
      "parents": [
        "cf91b415c8419513ada650a932bfb32a526d4d98",
        "0d98bb2656e9bd2dfda2d089db1fe1dbdab41504"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 28 12:18:30 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 28 12:18:30 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: Prevent compiler from optimising the sched_avg_update() loop\n  sched: Fix over-scheduling bug\n  sched: Fix PROVE_RCU vs cpu_cgroup\n"
    },
    {
      "commit": "cf91b415c8419513ada650a932bfb32a526d4d98",
      "tree": "b69cc7920d763b07fa0722edf58813dc17206734",
      "parents": [
        "e6cb6281ef8547fea1243b1c2a4e0f08d9b86ae1",
        "3310d4d38fbc514e7b18bd3b1eea8effdd63b5aa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 28 12:18:02 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 28 12:18:02 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  nohz: Fix nohz ratelimit\n"
    },
    {
      "commit": "e6cb6281ef8547fea1243b1c2a4e0f08d9b86ae1",
      "tree": "4444be8141566dec3c88ff5fa7354cbe4cebccdc",
      "parents": [
        "ab8aadbda7d59d4674ef614cba2a67c50667a6af",
        "8695159967957015f8dfb49315d6f88e111d90e0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 28 12:17:40 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 28 12:17:40 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  sched: silence PROVE_RCU in sched_fork()\n  idr: fix RCU lockdep splat in idr_get_next()\n  rcu: apply RCU protection to wake_affine()\n"
    },
    {
      "commit": "0d98bb2656e9bd2dfda2d089db1fe1dbdab41504",
      "tree": "2172bbdd7fb21640062b2a692ded3d9cebc2382c",
      "parents": [
        "3c93717cfa51316e4dbb471e7c0f9d243359d5f8"
      ],
      "author": {
        "name": "Will Deacon",
        "email": "will.deacon@arm.com",
        "time": "Mon May 24 12:11:43 2010 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 25 16:11:50 2010 +0200"
      },
      "message": "sched: Prevent compiler from optimising the sched_avg_update() loop\n\nGCC 4.4.1 on ARM has been observed to replace the while loop in\nsched_avg_update with a call to uldivmod, resulting in the\nfollowing build failure at link-time:\n\nkernel/built-in.o: In function `sched_avg_update\u0027:\n kernel/sched.c:1261: undefined reference to `__aeabi_uldivmod\u0027\n kernel/sched.c:1261: undefined reference to `__aeabi_uldivmod\u0027\nmake: *** [.tmp_vmlinux1] Error 1\n\nThis patch introduces a fake data hazard to the loop body to\nprevent the compiler optimising the loop away.\n\nSigned-off-by: Will Deacon \u003cwill.deacon@arm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "45a73372efe4a63f44aa2e1125d4a777c2fdc8d8",
      "tree": "d8fbdb1447ec7caac75c73101cf941ba90ed9ced",
      "parents": [
        "c882e0feb937af4e5b991cbd1c81536f37053e86"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Jun 23 23:00:37 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Jun 24 23:33:40 2010 +0200"
      },
      "message": "hw_breakpoints: Fix per task breakpoint tracking\n\nFreeing a perf event can happen in several ways. A task\ncalls perf_event_exit_task() right before exiting. This helper\nwill detach all the events from the task context and queue their\nremoval through free_event() if they are child tasks. The task\nalso loses its context reference there.\n\nReleasing the breakpoint slot from the constraint table is made\nfrom free_event() that calls release_bp_slot(). We count the number\nof breakpoints this task is running by looking at the task\u0027s\nperf_event_ctxp and iterating through its attached events.\nBut at this time, the reference to this context has been cleaned up\nalready.\n\nSo looking at the event-\u003ectx instead of task-\u003eperf_event_ctxp\nto count the remaining breakpoints should solve the problem.\nAt least it would for child breakpoints, but not for parent ones.\nIf the parent exits before the child, it will remove all its\nevents from the context but free_event() will be called later,\non fd release time. And checking the number of breakpoints the\ntask has attached to its context at this time is unreliable as all\nevents have been removed from the context.\n\nTo solve this, we keep track of the list of per task breakpoints.\nOn top of it, we maintain our array of numbers of breakpoints used\nby the tasks. We use the context address as a task id.\n\nSo, instead of looking at the number of events attached to a context,\nwe walk through our list of per task breakpoints and count the number\nof breakpoints that use the same ctx than the one to be reserved or\nreleased from the constraint table, and update the count on top of this\nresult.\n\nIn the meantime it solves a bad refcounting, it also solves a warning,\nreported by Paul.\n\nBadness at /home/paulus/kernel/perf/kernel/hw_breakpoint.c:114\nNIP: c0000000000cb470 LR: c0000000000cb46c CTR: c00000000032d9b8\nREGS: c000000118e7b570 TRAP: 0700   Not tainted  (2.6.35-rc3-perf-00008-g76b0f13\n)\nMSR: 9000000000029032 \u003cEE,ME,CE,IR,DR\u003e  CR: 44004424  XER: 000fffff\nTASK \u003d c0000001187dcad0[3143] \u0027perf\u0027 THREAD: c000000118e78000 CPU: 1\nGPR00: c0000000000cb46c c000000118e7b7f0 c0000000009866a0 0000000000000020\nGPR04: 0000000000000000 000000000000001d 0000000000000000 0000000000000001\nGPR08: c0000000009bed68 c00000000086dff8 c000000000a5bf10 0000000000000001\nGPR12: 0000000024004422 c00000000ffff200 0000000000000000 0000000000000000\nGPR16: 0000000000000000 0000000000000000 0000000000000018 00000000101150f4\nGPR20: 0000000010206b40 0000000000000000 0000000000000000 00000000101150f4\nGPR24: c0000001199090c0 0000000000000001 0000000000000000 0000000000000001\nGPR28: 0000000000000000 0000000000000000 c0000000008ec290 0000000000000000\nNIP [c0000000000cb470] .task_bp_pinned+0x5c/0x12c\nLR [c0000000000cb46c] .task_bp_pinned+0x58/0x12c\nCall Trace:\n[c000000118e7b7f0] [c0000000000cb46c] .task_bp_pinned+0x58/0x12c (unreliable)\n[c000000118e7b8a0] [c0000000000cb584] .toggle_bp_task_slot+0x44/0xe4\n[c000000118e7b940] [c0000000000cb6c8] .toggle_bp_slot+0xa4/0x164\n[c000000118e7b9f0] [c0000000000cbafc] .release_bp_slot+0x44/0x6c\n[c000000118e7ba80] [c0000000000c4178] .bp_perf_event_destroy+0x10/0x24\n[c000000118e7bb00] [c0000000000c4aec] .free_event+0x180/0x1bc\n[c000000118e7bbc0] [c0000000000c54c4] .perf_event_release_kernel+0x14c/0x170\n\nReported-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Mahesh Salgaonkar \u003cmahesh@linux.vnet.ibm.com\u003e\nCc: Will Deacon \u003cwill.deacon@arm.com\u003e\nCc: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "8695159967957015f8dfb49315d6f88e111d90e0",
      "tree": "d575083d37a069be585d575ec036faa8765f1d0c",
      "parents": [
        "94bfa3b6692c7a3f6f119596724204ec975d3ef0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Tue Jun 22 11:44:53 2010 +0200"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Jun 23 15:14:09 2010 -0700"
      },
      "message": "sched: silence PROVE_RCU in sched_fork()\n\nBecause cgroup_fork() is ran before sched_fork() [ from copy_process() ]\nand the child\u0027s pid is not yet visible the child is pinned to its\ncgroup. Therefore we can silence this warning.\n\nA nicer solution would be moving cgroup_fork() to right after\ndup_task_struct() and exclude PF_STARTING from task_subsys_state().\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "f3b577dec1f2ce32d2db6d2ca6badff7002512af",
      "tree": "c9d5d84b2d3e4ae1251f69932a526367a2bac7fa",
      "parents": [
        "7e27d6e778cd87b6f2415515d7127eba53fe5d02"
      ],
      "author": {
        "name": "Daniel J Blueman",
        "email": "daniel.blueman@gmail.com",
        "time": "Tue Jun 01 14:06:13 2010 +0100"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Jun 23 06:50:44 2010 -0700"
      },
      "message": "rcu: apply RCU protection to wake_affine()\n\nThe task_group() function returns a pointer that must be protected\nby either RCU, the -\u003ealloc_lock, or the cgroup lock (see the\nrcu_dereference_check() in task_subsys_state(), which is invoked by\ntask_group()).  The wake_affine() function currently does none of these,\nwhich means that a concurrent update would be within its rights to free\nthe structure returned by task_group().  Because wake_affine() uses this\nstructure only to compute load-balancing heuristics, there is no reason\nto acquire either of the two locks.\n\nTherefore, this commit introduces an RCU read-side critical section that\nstarts before the first call to task_group() and ends after the last use\nof the \"tg\" pointer returned from task_group().  Thanks to Li Zefan for\npointing out the need to extend the RCU read-side critical section from\nthat proposed by the original patch.\n\nSigned-off-by: Daniel J Blueman \u003cdaniel.blueman@gmail.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "646b1db4956ba8bf748b835b5eba211133d91c2e",
      "tree": "061166d873d9da9cf83044a7593ad111787076c5",
      "parents": [
        "0f2c3de2ba110626515234d5d584fb1b0c0749a2",
        "7e27d6e778cd87b6f2415515d7127eba53fe5d02"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 18 10:53:12 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 18 10:53:19 2010 +0200"
      },
      "message": "Merge commit \u0027v2.6.35-rc3\u0027 into perf/core\n\nMerge reason: Go from -rc1 base to -rc3 base, merge in fixes.\n"
    },
    {
      "commit": "3c93717cfa51316e4dbb471e7c0f9d243359d5f8",
      "tree": "0c37ea18287556b42d6264d41c7093dd07f052f5",
      "parents": [
        "dc61b1d65e353d638b2445f71fb8e5b5630f2415"
      ],
      "author": {
        "name": "Alex,Shi",
        "email": "alex.shi@intel.com",
        "time": "Thu Jun 17 14:08:13 2010 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 18 10:45:25 2010 +0200"
      },
      "message": "sched: Fix over-scheduling bug\n\nCommit e70971591 (\"sched: Optimize unused cgroup configuration\") introduced\nan imbalanced scheduling bug.\n\nIf we do not use CGROUP, function update_h_load won\u0027t update h_load. When the\nsystem has a large number of tasks far more than logical CPU number, the\nincorrect cfs_rq[cpu]-\u003eh_load value will cause load_balance() to pull too\nmany tasks to the local CPU from the busiest CPU. So the busiest CPU keeps\ngoing in a round robin. That will hurt performance.\n\nThe issue was found originally by a scientific calculation workload that\ndeveloped by Yanmin. With that commit, the workload performance drops\nabout 40%.\n\n CPU  before    after\n\n 00   : 2       : 7\n 01   : 1       : 7\n 02   : 11      : 6\n 03   : 12      : 7\n 04   : 6       : 6\n 05   : 11      : 7\n 06   : 10      : 6\n 07   : 12      : 7\n 08   : 11      : 6\n 09   : 12      : 6\n 10   : 1       : 6\n 11   : 1       : 6\n 12   : 6       : 6\n 13   : 2       : 6\n 14   : 2       : 6\n 15   : 1       : 6\n\nReviewed-by: Yanmin zhang \u003cyanmin.zhang@intel.com\u003e\nSigned-off-by: Alex Shi \u003calex.shi@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1276754893.9452.5442.camel@debian\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3310d4d38fbc514e7b18bd3b1eea8effdd63b5aa",
      "tree": "14e2a5b6126c9b1341a3d4bf5299545ce4b1999a",
      "parents": [
        "7e27d6e778cd87b6f2415515d7127eba53fe5d02"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Thu Jun 17 18:02:37 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 17 19:37:29 2010 +0200"
      },
      "message": "nohz: Fix nohz ratelimit\n\nChris Wedgwood reports that 39c0cbe (sched: Rate-limit nohz) causes a\nserial console regression, unresponsiveness, and indeed it does. The\nreason is that the nohz code is skipped even when the tick was already\nstopped before the nohz_ratelimit(cpu) condition changed.\n\nMove the nohz_ratelimit() check to the other conditions which prevent\nlong idle sleeps.\n\nReported-by: Chris Wedgwood \u003ccw@f00f.org\u003e\nTested-by: Brian Bloniarz \u003cbmb@athenacr.com\u003e\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Jiri Kosina \u003cjkosina@suse.cz\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Greg KH \u003cgregkh@suse.de\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCc: Jef Driesen \u003cjefdriesen@telenet.be\u003e\nLKML-Reference: \u003c1276790557.27822.516.camel@twins\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "42de5532f4a58a52a60bdd8bd4f80f9f210dd65b",
      "tree": "f624579c4c27e1ffcba5e4141fcc0877c3a6ae56",
      "parents": [
        "e9e8b4dd142da3b6cbf301ba922804d6cdc31a17",
        "2a6b69765ad794389f2fc3e14a0afa1a995221c2"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Jun 12 01:15:40 2010 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Jun 12 01:15:40 2010 -0400"
      },
      "message": "Merge branch \u0027bugzilla-13931-sleep-nvs\u0027 into release\n\nConflicts:\n\tdrivers/acpi/sleep.c\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "a8fb2608053547bc3152ea61a5ec7cdfce5d942c",
      "tree": "08f5fd61dd3fce05a2472f457c48ec249966b372",
      "parents": [
        "d11007703c31db534674ebeeb9eb047bbbe758bd"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jun 10 14:53:16 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jun 10 20:56:54 2010 -0400"
      },
      "message": "perf/tracing: Fix regression of perf losing kprobe events\n\nWith the addition of the code to shrink the kernel tracepoint\ninfrastructure, we lost kprobes being traced by perf. The reason\nis that I tested if the \"tp_event-\u003eclass-\u003eperf_probe\" existed before\nenabling it. This prevents \"ftrace only\" events (like the function\ntrace events) from being enabled by perf.\n\nUnfortunately, kprobe events do not use perf_probe. This causes\nkprobes to be missed by perf. To fix this, we add the test to\nsee if \"tp_event-\u003eclass-\u003ereg\" exists as well as perf_probe.\n\nNormal trace events have only \"perf_probe\" but no \"reg\" function,\nand kprobes and syscalls have the \"reg\" but no \"perf_probe\".\nThe ftrace unique events do not have either, so this is a valid\ntest. If a kprobe or syscall is not to be probed by perf, the\n\"reg\" function is called anyway, and will return a failure and\nprevent perf from probing it.\n\nReported-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nTested-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "85ca7886f566ae387a57a37bc0ffab25e3e117b5",
      "tree": "d170966b3352b3463669492648861795aad0fb92",
      "parents": [
        "7c8d20d40f29e7c08332d406d7a65678dece4627",
        "16106822b67e0a5eb228aebf47e33d6cad1e91b6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 10 09:30:09 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 10 09:30:09 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  tracing: Fix null pointer deref with SEND_SIG_FORCED\n  perf: Fix signed comparison in perf_adjust_period()\n  powerpc/oprofile: fix potential buffer overrun in op_model_cell.c\n  perf symbols: Set the DSO long name when using symbol_conf.vmlinux_name\n"
    },
    {
      "commit": "dd4c4f17d722ffeb2515bf781400675a30fcead7",
      "tree": "0190eff340ffeac7800a3d7d1e0c1232c09397ef",
      "parents": [
        "67a3e12b05e055c0415c556a315a3d3eb637e29e"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 28 16:32:14 2010 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Jun 10 11:02:34 2010 -0400"
      },
      "message": "suspend: Move NVS save/restore code to generic suspend functionality\n\nSaving platform non-volatile state may be required for suspend to RAM as\nwell as hibernation. Move it to more generic code.\n\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nTested-by: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "c726b61c6a5acc54c55ed7a0e7638cc4c5a100a8",
      "tree": "3f44aa013d31d34951e9610e79ff14c1148ad6ac",
      "parents": [
        "7be7923633a142402266d642ccebf74f556a649b",
        "018378c55b03f88ff513aba4e0e93b8d4a9cf241"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 18:55:20 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 18:55:57 2010 +0200"
      },
      "message": "Merge branch \u0027perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/core\n"
    },
    {
      "commit": "039ca4e74a1cf60bd7487324a564ecf5c981f254",
      "tree": "61c6fa8409961d2e22ef9d04ac54442734ebd41a",
      "parents": [
        "30dbb20e68e6f7df974b77d2350ebad5eb6f6c9e"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed May 26 17:22:17 2010 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Jun 09 17:31:22 2010 +0200"
      },
      "message": "tracing: Remove kmemtrace ftrace plugin\n\nWe have been resisting new ftrace plugins and removing existing\nones, and kmemtrace has been superseded by kmem trace events\nand perf-kmem, so we remove it.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\n[ remove kmemtrace from the makefile, handle slob too ]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "4673247562e39a17e09440fa1400819522ccd446",
      "tree": "31746ff2cd7f41048b7507cd3cae9dae2a1519be",
      "parents": [
        "84f7586edab93052bbe7eb72e1e9bce5f7b6ae45"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jun 07 17:53:51 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Jun 09 17:05:08 2010 +0200"
      },
      "message": "genirq: Deal with desc-\u003eset_type() changing desc-\u003echip\n\nThe set_type() function can change the chip implementation when the\ntrigger mode changes. That might result in using an non-initialized\nirq chip when called from __setup_irq() or when called via\nset_irq_type() on an already enabled irq. \n\nThe set_irq_type() function should not be called on an enabled irq,\nbut because we forgot to put a check into it, we have a bunch of users\nwhich grew the habit of doing that and it never blew up as the\nfunction is serialized via desc-\u003elock against all users of desc-\u003echip\nand they never hit the non-initialized irq chip issue.\n\nThe easy fix for the __setup_irq() issue would be to move the\nirq_chip_set_defaults(desc-\u003echip) call after the trigger setting to\nmake sure that a chip change is covered.\n\nBut as we have already users, which do the type setting after\nrequest_irq(), the safe fix for now is to call irq_chip_set_defaults()\nfrom __irq_set_trigger() when desc-\u003eset_type() changed the irq chip.\n\nIt needs a deeper analysis whether we should refuse to change the chip\non an already enabled irq, but that\u0027d be a large scale change to fix\nall the existing users. So that\u0027s neither stable nor 2.6.35 material.\n\nReported-by: Esben Haabendal \u003ceha@doredevelopment.dk\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: linuxppc-dev \u003clinuxppc-dev@ozlabs.org\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "e78505958cf123048fb48cb56b79cebb8edd15fb",
      "tree": "3688d124cdc906cbe9f6587c8671ba0a14c95262",
      "parents": [
        "a6e6dea68c18f705957573ee5596097c7e82d0e5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 21 14:43:08 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 11:12:37 2010 +0200"
      },
      "message": "perf: Convert perf_event to local_t\n\nSince now all modification to event-\u003ecount (and -\u003eprev_count\nand -\u003eperiod_left) are local to a cpu, change then to local64_t so we\navoid the LOCK\u0027ed ops.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a6e6dea68c18f705957573ee5596097c7e82d0e5",
      "tree": "2e8d302800fa4c57cc6604d856e6d680d3ee120f",
      "parents": [
        "b5e58793c7a8ec35e72ea6ec6c353499dd189809"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 21 14:27:58 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 11:12:37 2010 +0200"
      },
      "message": "perf: Add perf_event::child_count\n\nOnly child counters adding back their values into the parent counter\nare responsible for cross-cpu updates to event-\u003ecount.\n\nSo if we pull that out into a new child_count variable, we get an\nevent-\u003ecount that is only modified locally.\n\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\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b5e58793c7a8ec35e72ea6ec6c353499dd189809",
      "tree": "b416db400eb1f67c0b078bd15d60aa9a561d7edf",
      "parents": [
        "1996bda2a42480c275656233e631ee0966574be4"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 21 14:43:12 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 11:12:36 2010 +0200"
      },
      "message": "perf: Add perf_event_count()\n\nCreate a helper function for those sites that want to read the event count.\n\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\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d57e34fdd60be7ffd0b1d86bfa1a553df86b7172",
      "tree": "f6044a0b2c2a757d56ad47e88cfa662bfc5bf424",
      "parents": [
        "ca5135e6b4a3cbc7e187737520fbc4b508f6f7a2"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 28 19:41:35 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 11:12:35 2010 +0200"
      },
      "message": "perf: Simplify the ring-buffer logic: make perf_buffer_alloc() do everything needed\n\nCurrently there are perf_buffer_alloc() + perf_buffer_init() + some\nseparate bits, fold it all into a single perf_buffer_alloc() and only\nleave the attachment to the event separate.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ca5135e6b4a3cbc7e187737520fbc4b508f6f7a2",
      "tree": "b9bf928206d397f9c0474b1d2ea8f777cf4d22d7",
      "parents": [
        "68aa00ac0a82e9a876c799bf6be7622b8f1c8517"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 28 19:33:23 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 11:12:35 2010 +0200"
      },
      "message": "perf: Rename perf_mmap_data to perf_buffer\n\nRename to clarify code.\n\ns/perf_mmap_data/perf_buffer/g and selective s/data/buffer/g\n\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\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8d2cacbbb8deadfae78aa16e4e1ee619bdd7019e",
      "tree": "79fcb319d1c99e348b0a04056e016c85c3666b35",
      "parents": [
        "3af9e859281bda7eb7c20b51879cf43aa788ac2e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue May 25 17:49:05 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 11:12:34 2010 +0200"
      },
      "message": "perf: Cleanup {start,commit,cancel}_txn details\n\nClarify some of the transactional group scheduling API details\nand change it so that a successfull -\u003ecommit_txn also closes\nthe transaction.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1274803086.5882.1752.camel@twins\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3af9e859281bda7eb7c20b51879cf43aa788ac2e",
      "tree": "cddb7fc788abc826551e12bba5892c6b26942392",
      "parents": [
        "8ed92280be013180e24c84456ab6babcb07037cc"
      ],
      "author": {
        "name": "Eric B Munson",
        "email": "ebmunson@us.ibm.com",
        "time": "Tue May 18 15:30:49 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 11:12:34 2010 +0200"
      },
      "message": "perf: Add non-exec mmap() tracking\n\nAdd the capacility to track data mmap()s. This can be used together\nwith PERF_SAMPLE_ADDR for data profiling.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\n[Updated code for stable perf ABI]\nSigned-off-by: Eric B Munson \u003cebmunson@us.ibm.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\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1274193049-25997-1-git-send-email-ebmunson@us.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8ed92280be013180e24c84456ab6babcb07037cc",
      "tree": "5b0826219599532cc1a17ed823bd2358a2bef666",
      "parents": [
        "ecc55f84b2e9741f29daa787ded93986df6cbe17"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 21 15:13:59 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 11:12:33 2010 +0200"
      },
      "message": "perf, trace: Remove superfluous rcu_read_lock()\n\n__DO_TRACE() already calls the callbacks under rcu_read_lock_sched(),\nwhich is sufficient for our needs, avoid doing it again.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ecc55f84b2e9741f29daa787ded93986df6cbe17",
      "tree": "9da1012eb14faf8133e7e432b0da581ed55de6ee",
      "parents": [
        "e768aee89c687a50e6a2110e30c5cae1fbf0d2da"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 21 15:11:34 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 11:12:33 2010 +0200"
      },
      "message": "perf, trace: Inline perf_swevent_put_recursion_context()\n\nInline perf_swevent_put_recursion_context into perf_tp_event(), this\nshrinks the per trace template code footprint and saves a function\ncall.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "30dbb20e68e6f7df974b77d2350ebad5eb6f6c9e",
      "tree": "b28f8232756e0de57ded858d6584724317b405ef",
      "parents": [
        "b0f82b81fe6bbcf78d478071f33e44554726bc81"
      ],
      "author": {
        "name": "Américo Wang",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Wed May 26 18:57:53 2010 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 08 23:31:28 2010 +0200"
      },
      "message": "tracing: Remove boot tracer\n\nThe boot tracer is useless. It simply logs the initcalls\nbut in fact these initcalls are also logged through printk\nwhile using the initcall_debug kernel parameter.\n\nNobody seem to be using it so far. Then just remove it.\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Chase Douglas \u003cchase.douglas@canonical.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c20100526105753.GA5677@cr0.nay.redhat.com\u003e\n[ remove the hooks in main.c, and the headers ]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "b0f82b81fe6bbcf78d478071f33e44554726bc81",
      "tree": "6305c095b927f956a791b9dce687cb94a21718e6",
      "parents": [
        "c9cf4dbb4d9ca715d8fedf13301a53296429abc6"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu May 20 07:47:21 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 08 23:31:27 2010 +0200"
      },
      "message": "perf: Drop the skip argument from perf_arch_fetch_regs_caller\n\nDrop this argument now that we always want to rewind only to the\nstate of the first caller.\nIt means frame pointers are not necessary anymore to reliably get\nthe source of an event. But this also means we need this helper\nto be a macro now, as an inline function is not an option since\nwe need to know when to provide a default implentation.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "c9cf4dbb4d9ca715d8fedf13301a53296429abc6",
      "tree": "66f0bb55d89a41bbe8ac76f8dee418e84e255d2d",
      "parents": [
        "9dda696f0de87a2e5cfabb147e28c76b7d3c6846"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed May 19 21:35:17 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 08 23:29:52 2010 +0200"
      },
      "message": "x86: Unify dumpstack.h and stacktrace.h\n\narch/x86/include/asm/stacktrace.h and arch/x86/kernel/dumpstack.h\ndeclare headers of objects that deal with the same topic.\nActually most of the files that include stacktrace.h also include\ndumpstack.h\n\nAlthough dumpstack.h seems more reserved for internals of stack\ntraces, those are quite often needed to define specialized stack\ntrace operations. And perf event arch headers are going to need\naccess to such low level operations anyway. So don\u0027t continue to\nbother with dumpstack.h as it\u0027s not anymore about isolated deep\ninternals.\n\nv2: fix struct stack_frame definition conflict in sysprof\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Soeren Sandmann \u003csandmann@daimi.au.dk\u003e\n"
    },
    {
      "commit": "6113e45f831616de98c54a005260223b21bcb6b9",
      "tree": "0d56dbfae392f89b33c2ae6a36a5cc1ea1c1c988",
      "parents": [
        "84bb671dc46d77d665d2b5e74539e81b2129bb3e",
        "5168ae50a66e3ff7184c2b16d661bd6d70367e50"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 08 19:34:40 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 08 19:34:40 2010 +0200"
      },
      "message": "Merge branch \u0027tip/perf/core-3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "dc61b1d65e353d638b2445f71fb8e5b5630f2415",
      "tree": "07d79b2d385a380207cd889ac764b57190421fd1",
      "parents": [
        "3975d16760d4be7402d1067c548c30c427971331"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Jun 08 11:40:42 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 08 18:44:04 2010 +0200"
      },
      "message": "sched: Fix PROVE_RCU vs cpu_cgroup\n\nPROVE_RCU has a few issues with the cpu_cgroup because the scheduler\ntypically holds rq-\u003elock around the css rcu derefs but the generic\ncgroup code doesn\u0027t (and can\u0027t) know about that lock.\n\nProvide means to add extra checks to the css dereference and use that\nin the scheduler to annotate its users.\n\nThe addition of rq-\u003elock to these checks is correct because the\ncgroup_subsys::attach() method takes the rq-\u003elock for each task it\nmoves, therefore by holding that lock, we ensure the task is pinned to\nthe current cgroup and the RCU derefence is valid.\n\nThat leaves one genuine race in __sched_setscheduler() where we used\ntask_group() without holding any of the required locks and thus raced\nwith the cgroup code. Solve this by moving the check under the\nappropriate lock.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f6ab91add6355e231e1c47897027b2a6ee4fa268",
      "tree": "74dffdf3b78c290d38a78b73788dce64e4c1e857",
      "parents": [
        "58cc1a9e3b11a84e66c4d3a4cc9073f2cb0ecabb"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 04 15:18:01 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 08 18:43:00 2010 +0200"
      },
      "message": "perf: Fix signed comparison in perf_adjust_period()\n\nFrederic reported that frequency driven swevents didn\u0027t work properly\nand even caused a division-by-zero error.\n\nIt turns out there are two bugs, the division-by-zero comes from a\nfailure to deal with that in perf_calculate_period().\n\nThe other was more interesting and turned out to be a wrong comparison\nin perf_adjust_period(). The comparison was between an s64 and u64 and\ngot implicitly converted to an unsigned comparison. The problem is\nthat period_left is typically \u003c 0, so it ended up being always true.\n\nCure this by making the local period variables s64.\n\nReported-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nTested-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \u003cstable@kernel.org\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "90ec7819737d42a0ad1c2df1ff56016facae3c6e",
      "tree": "0dac92b38de5cb13764b5f3de33346359928deda",
      "parents": [
        "8ce655e737dc395e115ecdce143a43b9b6127f46",
        "9bea7f23952d5948f8e5dfdff4de09bb9981fb5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 04 21:09:48 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 04 21:09:48 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  module: fix bne2 \"gave up waiting for init of module libcrc32c\"\n  module: verify_export_symbols under the lock\n  module: move find_module check to end\n  module: make locking more fine-grained.\n  module: Make module sysfs functions private.\n  module: move sysfs exposure to end of load_module\n  module: fix kdb\u0027s illicit use of struct module_use.\n  module: Make the \u0027usage\u0027 lists be two-way\n"
    },
    {
      "commit": "9bea7f23952d5948f8e5dfdff4de09bb9981fb5f",
      "tree": "9cb7231bcf901fe4198142b9b054ce5ae6ce34c8",
      "parents": [
        "be593f4ce4eb1bd40e38fdc403371f149f6f12eb"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:37 2010 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:37 2010 +0930"
      },
      "message": "module: fix bne2 \"gave up waiting for init of module libcrc32c\"\n\nProblem: it\u0027s hard to avoid an init routine stumbling over a\nrequest_module these days.  And it\u0027s not clear it\u0027s always a bad idea:\nfor example, a module like kvm with dynamic dependencies on kvm-intel\nor kvm-amd would be neater if it could simply request_module the right\none.\n\nIn this particular case, it\u0027s libcrc32c:\n\n\tlibcrc32c_mod_init\n\t crypto_alloc_shash\n\t  crypto_alloc_tfm\n\t   crypto_find_alg\n\t    crypto_alg_mod_lookup\n\t     crypto_larval_lookup\n\t      request_module\n\nIf another module is waiting inside resolve_symbol() for libcrc32c to\nfinish initializing (ie. bne2 depends on libcrc32c) then it does so\nholding the module lock, and our request_module() can\u0027t make progress\nuntil that is released.\n\nWaiting inside resolve_symbol() without the lock isn\u0027t all that hard:\nwe just need to pass the -EBUSY up the call chain so we can sleep\nwhere we don\u0027t hold the lock.  Error reporting is a bit trickier: we\nneed to copy the name of the unfinished module before releasing the\nlock.\n\nOther notes:\n1) This also fixes a theoretical issue where a weak dependency would allow\n   symbol version mismatches to be ignored.\n2) We rename use_module to ref_module to make life easier for the only\n   external user (the out-of-tree ksplice patches).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Tim Abbot \u003ctabbott@ksplice.com\u003e\nTested-by: Brandon Philips \u003cbphilips@suse.de\u003e\n"
    },
    {
      "commit": "be593f4ce4eb1bd40e38fdc403371f149f6f12eb",
      "tree": "693aee53e2d87a8ae92b6276d2aef766e8154814",
      "parents": [
        "3bafeb6247042dcbb72b0141ec7c7107de9f0b99"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:37 2010 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:37 2010 +0930"
      },
      "message": "module: verify_export_symbols under the lock\n\nIt disabled preempt so it was \"safe\", but nothing stops another module\nslipping in before this module is added to the global list now we don\u0027t\nhold the lock the whole time.\n\nSo we check this just after we check for duplicate modules, and just\nbefore we put the module in the global list.\n\n(find_symbol finds symbols in coming and going modules, too).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "3bafeb6247042dcbb72b0141ec7c7107de9f0b99",
      "tree": "f9b8f2437455332cd64d94bedb0836ac0f2b6fd9",
      "parents": [
        "75676500f8298f0ee89db12db97294883c4b768e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 05 11:17:36 2010 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:37 2010 +0930"
      },
      "message": "module: move find_module check to end\n\nI think Rusty may have made the lock a bit _too_ finegrained there, and\ndidn\u0027t add it to some places that needed it. It looks, for example, like\nPATCH 1/2 actually drops the lock in places where it\u0027s needed\n(\"find_module()\" is documented to need it, but now load_module() didn\u0027t\nhold it at all when it did the find_module()).\n\nRather than adding a new \"module_loading\" list, I think we should be able\nto just use the existing \"modules\" list, and just fix up the locking a\nbit.\n\nIn fact, maybe we could just move the \"look up existing module\" a bit\nlater - optimistically assuming that the module doesn\u0027t exist, and then\njust undoing the work if it turns out that we were wrong, just before\nadding ourselves to the list.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "75676500f8298f0ee89db12db97294883c4b768e",
      "tree": "fbd74f1b6bfd258fac980c6cc3d4fa9eafa47d51",
      "parents": [
        "6407ebb271fc34440b306f305e1efb7685eece26"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:36 2010 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:36 2010 +0930"
      },
      "message": "module: make locking more fine-grained.\n\nKay Sievers \u003ckay.sievers@vrfy.org\u003e reports that we still have some\ncontention over module loading which is slowing boot.\n\nLinus also disliked a previous \"drop lock and regrab\" patch to fix the\nbne2 \"gave up waiting for init of module libcrc32c\" message.\n\nThis is more ambitious: we only grab the lock where we need it.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Brandon Philips \u003cbrandon@ifup.org\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6407ebb271fc34440b306f305e1efb7685eece26",
      "tree": "dd3fa7484bcaa4499138d2249dbed24f003fdf85",
      "parents": [
        "80a3d1bb410e000e176931a076cdf19a1e89a955"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:36 2010 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:36 2010 +0930"
      },
      "message": "module: Make module sysfs functions private.\n\nThese were placed in the header in ef665c1a06 to get the various\nSYSFS/MODULE config combintations to compile.\n\nThat may have been necessary then, but it\u0027s not now.  These functions\nare all local to module.c.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\n"
    },
    {
      "commit": "80a3d1bb410e000e176931a076cdf19a1e89a955",
      "tree": "6883bbc3b2032d9604374513ccfd496dd63e76ba",
      "parents": [
        "c8e21ced08b39ef8dfe7236fb2a923a95f645262"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:36 2010 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:36 2010 +0930"
      },
      "message": "module: move sysfs exposure to end of load_module\n\nThis means a little extra work, but is more logical: we don\u0027t put\nanything in sysfs until we\u0027re about to put the module into the\nglobal list an parse its parameters.\n\nThis also gives us a logical place to put duplicate module detection\nin the next patch.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "c8e21ced08b39ef8dfe7236fb2a923a95f645262",
      "tree": "da34400daf3049814b459b9c8ba507d90abfe2bc",
      "parents": [
        "2c02dfe7fe3fba97a5665d329d039d2415ea5607"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:35 2010 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:36 2010 +0930"
      },
      "message": "module: fix kdb\u0027s illicit use of struct module_use.\n\nLinus changed the structure, and luckily this didn\u0027t compile any more.\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nCc: Martin Hicks \u003cmort@sgi.com\u003e\n"
    },
    {
      "commit": "2c02dfe7fe3fba97a5665d329d039d2415ea5607",
      "tree": "7f50644bbfcc119cb85e21642a76eabfaf77b8ad",
      "parents": [
        "ad8456361fa19068cf49b50a4f98e41b73c08e76"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 31 12:19:37 2010 -0700"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jun 05 11:17:35 2010 +0930"
      },
      "message": "module: Make the \u0027usage\u0027 lists be two-way\n\nWhen adding a module that depends on another one, we used to create a\none-way list of \"modules_which_use_me\", so that module unloading could\nsee who needs a module.\n\nIt\u0027s actually quite simple to make that list go both ways: so that we\nnot only can see \"who uses me\", but also see a list of modules that are\n\"used by me\".\n\nIn fact, we always wanted that list in \"module_unload_free()\": when we\nunload a module, we want to also release all the other modules that are\nused by that module.  But because we didn\u0027t have that list, we used to\nfirst iterate over all modules, and then iterate over each \"used by me\"\nlist of that module.\n\nBy making the list two-way, we simplify module_unload_free(), and it\nallows for some trivial fixes later too.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e (cleaned \u0026 rebased)\n"
    },
    {
      "commit": "d2dd328b7f7bc6cebe167648289337755944ad2a",
      "tree": "5d664a2db1ac209f7537452ddc02597972f7aa37",
      "parents": [
        "c1518f12bab97a6d409a25aaccb02dc8895800f3",
        "1abec4fdbb142e3ccb6ce99832fae42129134a96"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 04 15:37:44 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 04 15:37:44 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block: (27 commits)\n  block: make blk_init_free_list and elevator_init idempotent\n  block: avoid unconditionally freeing previously allocated request_queue\n  pipe: change /proc/sys/fs/pipe-max-pages to byte sized interface\n  pipe: change the privilege required for growing a pipe beyond system max\n  pipe: adjust minimum pipe size to 1 page\n  block: disable preemption before using sched_clock()\n  cciss: call BUG() earlier\n  Preparing 8.3.8rc2\n  drbd: Reduce verbosity\n  drbd: use drbd specific ratelimit instead of global printk_ratelimit\n  drbd: fix hang on local read errors while disconnected\n  drbd: Removed the now empty w_io_error() function\n  drbd: removed duplicated #includes\n  drbd: improve usage of MSG_MORE\n  drbd: need to set socket bufsize early to take effect\n  drbd: improve network latency, TCP_QUICKACK\n  drbd: Revert \"drbd: Create new current UUID as late as possible\"\n  brd: support discard\n  Revert \"writeback: fix WB_SYNC_NONE writeback from umount\"\n  Revert \"writeback: ensure that WB_SYNC_NONE writeback with sb pinned is sync\"\n  ...\n"
    },
    {
      "commit": "9e506f7adce8e6165a104d3d78fddd8ff0cdccf8",
      "tree": "9ddfd67eec7e8a7dc73fb0ced97cc06e54a35c63",
      "parents": [
        "94b3dd0f7bb393d93e84a173b1df9b8b64c83ac4"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Fri Jun 04 14:15:04 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 04 15:21:45 2010 -0700"
      },
      "message": "kernel/: fix BUG_ON checks for cpu notifier callbacks direct call\n\nThe commit 80b5184cc537718122e036afe7e62d202b70d077 (\"kernel/: convert cpu\nnotifier to return encapsulate errno value\") changed the return value of\ncpu notifier callbacks.\n\nThose callbacks don\u0027t return NOTIFY_BAD on failures anymore.  But there\nare a few callbacks which are called directly at init time and checking\nthe return value.\n\nI forgot to change BUG_ON checking by the direct callers in the commit.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@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": "94b3dd0f7bb393d93e84a173b1df9b8b64c83ac4",
      "tree": "11f49a1614e8321a6b4335f7a5022a487838397d",
      "parents": [
        "007d08678eb87478b65b3f229960c81dd7c7b8f3"
      ],
      "author": {
        "name": "Greg Thelen",
        "email": "gthelen@google.com",
        "time": "Fri Jun 04 14:15:03 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 04 15:21:45 2010 -0700"
      },
      "message": "cgroups: alloc_css_id() increments hierarchy depth\n\nChild groups should have a greater depth than their parents.  Prior to\nthis change, the parent would incorrectly report zero memory usage for\nchild cgroups when use_hierarchy is enabled.\n\ntest script:\n  mount -t cgroup none /cgroups -o memory\n  cd /cgroups\n  mkdir cg1\n\n  echo 1 \u003e cg1/memory.use_hierarchy\n  mkdir cg1/cg11\n\n  echo $$ \u003e cg1/cg11/tasks\n  dd if\u003d/dev/zero of\u003d/tmp/foo bs\u003d1M count\u003d1\n\n  echo\n  echo CHILD\n  grep cache cg1/cg11/memory.stat\n\n  echo\n  echo PARENT\n  grep cache cg1/memory.stat\n\n  echo $$ \u003e tasks\n  rmdir cg1/cg11 cg1\n  cd /\n  umount /cgroups\n\nUsing fae9c79, a recent patch that changed alloc_css_id() depth computation,\nthe parent incorrectly reports zero usage:\n  root@ubuntu:~# ./test\n  1+0 records in\n  1+0 records out\n  1048576 bytes (1.0 MB) copied, 0.0151844 s, 69.1 MB/s\n\n  CHILD\n  cache 1048576\n  total_cache 1048576\n\n  PARENT\n  cache 0\n  total_cache 0\n\nWith this patch, the parent correctly includes child usage:\n  root@ubuntu:~# ./test\n  1+0 records in\n  1+0 records out\n  1048576 bytes (1.0 MB) copied, 0.0136827 s, 76.6 MB/s\n\n  CHILD\n  cache 1052672\n  total_cache 1052672\n\n  PARENT\n  cache 0\n  total_cache 1052672\n\nSigned-off-by: Greg Thelen \u003cgthelen@google.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.34.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "485d527686850d68a0e9006dd9904f19f122485e",
      "tree": "8400c646135bb4ce68f137004298e1be7fdbd913",
      "parents": [
        "d6d03f9158516b50d0d343158e3f33bcff1e4ca5"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Jun 04 14:14:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 04 15:21:45 2010 -0700"
      },
      "message": "sys_personality: change sys_personality() to accept \"unsigned int\" instead of u_long\n\ntask_struct-\u003epesonality is \"unsigned int\", but sys_personality() paths use\n\"unsigned long pesonality\".  This means that every assignment or\ncomparison is not right.  In particular, if this argument does not fit\ninto \"unsigned int\" __set_personality() changes the caller\u0027s personality\nand then sys_personality() returns -EINVAL.\n\nTurn this argument into \"unsigned int\" and avoid overflows.  Obviously,\nthis is the user-visible change, we just ignore the upper bits.  But this\ncan\u0027t break the sane application.\n\nThere is another thing which can confuse the poorly written applications.\nUser-space thinks that this syscall returns int, not long.  This means\nthat the returned value can be negative and look like the error code.  But\nnote that libc won\u0027t be confused and thus errno won\u0027t be set, and with\nthis patch the user-space can never get -1 unless sys_personality() really\nfails.  And, most importantly, the negative RET !\u003d -1 is only possible if\nthat app previously called personality(RET).\n\nPointed-out-by: Wenming Zhang \u003cwezhang@redhat.com\u003e\nSuggested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5168ae50a66e3ff7184c2b16d661bd6d70367e50",
      "tree": "2fb21fc3bd346e4f589605d940dfb1bacac30bf5",
      "parents": [
        "d1f74e20b5b064a130cd0743a256c2d3cfe84010"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jun 03 09:36:50 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jun 03 19:32:38 2010 -0400"
      },
      "message": "tracing: Remove ftrace_preempt_disable/enable\n\nThe ftrace_preempt_disable/enable functions were to address a\nrecursive race caused by the function tracer. The function tracer\ntraces all functions which makes it easily susceptible to recursion.\nOne area was preempt_enable(). This would call the scheduler and\nthe schedulre would call the function tracer and loop.\n(So was it thought).\n\nThe ftrace_preempt_disable/enable was made to protect against recursion\ninside the scheduler by storing the NEED_RESCHED flag. If it was\nset before the ftrace_preempt_disable() it would not call schedule\non ftrace_preempt_enable(), thinking that if it was set before then\nit would have already scheduled unless it was already in the scheduler.\n\nThis worked fine except in the case of SMP, where another task would set\nthe NEED_RESCHED flag for a task on another CPU, and then kick off an\nIPI to trigger it. This could cause the NEED_RESCHED to be saved at\nftrace_preempt_disable() but the IPI to arrive in the the preempt\ndisabled section. The ftrace_preempt_enable() would not call the scheduler\nbecause the flag was already set before entring the section.\n\nThis bug would cause a missed preemption check and cause lower latencies.\n\nInvestigating further, I found that the recusion caused by the function\ntracer was not due to schedule(), but due to preempt_schedule(). Now\nthat preempt_schedule is completely annotated with notrace, the recusion\nno longer is an issue.\n\nReported-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d1f74e20b5b064a130cd0743a256c2d3cfe84010",
      "tree": "b93ab590c24bb08f6db0dfc2a3ba60fa43af7f92",
      "parents": [
        "9dda696f0de87a2e5cfabb147e28c76b7d3c6846"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jun 02 21:52:29 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jun 03 19:09:41 2010 -0400"
      },
      "message": "tracing/sched: Make preempt_schedule() notrace\n\nThe function tracer code uses ftrace_preempt_disable() to disable\npreemption instead of normal preempt_disable(). But there\u0027s a slight\nrace condition that may cause it to lose a preemption check.\n\nThis was made to keep the function tracer from recursing on itself\nby disabling preemption then having the enable call the function tracer\nagain, causing infinite recursion.\n\nThe bug was assumed to happen if the call was just in schedule, but\nthis is incorrect. The bug is caused by preempt_schedule() which\nis called by preempt_enable(). The calling of preempt_enable() when\nNEED_RESCHED was set would call preempt_schedule() which would call\nthe function tracer again.\n\nBy making the preempt_schedule() and add_preempt_count() notrace\nthen this will prevent the inifinite recursion. This is because\nthe add_preempt_count() would stop the preempt_enable() in the\nfunction tracer from calling preempt_schedule() again.\n\nThe sub_preempt_count() is also made notrace just to keep it\nsymmetric.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "39d112100e561686ab1e2b19c57984163ad6c1fa",
      "tree": "19b3cd50345306de6f95b58b4a35e8f725786b9b",
      "parents": [
        "167b7129042a4b4c09bb4ede5482ff79340a3999",
        "02f726949f2be0967aa4871dd4e47d3967779b26"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 03 15:47:51 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 03 15:47:51 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, trace: Fix sched_switch() prev_state argument\n  sched: Fix wake_affine() vs RT tasks\n  sched: Make sure timers have migrated before killing the migration_thread\n"
    },
    {
      "commit": "f150dba6d4a1e275b62ca76572c2786c71b91e85",
      "tree": "1fb8ed0a64f69431e8a3304a1b346a19979028b9",
      "parents": [
        "636667a545b2d16797f27002a65d688c195c9b60",
        "c6df8d5ab87a246942d138321e1721edbb69f6e1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 03 15:45:26 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 03 15:45:26 2010 -0700"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf: Fix crash in swevents\n  perf buildid-list: Fix --with-hits event processing\n  perf scripts python: Give field dict to unhandled callback\n  perf hist: fix objdump output parsing\n  perf-record: Check correct pid when forking\n  perf: Do the comm inheritance per thread in event__process_task\n  perf: Use event__process_task from perf sched\n  perf: Process comm events by tid\n  blktrace: Fix new kernel-doc warnings\n  perf_events: Fix unincremented buffer base on partial copy\n  perf_events: Fix event scheduling issues introduced by transactional API\n  perf_events, trace: Fix perf_trace_destroy(), mutex went missing\n  perf_events, trace: Fix probe unregister race\n  perf_events: Fix races in group composition\n  perf_events: Fix races and clean up perf_event and perf_mmap_data interaction\n"
    },
    {
      "commit": "c6df8d5ab87a246942d138321e1721edbb69f6e1",
      "tree": "4fa2965d148c3e7ea456ab889d278d5c16d25d17",
      "parents": [
        "da3fd1a0010ccc9fe6fd5ae2b9e85e1aacc03e4d"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 03 11:21:20 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 03 17:03:08 2010 +0200"
      },
      "message": "perf: Fix crash in swevents\n\nFrederic reported that because swevents handling doesn\u0027t disable IRQs\nanymore, we can get a recursion of perf_adjust_period(), once from\noverflow handling and once from the tick.\n\nIf both call -\u003edisable, we get a double hlist_del_rcu() and trigger\na LIST_POISON2 dereference.\n\nSince we don\u0027t actually need to stop/start a swevent to re-programm\nthe hardware (lack of hardware to program), simply nop out these\ncallbacks for the swevent pmu.\n\nReported-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1275557609.27810.35218.camel@twins\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ff9da691c0498ff81fdd014e7a0731dab2337dac",
      "tree": "429dc9ea36c9927954ed3a32f03d28730e693c8b",
      "parents": [
        "419f8367ea37e5adc5d95479e8fd5554b92b49fe"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Jun 03 14:54:39 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Jun 03 14:54:39 2010 +0200"
      },
      "message": "pipe: change /proc/sys/fs/pipe-max-pages to byte sized interface\n\nThis changes the interface to be based on bytes instead. The API\nmatches that of F_SETPIPE_SZ in that it rounds up the passed in\nsize so that the resulting page array is a power-of-2 in size.\n\nThe proc file is renamed to /proc/sys/fs/pipe-max-size to\nreflect this change.\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "5c113fbeed7a5a192d8431a768965f8a45c16475",
      "tree": "af33ad559690221cc1b015c50ff804fd51c5da2b",
      "parents": [
        "1f73897861b8ef0be64ff4b801f8d6f830f683b5"
      ],
      "author": {
        "name": "Daniel J Blueman",
        "email": "daniel.blueman@gmail.com",
        "time": "Tue Jun 01 12:15:11 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 01 09:22:50 2010 -0700"
      },
      "message": "fix cpu_chain section mismatch...\n\nIn commit e9fb7631ebcd (\"cpu-hotplug: introduce cpu_notify(),\n__cpu_notify(), cpu_notify_nofail()\") the new helper functions access\ncpu_chain.  As a result, it shouldn\u0027t be marked __cpuinitdata (via\nsection mismatch warning).\n\nAlternatively, the helper functions should be forced inline, or marked\n__ref or __cpuinit.  In the meantime, this patch silences the warning\nthe trivial way.\n\nSigned-off-by: Daniel J Blueman \u003cdaniel.blueman@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1f73897861b8ef0be64ff4b801f8d6f830f683b5",
      "tree": "b4bae8f12e1422113910d8cb00a19d010dc4a52f",
      "parents": [
        "b904d7131d116900524bd36ec170dcd97846bfd3",
        "64ffc9ff424c65adcffe7d590018cc75e2d5d42a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 01 08:55:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 01 08:55:52 2010 -0700"
      },
      "message": "Merge branch \u0027for-35\u0027 of git://repo.or.cz/linux-kbuild\n\n* \u0027for-35\u0027 of git://repo.or.cz/linux-kbuild: (81 commits)\n  kbuild: Revert part of e8d400a to resolve a conflict\n  kbuild: Fix checking of scm-identifier variable\n  gconfig: add support to show hidden options that have prompts\n  menuconfig: add support to show hidden options which have prompts\n  gconfig: remove show_debug option\n  gconfig: remove dbg_print_ptype() and dbg_print_stype()\n  kconfig: fix zconfdump()\n  kconfig: some small fixes\n  add random binaries to .gitignore\n  kbuild: Include gen_initramfs_list.sh and the file list in the .d file\n  kconfig: recalc symbol value before showing search results\n  .gitignore: ignore *.lzo files\n  headerdep: perlcritic warning\n  scripts/Makefile.lib: Align the output of LZO\n  kbuild: Generate modules.builtin in make modules_install\n  Revert \"kbuild: specify absolute paths for cscope\"\n  kbuild: Do not unnecessarily regenerate modules.builtin\n  headers_install: use local file handles\n  headers_check: fix perl warnings\n  export_report: fix perl warnings\n  ...\n"
    },
    {
      "commit": "e51fd5e22e12b39f49b1bb60b37b300b17378a43",
      "tree": "391500ff509dc30991db38e3d54eaccfe385d1cb",
      "parents": [
        "54e88fad223c4e1d94289611a90c7fe3ebe5631b"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon May 31 12:37:30 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 01 09:27:16 2010 +0200"
      },
      "message": "sched: Fix wake_affine() vs RT tasks\n\nMike reports that since e9e9250b (sched: Scale down cpu_power due to RT\ntasks), wake_affine() goes funny on RT tasks due to them still having a\n!0 weight and wake_affine() still subtracts that from the rq weight.\n\nSince nobody should be using se-\u003eweight for RT tasks, set the value to\nzero. Also, since we now use -\u003ecpu_power to normalize rq weights to\naccount for RT cpu usage, add that factor into the imbalance computation.\n\nReported-by: Mike Galbraith \u003cefault@gmx.de\u003e\nTested-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1275316109.27810.22969.camel@twins\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "293a7cfeedc2b2380a7c7274902323c3cf5f7575",
      "tree": "00576870400cb640fe92ea3f525338e6e3733a2e",
      "parents": [
        "67a3e12b05e055c0415c556a315a3d3eb637e29e"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon May 31 19:53:50 2010 +0930"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 31 11:21:32 2010 -0700"
      },
      "message": "module: fix reference to mod-\u003epercpu after freeing module.\n\nRafael sees a sometimes crash at precpu_modfree from kernel/module.c; it\nonly occurred with another (since-reverted) patch, but that patch simply\nchanged timing to uncover this bug, it was otherwise unrelated.\n\nThe comment about the mod being freed is self-explanatory, but neither\nTejun nor I read it.  This bug was introduced in 259354deaa, after it\nhad previously been fixed in 6e2b75740b.  How embarrassing.\n\nReported-by: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nEmbarrassingly-Acked-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nTested-by: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "546cf44a1b507c1cbb5cf42bbe6169780567f36f",
      "tree": "ab0373b82198dcae5870fa2af1916102894069f1",
      "parents": [
        "74048f895fa8cbf8119b4999f1f44881a825f954"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Sat May 29 11:45:07 2010 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 31 09:58:20 2010 +0200"
      },
      "message": "blktrace: Fix new kernel-doc warnings\n\nFix blktrace.c kernel-doc warnings:\n Warning(kernel/trace/blktrace.c:858): No description found for parameter \u0027ignore\u0027\n Warning(kernel/trace/blktrace.c:890): No description found for parameter \u0027ignore\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20100529114507.c466fc1e.randy.dunlap@oracle.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ],
  "next": "74048f895fa8cbf8119b4999f1f44881a825f954"
}
