)]}'
{
  "log": [
    {
      "commit": "12fe32e4f942ac5c71a4ab70b039fee65c0dc29d",
      "tree": "b0878e49e9fab1fd154fde1dd57057391831b668",
      "parents": [
        "a63856252d2112e7c452696037a86ceb12f47f80",
        "2121db74ba0fd2259f0e2265511684fadda9ac49"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 06 13:30:00 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 06 13:30:00 2009 -0700"
      },
      "message": "Merge branch \u0027kmemtrace-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027kmemtrace-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  kmemtrace: trace kfree() calls with NULL or zero-length objects\n  kmemtrace: small cleanups\n  kmemtrace: restore original tracing data binary format, improve ABI\n  kmemtrace: kmemtrace_alloc() must fill type_id\n  kmemtrace: use tracepoints\n  kmemtrace, rcu: don\u0027t include unnecessary headers, allow kmemtrace w/ tracepoints\n  kmemtrace, rcu: fix rcupreempt.c data structure dependencies\n  kmemtrace, rcu: fix rcu_tree_trace.c data structure dependencies\n  kmemtrace, rcu: fix linux/rcutree.h and linux/rcuclassic.h dependencies\n  kmemtrace, mm: fix slab.h dependency problem in mm/failslab.c\n  kmemtrace, kbuild: fix slab.h dependency problem in lib/decompress_unlzma.c\n  kmemtrace, kbuild: fix slab.h dependency problem in lib/decompress_bunzip2.c\n  kmemtrace, kbuild: fix slab.h dependency problem in lib/decompress_inflate.c\n  kmemtrace, squashfs: fix slab.h dependency problem in squasfs\n  kmemtrace, befs: fix slab.h dependency problem\n  kmemtrace, security: fix linux/key.h header file dependencies\n  kmemtrace, fs: fix linux/fdtable.h header file dependencies\n  kmemtrace, fs: uninline simple_transaction_set()\n  kmemtrace, fs, security: move alloc_secdata() and free_secdata() to linux/security.h\n"
    },
    {
      "commit": "714f83d5d9f7c785f622259dad1f4fad12d64664",
      "tree": "20563541ae438e11d686b4d629074eb002a481b7",
      "parents": [
        "8901e7ffc2fa78ede7ce9826dbad68a3a25dc2dc",
        "645dae969c3b8651c5bc7c54a1835ec03820f85f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 05 11:04:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 05 11:04:19 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (413 commits)\n  tracing, net: fix net tree and tracing tree merge interaction\n  tracing, powerpc: fix powerpc tree and tracing tree interaction\n  ring-buffer: do not remove reader page from list on ring buffer free\n  function-graph: allow unregistering twice\n  trace: make argument \u0027mem\u0027 of trace_seq_putmem() const\n  tracing: add missing \u0027extern\u0027 keywords to trace_output.h\n  tracing: provide trace_seq_reserve()\n  blktrace: print out BLK_TN_MESSAGE properly\n  blktrace: extract duplidate code\n  blktrace: fix memory leak when freeing struct blk_io_trace\n  blktrace: fix blk_probes_ref chaos\n  blktrace: make classic output more classic\n  blktrace: fix off-by-one bug\n  blktrace: fix the original blktrace\n  blktrace: fix a race when creating blk_tree_root in debugfs\n  blktrace: fix timestamp in binary output\n  tracing, Text Edit Lock: cleanup\n  tracing: filter fix for TRACE_EVENT_FORMAT events\n  ftrace: Using FTRACE_WARN_ON() to check \"freed record\" in ftrace_release()\n  x86: kretprobe-booster interrupt emulation code fix\n  ...\n\nFix up trivial conflicts in\n arch/parisc/include/asm/ftrace.h\n include/linux/memory.h\n kernel/extable.c\n kernel/module.c\n"
    },
    {
      "commit": "811158b147a503fbdf9773224004ffd32002d1fe",
      "tree": "0a11dcfefe721bfc38ea9f1f4a238822dbae0dda",
      "parents": [
        "4e76c5ccd5ac9bd003467d3bb0f49b18572dd4cd",
        "b26e0ed4936b743b693a4cc1413561fa3e4eaf65"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 03 15:24:35 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 03 15:24:35 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (28 commits)\n  trivial: Update my email address\n  trivial: NULL noise: drivers/mtd/tests/mtd_*test.c\n  trivial: NULL noise: drivers/media/dvb/frontends/drx397xD_fw.h\n  trivial: Fix misspelling of \"Celsius\".\n  trivial: remove unused variable \u0027path\u0027 in alloc_file()\n  trivial: fix a pdlfush -\u003e pdflush typo in comment\n  trivial: jbd header comment typo fix for JBD_PARANOID_IOFAIL\n  trivial: wusb: Storage class should be before const qualifier\n  trivial: drivers/char/bsr.c: Storage class should be before const qualifier\n  trivial: h8300: Storage class should be before const qualifier\n  trivial: fix where cgroup documentation is not correctly referred to\n  trivial: Give the right path in Documentation example\n  trivial: MTD: remove EOL from MODULE_DESCRIPTION\n  trivial: Fix typo in bio_split()\u0027s documentation\n  trivial: PWM: fix of #endif comment\n  trivial: fix typos/grammar errors in Kconfig texts\n  trivial: Fix misspelling of firmware\n  trivial: cgroups: documentation typo and spelling corrections\n  trivial: Update contact info for Jochen Hein\n  trivial: fix typo \"resgister\" -\u003e \"register\"\n  ...\n"
    },
    {
      "commit": "c826e3cd0c931d60d548f2468122da570d145556",
      "tree": "fc5e89fd51bc81f66ac6d3a53349103a1cf2e264",
      "parents": [
        "42af9054c0eeed09ec58d13ec8bf52d225ebcfcc"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 16:14:13 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 03 12:23:09 2009 +0200"
      },
      "message": "kmemtrace: small cleanups\n\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nLKML-Reference: \u003c161be9ca8a27b432c4a6ab79f47788c4521652ae.1237813499.git.eduard.munteanu@linux360.ro\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "42af9054c0eeed09ec58d13ec8bf52d225ebcfcc",
      "tree": "6ae45d50bc1fb2b663b57cb0499374b018d7e204",
      "parents": [
        "da2635a9854423b4aa3a5f0e4e6efcc39ac99004"
      ],
      "author": {
        "name": "Eduard - Gabriel Munteanu",
        "email": "eduard.munteanu@linux360.ro",
        "time": "Mon Mar 23 15:12:26 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 03 12:23:08 2009 +0200"
      },
      "message": "kmemtrace: restore original tracing data binary format, improve ABI\n\nWhen kmemtrace was ported to ftrace, the marker strings were taken as\nan indication of how the traced data was being exposed to the userspace.\nHowever, the actual format had been binary, not text.\n\nThis restores the original binary format, while also adding an origin CPU\nfield (since ftrace doesn\u0027t expose the data per-CPU to userspace), and\nre-adding the timestamp field. It also drops arch-independent field\nsizing where it didn\u0027t make sense, so pointers won\u0027t always be 64 bits\nwide like they used to.\n\nSigned-off-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nLKML-Reference: \u003c161be9ca8a27b432c4a6ab79f47788c4521652ae.1237813499.git.eduard.munteanu@linux360.ro\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "da2635a9854423b4aa3a5f0e4e6efcc39ac99004",
      "tree": "f05c3e67053f39156ebb91b41b650bd7972abe8f",
      "parents": [
        "ca2b84cb3c4a0d4d2143b46ec072cdff5d1b3b87"
      ],
      "author": {
        "name": "Eduard - Gabriel Munteanu",
        "email": "eduard.munteanu@linux360.ro",
        "time": "Mon Mar 23 15:12:25 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 03 12:23:07 2009 +0200"
      },
      "message": "kmemtrace: kmemtrace_alloc() must fill type_id\n\nImpact: fix trace output\n\nkmemtrace_alloc() was not filling type_id, which allowed garbage to make\nit into tracing data.\n\nSigned-off-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nLKML-Reference: \u003c284dba2732a144849d5aa82258fe0de2ad8dcb0b.1237813499.git.eduard.munteanu@linux360.ro\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ca2b84cb3c4a0d4d2143b46ec072cdff5d1b3b87",
      "tree": "7163bac040f11c444b24cab53c4a784df73fa4f3",
      "parents": [
        "ac44021fccd8f1f2b267b004f23a2e8d7ef05f7b"
      ],
      "author": {
        "name": "Eduard - Gabriel Munteanu",
        "email": "eduard.munteanu@linux360.ro",
        "time": "Mon Mar 23 15:12:24 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 03 12:23:06 2009 +0200"
      },
      "message": "kmemtrace: use tracepoints\n\nkmemtrace now uses tracepoints instead of markers. We no longer need to\nuse format specifiers to pass arguments.\n\nSigned-off-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\n[ folded: Use the new TP_PROTO and TP_ARGS to fix the build.     ]\n[ folded: fix build when CONFIG_KMEMTRACE is disabled.           ]\n[ folded: define tracepoints when CONFIG_TRACEPOINTS is enabled. ]\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nLKML-Reference: \u003cae61c0f37156db8ec8dc0d5778018edde60a92e3.1237813499.git.eduard.munteanu@linux360.ro\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2e572895bf3203e881356a4039ab0fa428ed2639",
      "tree": "8b49b2b7ea1f1a9ec31e82a999d7c257978f33ff",
      "parents": [
        "2aad1b76e6b0cc5a2e5d9b95a9f356ddddbfa8a9"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 30 14:03:19 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 01 14:47:53 2009 +0200"
      },
      "message": "ring-buffer: do not remove reader page from list on ring buffer free\n\nImpact: prevent possible memory leak\n\nThe reader page of the ring buffer is special. Although it points\ninto the ring buffer, it is not part of the actual buffer. It is\na page used by the reader to swap with a page in the ring buffer.\nOnce the swap is made, the new reader page is again outside the\nbuffer.\n\nEven though the reader page points into the buffer, it is really\npointing to residual data. Note, this data is used by the reader.\n\n              reader page\n                  |\n                  v\n       (prev)   +---+    (next)\n     +----------|   |----------+\n     |          +---+          |\n     v                         v\n   +---+        +---+        +---+\n--\u003e|   |-------\u003e|   |-------\u003e|   |---\u003e\n\u003c--|   |\u003c-------|   |\u003c-------|   |\u003c---\n   +---+        +---+        +---+\n\n     ^            ^            ^\n      \\           |            /\n       ------- Buffer---------\n\nIf we perform a list_del_init() on the reader page we will actually remove\nthe last page the reader swapped with and not the reader page itself.\nThis will cause that page to not be freed, and thus is a memory leak.\n\nLuckily, the only user of the ring buffer so far is ftrace. And ftrace\nwill not free its ring buffer after it allocates it. There is no current\npossible memory leak. But once there are other users, or if ftrace\ndynamically creates and frees its ring buffer, then this would be a\nmemory leak.\n\nThis patch fixes the leak for future cases.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2aad1b76e6b0cc5a2e5d9b95a9f356ddddbfa8a9",
      "tree": "80ac6be0f1502079a50f8b1b4ffcc5e0586791e8",
      "parents": [
        "8b54e45b0005875f59cb8b1c44d429a161d5f245"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 30 11:11:28 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 01 14:47:42 2009 +0200"
      },
      "message": "function-graph: allow unregistering twice\n\nImpact: fix to permanent disabling of function graph tracer\n\nThere should be nothing to prevent a tracer from unregistering a\nfunction graph callback more than once. This can simplify error paths.\n\nBut currently, the counter does not account for mulitple unregistering\nof the function graph callback. If it happens, the function graph\ntracer will be permanently disabled.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8b54e45b0005875f59cb8b1c44d429a161d5f245",
      "tree": "0e7c98418384f3f773d2046eea50f529e89f1cba",
      "parents": [
        "0a5d649018b151cb9331c213a843ac4a3e7e44ab",
        "9a8118baaeb0eaa148913bed77bf9c6335f6ca63",
        "b14b70a6a4e394c9630bcde17e07d3bcdcbca27e",
        "fee039a1d05c6e0f71b0fe270d847742a02d56c4",
        "18cea4591a98817697017bcb056a848bae1205df",
        "548c316137901cc81dea35e26362a9d5ba0b89b6"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:46:40 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:46:40 2009 +0200"
      },
      "message": "Merge branches \u0027tracing/docs\u0027, \u0027tracing/filters\u0027, \u0027tracing/ftrace\u0027, \u0027tracing/kprobes\u0027, \u0027tracing/blktrace-v2\u0027 and \u0027tracing/textedit\u0027 into tracing/core-v2\n"
    },
    {
      "commit": "b14b70a6a4e394c9630bcde17e07d3bcdcbca27e",
      "tree": "80a6582f54334e8379d58a573f708d60dfd680c0",
      "parents": [
        "f285901bb21355bb47106658ef14eeb6b8ed538f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 27 10:21:00 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:45:13 2009 +0200"
      },
      "message": "trace: make argument \u0027mem\u0027 of trace_seq_putmem() const\n\nImpact: fix build warning\n\nI passed a const value to trace_seq_putmem(), and I got compile warning.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f285901bb21355bb47106658ef14eeb6b8ed538f",
      "tree": "ae79a9aaa14bdd1eca12e5ac62a25c858c2af029",
      "parents": [
        "bdd6df6af98ce7e70702edfb5fd5dbbd8d1b0453"
      ],
      "author": {
        "name": "Eduard - Gabriel Munteanu",
        "email": "eduard.munteanu@linux360.ro",
        "time": "Mon Mar 23 15:12:23 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:45:07 2009 +0200"
      },
      "message": "tracing: add missing \u0027extern\u0027 keywords to trace_output.h\n\nImpact: cleanup\n\nMany declarations within trace_output.h are missing the \u0027extern\u0027 keyword\nin an inconsistent manner. This adds \u0027extern\u0027 where it should be.\n\nSigned-off-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bdd6df6af98ce7e70702edfb5fd5dbbd8d1b0453",
      "tree": "d590d52a6837e0201abf8fd4461fa177d3658a5a",
      "parents": [
        "2a4efa42450762cbfa5c5712aa4cc9f06924c9fd"
      ],
      "author": {
        "name": "Eduard - Gabriel Munteanu",
        "email": "eduard.munteanu@linux360.ro",
        "time": "Mon Mar 23 15:12:22 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:45:02 2009 +0200"
      },
      "message": "tracing: provide trace_seq_reserve()\n\ntrace_seq_reserve() allows a caller to reserve space in a trace_seq and\nwrite directly into it. This makes it easier to export binary data to\nuserspace via the tracing interface, by simply filling in a struct.\n\nSigned-off-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "18cea4591a98817697017bcb056a848bae1205df",
      "tree": "2a5d65642b5dfeefb8e688e2276ae0dbb2a12787",
      "parents": [
        "b6a4b0c3ad4c09c1d37b1040ac8e3ebd1016e10b"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 27 10:21:54 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:29:11 2009 +0200"
      },
      "message": "blktrace: print out BLK_TN_MESSAGE properly\n\nImpact: improve ftrace plugin output\n\nBefore this patch:\n\n # cat trace\n         make-5383  [001]   741.240059:   8,7    P   N [make]\n __trace_note_message: cfq1074\n\n # echo 1 \u003e options/blk_classic\n # cat trace\n   8,7    1     0.692221252     0  C   W 130411392 + 1024 [0]\n Bad pc action 6361\n Bad pc action 283d\n\n # echo 0 \u003e options/blk_classic\n # echo bin \u003e trace_options\n # cat trace_pipe | blkparse -i -\n (can\u0027t parse messages generated by blk_add_trace_msg())\n\nAfter this patch:\n # cat trace\n      \u003cidle\u003e-0     [001]   187.600933:   8,7    C   W 145220224 + 8 [0]\n      \u003cidle\u003e-0     [001]   187.600946:   8,7    m   N cfq1076 complete\n\n # echo 1 \u003e options/blk_classic\n # cat trace\n   8,7    1     0.256378996   238  I   W 113190728 + 8 [pdflush]\n   8,7    1     0.256378998   238  m   N cfq1076 insert_request\n\n # echo 0 \u003e options/blk_classic\n # echo bin \u003e trace_options\n # cat trace_pipe | blkparse -i -\n  8,7    1        0    22.973250293     0  C   W 102770576 + 8 [0]\n  8,7    1        0    22.973259213     0  m   N cfq1076 complete\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b6a4b0c3ad4c09c1d37b1040ac8e3ebd1016e10b",
      "tree": "95025e5a1b49056bdadf9bbb3e96417430d1830a",
      "parents": [
        "ad5dd5493a55e462796e42e50a49e76df76fdb05"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 27 10:21:23 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:28:59 2009 +0200"
      },
      "message": "blktrace: extract duplidate code\n\nImpact: cleanup\n\nblk_trace_event_print() and blk_tracer_print_line() share most of the code.\n\n   text    data     bss     dec     hex filename\n   8605     393      12    9010    2332 kernel/trace/blktrace.o.orig\n   text    data     bss     dec     hex filename\n   8555     393      12    8960    2300 kernel/trace/blktrace.o\n\nThis patch also prepares for the next patch, that prints out BLK_TN_MESSAGE.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ad5dd5493a55e462796e42e50a49e76df76fdb05",
      "tree": "3073af1836aaa7ba1d8df4cb6b2f287b31e27d72",
      "parents": [
        "17ba97e347bec9bbc47a0877c7a098708982129d"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 27 10:20:24 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:27:58 2009 +0200"
      },
      "message": "blktrace: fix memory leak when freeing struct blk_io_trace\n\nImpact: fix mixed ioctl and ftrace-plugin blktrace use memory leak\n\nWhen mixing the use of ioctl-based blktrace and ftrace-based blktrace,\nwe can leak memory in this way:\n\n  # btrace /dev/sda \u003e /dev/null \u0026\n  # echo 0 \u003e /sys/block/sda/sda1/trace/enable\n\nnow we leak bt-\u003edropped_file, bt-\u003emsg_file, bt-\u003erchan...\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "17ba97e347bec9bbc47a0877c7a098708982129d",
      "tree": "b6a7472c354e4135f1ea47482d19ae277be65dee",
      "parents": [
        "35ac51bfe4c293b67ce9f85082ba0b9bc6123c40"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 27 10:20:09 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:27:45 2009 +0200"
      },
      "message": "blktrace: fix blk_probes_ref chaos\n\nImpact: fix mixed ioctl and ftrace-plugin blktrace use refcount bugs\n\nioctl-based blktrace allocates bt and registers tracepoints when\nioctl(BLKTRACESETUP), and do all cleanups when ioctl(BLKTRACETEARDOWN).\n\nwhile ftrace-based blktrace allocates/frees bt when:\n  # echo 1/0 \u003e /sys/block/sda/sda1/trace/enable\n\nand registers/unregisters tracepoints when:\n  # echo blk/nop \u003e /debugfs/tracing/current_tracer\nor\n  # echo 1/0 \u003e /debugfs/tracing/tracing_enable\n\nThe separatation of allocation and registeration causes 2 problems:\n\n  1. current user-space blktrace still calls ioctl(TEARDOWN) when\n     ioctl(SETUP) failed:\n       # echo 1 \u003e /sys/block/sda/sda1/trace/enable\n       # blktrace /dev/sda\n         BLKTRACESETUP: Device or resource busy\n         ^C\n     and now blk_probes_ref \u003d\u003d -1\n\n  2. Another way to make blk_probes_ref \u003d\u003d -1:\n     # plugin sdb \u0026\u0026 mount sdb1\n     # echo 1 \u003e /sys/block/sdb/sdb1/trace/enable\n     # remove sdb\n\nThis patch does the allocation and registeration when writing\nsdaX/trace/enable.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "35ac51bfe4c293b67ce9f85082ba0b9bc6123c40",
      "tree": "0853820b03650725795308550e9a63fadac3d771",
      "parents": [
        "eb08f8eb0673d9c1e62b69ad1b41593e73c40467"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 27 10:19:46 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:27:36 2009 +0200"
      },
      "message": "blktrace: make classic output more classic\n\nImpact: fix ftrace plugin timestamp output\n\nIn the classic user-space blktrace, the output timestamp is sec.nsec\nnot sec.usec.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "eb08f8eb0673d9c1e62b69ad1b41593e73c40467",
      "tree": "8243201d6f98e5e502fd0688c632e9650c1f973d",
      "parents": [
        "5554720482a631702146a959db22fe417740e0a6"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Mar 24 16:05:27 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:27:18 2009 +0200"
      },
      "message": "blktrace: fix off-by-one bug\n\n\u0027what\u0027 is used as the index of array what2act, so it can\u0027t \u003e\u003d the array size.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5554720482a631702146a959db22fe417740e0a6",
      "tree": "fd7a304638269e3b3826faeb5dbc35f04af4deeb",
      "parents": [
        "b5230b56ee6caeb27cedb7753c0c319646383bb4"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Mar 25 17:21:26 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:27:08 2009 +0200"
      },
      "message": "blktrace: fix the original blktrace\n\nCurrently the original blktrace, which is using relay and is used via\nioctl, is broken. You can use ftrace to see the output of blktrace,\nbut user-space blktrace is unusable.\n\nIt\u0027s broken by \"blktrace: add ftrace plugin\"\n(c71a896154119f4ca9e89d6078f5f63ad60ef199)\n\n -\tif (unlikely(bt-\u003etrace_state !\u003d Blktrace_running))\n +\tif (unlikely(bt-\u003etrace_state !\u003d Blktrace_running || !blk_tracer_enabled))\n\t\treturn;\n\nWith this patch, both ioctl and ftrace can be used, but of course you\ncan\u0027t use both of them at the same time.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b5230b56ee6caeb27cedb7753c0c319646383bb4",
      "tree": "a8cb9730ba9d89346d3bd959393e72c84b36ce84",
      "parents": [
        "6c051ce0307526adec32a847f0daa1af2124f0a9"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Mar 25 17:19:33 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:26:59 2009 +0200"
      },
      "message": "blktrace: fix a race when creating blk_tree_root in debugfs\n\nt1                                t2\n------                            ------\ndo_blk_trace_setup()              do_blk_trace_setup()\n  if (!blk_tree_root) {\n                                    if (!blk_tree_root)\n    blk_tree_root \u003d create_dir()\n                                      blk_tree_root \u003d create_dir();\n                                      (now blk_tree_root \u003d\u003d NULL)\n  ...\n  dir \u003d create_dir(name, blk_tree_root);\n\nDue to this race, t1 will create \u0027dir\u0027 in /debugfs but not /debugfs/block.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6c051ce0307526adec32a847f0daa1af2124f0a9",
      "tree": "ce7317e18bf9bdd379e73782771761e4c24a156c",
      "parents": [
        "093419971e03362a00f499960557c119982ea09f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Mar 25 17:18:56 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 31 17:26:47 2009 +0200"
      },
      "message": "blktrace: fix timestamp in binary output\n\nI found the timestamp is wrong:\n\n # echo bin \u003e trace_option\n # echo blk \u003e current_tracer\n # cat trace_pipe | blkparse -i -\n 8,0    0        0     0.000000000   504  A   W ...\n ...\n 8,7    1        0     0.008534097     0  C   R ...\n            (should be 8.534097xxx)\n\nuser-space blkparse expects the timestamp to be nanosecond.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "692105b8ac5bcd75dc65f6a8f10bdbd0f0f34dcf",
      "tree": "e079cea0948d250e5411befe0c5cca7c97bcf860",
      "parents": [
        "877d03105d04b2c13e241130277fa69c8d2564f0"
      ],
      "author": {
        "name": "Matt LaPlante",
        "email": "kernel1@cyberdogtech.com",
        "time": "Mon Jan 26 11:12:25 2009 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 30 15:22:01 2009 +0200"
      },
      "message": "trivial: fix typos/grammar errors in Kconfig texts\n\nSigned-off-by: Matt LaPlante \u003ckernel1@cyberdogtech.com\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "2a93a1f21480f3aa134fe0c48954b64b8a97ef25",
      "tree": "9b6cfce96ca3c5b51405a3da976719d9640ece70",
      "parents": [
        "b8d99832a582e0e164a1e209da445d2bb46d721b"
      ],
      "author": {
        "name": "Uwe Kleine-Koenig",
        "email": "ukleinek@strlen.de",
        "time": "Mon Jan 12 23:35:50 2009 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 30 15:21:58 2009 +0200"
      },
      "message": "trivial: fix typo \"resgister\" -\u003e \"register\"\n\nSigned-off-by: Uwe Kleine-Koenig \u003cukleinek@strlen.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "9a8118baaeb0eaa148913bed77bf9c6335f6ca63",
      "tree": "8e30ac89e7db4472478ec9a2bcd803fd0f22bad3",
      "parents": [
        "9f58a159d022c8f2533a27708aa267adf4f0e3ce"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Thu Mar 26 01:24:34 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 26 09:13:14 2009 +0100"
      },
      "message": "tracing: filter fix for TRACE_EVENT_FORMAT events\n\nImpact: fix crash (hang) when using TRACE_EVENT_FORMAT filter files\n\nfilters are only hooked up to the tracepoint events defined using\nTRACE_EVENT but not the tracers that use TRACE_EVENT_FORMAT, such\nas ftrace.\n\nDo not display the filter files at all for TRACE_EVENT_FORMAT events\nfor the time being.\n\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \u003d?ISO-8859-1?Q?Fr\u003dE9d\u003dE9ric?\u003d Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237878882.8339.61.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2a4efa42450762cbfa5c5712aa4cc9f06924c9fd",
      "tree": "70af0a079541af99dec634fc89ce317dee2f1a33",
      "parents": [
        "759ee0915dd713361e72facb78b66600b5712d65"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Wed Mar 25 12:06:05 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 25 17:45:36 2009 -0400"
      },
      "message": "ftrace: Using FTRACE_WARN_ON() to check \"freed record\" in ftrace_release()\n\n \"Because when we call ftrace_free_rec we change the rec-\u003eip to point to the\n  next record in the chain. Something is very wrong if rec-\u003eip \u003e\u003d s \u0026\u0026\n  rec-\u003eip \u003c e and the record is already free.\"\n\n \"Note, use FTRACE_WARN_ON() macro. This way it shuts down ftrace if it is\n  hit and helps to avoid further damage later.\"\n                   -- Steven Rostedt \u003crostedt@goodmis.org\u003e\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "2f63b840bc8a816ac879ee773b035cf3e433fae4",
      "tree": "4a97c31e1d4484c0cfded92c185ba46066665c8b",
      "parents": [
        "220ba351dfa57eca4bec5ce0098a276446a47958"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Mar 25 16:59:18 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 18:32:35 2009 +0100"
      },
      "message": "trace_workqueues: fix empty line\u0027s output\n\nEmpty lines separate cpus stat. After previous\nfix(trace_stat: keep original order) applied, the empty lines\nare displayed at incorrect position.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c49C9F266.2060706@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "220ba351dfa57eca4bec5ce0098a276446a47958",
      "tree": "e0990d566ef8c19a291ad871caaf94fdd3d57008",
      "parents": [
        "e6f489013b985b58d096a3091ece0ed579367232"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Mar 25 16:58:39 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 18:32:34 2009 +0100"
      },
      "message": "trace_stat: keep original order\n\nImpact: make trace_stat files show items with the original order\n\ntrace_stat tracer reverse the items, it makes the output\nlooks a little ugly.\n\nExample, when we read trace_stat/workqueues, we get cpu#7\u0027s stat.\nat first, and then cpu#6... cpu#0.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c49C9F23F.5040307@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e6f489013b985b58d096a3091ece0ed579367232",
      "tree": "598baf56ceb47c256338ae4934937d2e6e111181",
      "parents": [
        "ee000b7f9fe429d2470c674ccec8d344f6789e0d"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Mar 25 16:27:17 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 18:32:34 2009 +0100"
      },
      "message": "trace_stat: don\u0027t call seq_printf() in seq_operation-\u003estart()\n\nImpact: Fix incorrect way using seq_file\u0027s API\n\nUse SEQ_START_TOKEN instead of calling -\u003estat_headers()\nint seq_operation-\u003estart().\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nLKML-Reference: \u003c49C9EAE5.5070202@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ee000b7f9fe429d2470c674ccec8d344f6789e0d",
      "tree": "35b480a5e5fb90d5a414d942bcb541e7887334d6",
      "parents": [
        "cc59c9e8d0165c632fd056c4a23e36f917507fb4"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Mar 24 13:38:06 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 24 16:43:12 2009 +0100"
      },
      "message": "tracing: use union for multi-usages field\n\nImpact: cleanup\n\nstruct dyn_ftrace::ip has different usages in his lifecycle,\nwe use union for it. And also for struct dyn_ftrace::flags.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c49C871BE.3080405@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cc59c9e8d0165c632fd056c4a23e36f917507fb4",
      "tree": "8ca2b92345345d53ce3b5585cf87d72afddda43c",
      "parents": [
        "be6f164a02f394675e2ac2077dd354cebef5b4c0"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Mar 24 11:03:01 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 24 16:42:49 2009 +0100"
      },
      "message": "ftrace: show virtual PID\n\nImpact: fix PID output under namespaces\n\nWhen current namespace is not the global namespace,\npid read from set_ftrace_pid is no correct.\n\n # ~/newpid_namespace_run bash\n # echo $$\n 1\n # echo 1 \u003e set_ftrace_pid\n # cat set_ftrace_pid\n 3756\n\nSince we write virtual PID to set_ftrace_pid, we need get\nvirtual PID when we read it.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c49C84D65.9050606@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "be6f164a02f394675e2ac2077dd354cebef5b4c0",
      "tree": "9805294731c00ddb61857a4e1e42019058eb1542",
      "parents": [
        "8aef2d2856158a36c295a8d1288281e4839bff13"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 24 11:06:24 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 24 11:06:24 2009 -0400"
      },
      "message": "function-graph: add option for include sleep times\n\nImpact: give user a choice to show times spent while sleeping\n\nThe user may want to see the time a function spent sleeping.\nThis patch adds the trace option \"sleep-time\" to allow that.\nThe \"sleep-time\" option is default on.\n\n echo sleep-time \u003e /debug/tracing/trace_options\n\nproduces:\n\n ------------------------------------------\n 2)  avahi-d-3428  \u003d\u003e    \u003cidle\u003e-0\n ------------------------------------------\n\n 2)               |      finish_task_switch() {\n 2)   0.621 us    |        _spin_unlock_irq();\n 2)   2.202 us    |      }\n 2) ! 1002.197 us |    }\n 2) ! 1003.521 us |  }\n\nwhere as,\n\n echo nosleep-time \u003e /debug/tracing/trace_options\n\nproduces:\n\n 0)    \u003cidle\u003e-0    \u003d\u003e  yum-upd-3416\n ------------------------------------------\n\n 0)               |              finish_task_switch() {\n 0)   0.643 us    |                _spin_unlock_irq();\n 0)   2.342 us    |              }\n 0) + 41.302 us   |            }\n 0) + 42.453 us   |          }\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "8aef2d2856158a36c295a8d1288281e4839bff13",
      "tree": "eef85397dedcad001982724e0be2da6dc089b39f",
      "parents": [
        "05ce5818adee8f8efd0a5ca0d900a6789012516b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 24 01:10:15 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 24 09:33:30 2009 -0400"
      },
      "message": "function-graph: ignore times across schedule\n\nImpact: more accurate timings\n\nThe current method of function graph tracing does not take into\naccount the time spent when a task is not running. This shows functions\nthat call schedule have increased costs:\n\n 3) + 18.664 us   |      }\n ------------------------------------------\n 3)    \u003cidle\u003e-0    \u003d\u003e  kblockd-123\n ------------------------------------------\n\n 3)               |      finish_task_switch() {\n 3)   1.441 us    |        _spin_unlock_irq();\n 3)   3.966 us    |      }\n 3) ! 2959.433 us |    }\n 3) ! 2961.465 us |  }\n\nThis patch uses the tracepoint in the scheduling context switch to\naccount for time that has elapsed while a task is scheduled out.\nNow we see:\n\n ------------------------------------------\n 3)    \u003cidle\u003e-0    \u003d\u003e  edac-po-1067\n ------------------------------------------\n\n 3)               |      finish_task_switch() {\n 3)   0.685 us    |        _spin_unlock_irq();\n 3)   2.331 us    |      }\n 3) + 41.439 us   |    }\n 3) + 42.663 us   |  }\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "05ce5818adee8f8efd0a5ca0d900a6789012516b",
      "tree": "81c90288dd1da4291b5e3ee154756b2d7745c248",
      "parents": [
        "5d1a03dc541dc6672e60e57249ed22f40654ca47"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 24 00:18:31 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 24 09:32:52 2009 -0400"
      },
      "message": "function-graph: prevent more than one tracer registering\n\nImpact: prevent crash due to multiple function graph tracers\n\nThe function graph tracer can currently only handle a single tracer\nbeing registered. If another tracer registers with the function\ngraph tracer it can crash the system.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "5d1a03dc541dc6672e60e57249ed22f40654ca47",
      "tree": "0b72061cc8c56797474d2efbfe1954ce0ad27ce8",
      "parents": [
        "098335215a4921a8a54193829eaed602dca24df5"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 23 23:38:49 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 24 09:31:34 2009 -0400"
      },
      "message": "function-graph: moved the timestamp from arch to generic code\n\nThis patch move the timestamp from happening in the arch specific\ncode into the general code. This allows for better control by the tracer\nto time manipulation.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "098335215a4921a8a54193829eaed602dca24df5",
      "tree": "86226d7e4229f00e467b5e6ed7f048a2061c3042",
      "parents": [
        "45b9560895b07a4a09d55d49235c984db512c5aa"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Mar 21 02:44:50 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 24 09:07:35 2009 -0400"
      },
      "message": "tracing: fix memory leak in trace_stat\n\nIf the function profiler does not have any items recorded and one were\nto cat the function stat file, the kernel would take a BUG with a NULL\npointer dereference.\n\nLooking further into this, I found that returning NULL from stat_start\ndid not stop the stat logic, and would later call stat_next. This breaks\nfrom the way seq_file works, so I looked into fixing the stat code.\n\nThis is where I noticed that the last next_entry is never freed.\nIt is allocated, and if the stat_next returns NULL, the code breaks out\nof the loop, unlocks the mutex and exits. We never link the next_entry\nnor do we free it. Thus it is a real memory leak.\n\nThis patch rearranges the code a bit to not only fix the memory leak,\nbut also to act more like seq_file where nothing is printed if there\nis nothing to print. That is, stat_start returns NULL.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "093419971e03362a00f499960557c119982ea09f",
      "tree": "f355954c6282bc6ee3d67f7ae374408821a216ef",
      "parents": [
        "e0dc81bec0927fa0c8aabc521793161909eef7a5"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Mar 24 17:43:30 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 24 13:09:00 2009 +0100"
      },
      "message": "blktrace: print human-readable act_mask\n\nImpact: new feature, allow symbolic values in /debug/tracing/act_mask\n\nPrint stringified act_mask instead of hex value:\n\n # cat act_mask\n read,write,barrier,sync,queue,requeue,issue,complete,fs,pc,ahead,meta,\n discard,drv_data\n # echo \"meta,write\" \u003e act_mask\n # cat act_mask\n write,meta\n\nAlso:\n - make act_mask accept \"ahead\", \"meta\", \"discard\" and \"drv_data\"\n - use strsep() instead of strchr() to parse user input\n - return -EINVAL if a token is not found in the mask map\n - fix a bug that \u0027value\u0027 is unsigned, so it can \u003c 0\n - propagate error value of blk_trace_mask2str() to userspace, but not\n   always return -ENXIO.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003c49C8AB42.1000802@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e0dc81bec0927fa0c8aabc521793161909eef7a5",
      "tree": "6a3516ed95324fc33c09f3d94c086f09c8144395",
      "parents": [
        "65796348e09880e12b97267d39b8857c758440a6"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Mar 24 16:05:51 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 24 13:09:00 2009 +0100"
      },
      "message": "blktrace: fix t_error()\n\nImpact: fix error flag output\n\nt_error() should return t-\u003eerror but not t-\u003esector.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003c49C8945F.5020802@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "65796348e09880e12b97267d39b8857c758440a6",
      "tree": "176f962be8db38b8fe7309363d73c72fa6c4c69e",
      "parents": [
        "e4955c9986a27bb47ddeb6cd55803053f547e2e9"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Mar 24 16:05:06 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 24 13:08:59 2009 +0100"
      },
      "message": "blktrace: fix wrong calculation of RWBS\n\nImpact: fix the output of IO type category characters\n\nTrace categories are the upper 16 bits, not the lower 16 bits.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003c49C89432.8010805@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e4955c9986a27bb47ddeb6cd55803053f547e2e9",
      "tree": "e0dc65874b6d403d4379fd57c73a05ace516067c",
      "parents": [
        "b125130b22d67f249beba10b71a254558b5279d0"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Mar 24 16:04:37 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 24 13:08:59 2009 +0100"
      },
      "message": "blktrace: mark ddir_act[] const\n\nImpact: cleanup\n\nddir_act and what2act always stay immutable.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003c49C89415.5080503@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9f58a159d022c8f2533a27708aa267adf4f0e3ce",
      "tree": "471fb100abead729ccfbfcc206fb0d5daa03f1c5",
      "parents": [
        "4bda2d517bfa3ce3d7044e06988cdddae7adffe2"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Tue Mar 24 02:14:42 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 24 08:26:52 2009 +0100"
      },
      "message": "tracing/filters: disallow integer values for string filters and vice versa\n\nImpact: fix filter use boundary condition / crash\n\nMake sure filters for string fields don\u0027t use integer values and vice\nversa.  Getting it wrong can crash the system or produce bogus\nresults.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \u003d?ISO-8859-1?Q?Fr\u003dE9d\u003dE9ric?\u003d Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237878882.8339.61.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4bda2d517bfa3ce3d7044e06988cdddae7adffe2",
      "tree": "62d99deb281a0395942b462f7cff2d2b42f2d905",
      "parents": [
        "09f1f245c79585383de63e3ca54d0f91824bff3a"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Tue Mar 24 02:14:31 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 24 08:26:52 2009 +0100"
      },
      "message": "tracing/filters: use trace_seq_printf() to print filters\n\nImpact: cleanup\n\nInstead of just using the trace_seq buffer to print the filters, use\ntrace_seq_printf() as it was intended to be used.\n\nReported-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: \u003d?ISO-8859-1?Q?Fr\u003dE9d\u003dE9ric?\u003d Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237878871.8339.59.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "09f1f245c79585383de63e3ca54d0f91824bff3a",
      "tree": "bc3aaadf4cc0c0cd90bafd4a61ad4c15392da303",
      "parents": [
        "1fc2d5c11918082536acf261ce6abb1f5511053f"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Tue Mar 24 02:14:11 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 24 08:26:51 2009 +0100"
      },
      "message": "tracing/filters: free pred when clearing filters\n\nImpact: fix (small) per trace filter modification memory leak\n\nFree the current pred when clearing the filters via the filter files.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \u003d?ISO-8859-1?Q?Fr\u003dE9d\u003dE9ric?\u003d Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237878851.8339.58.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1fc2d5c11918082536acf261ce6abb1f5511053f",
      "tree": "ee8834467628c39a0a213503f888d11b31365f56",
      "parents": [
        "1618536961d31f9b3f55767b22d4a897f4204c26"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Tue Mar 24 02:14:01 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 24 08:26:51 2009 +0100"
      },
      "message": "tracing/filters: use list_for_each_entry\n\nImpact: cleanup\n\nNo need to use the safe version here, so use list_for_each_entry instead\nof list_for_each_entry_safe in find_event_field().\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \u003d?ISO-8859-1?Q?Fr\u003dE9d\u003dE9ric?\u003d Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237878841.8339.57.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1618536961d31f9b3f55767b22d4a897f4204c26",
      "tree": "f1396f4c869328dc5d6e677f6fdde571d2c6e4d7",
      "parents": [
        "c4cff064be678f1e8344d907499f2a81282edc19"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Mar 23 22:17:01 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 23:25:32 2009 +0100"
      },
      "message": "tracing/function-graph-tracer: fix functions call traces imbalance\n\nImpact: fix traces output\n\nSometimes one can observe an imbalance in the traces between function\ncalls and function return traces:\n\nfunc1() {\n    }\n}\n\nThe curly brace inside func1() is the return of another function nested\ninside func1. The return trace have been inserted in the buffer but not\nthe entry.\nWe are storing a return address on the function traces stack while we\nhaven\u0027t inserted its entry on the buffer, hence the imbalance on the\ntraces.\n\nThis is because the tracers doesn\u0027t check all failures that can happen\non buffer insertion.\n\nThis patch reports the tracing recursion failures and the ring buffer\nfailures. In such cases, we now restore the original return address for\nthe function, giving up its return trace.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1237843021-11695-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "45b9560895b07a4a09d55d49235c984db512c5aa",
      "tree": "327ccd6be20791915007137c7db64361c1eef6e6",
      "parents": [
        "3e1f60b80cafcb5d7e8d3665b35962fbb8fb9efa"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Tue Mar 24 01:07:24 2009 +0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 23:23:03 2009 +0100"
      },
      "message": "tracing: Fix TRACING_SUPPORT dependency for PPC32\n\ncommit 40ada30f9621fbd831ac2437b9a2a399aa (\"tracing: clean up menu\"),\ndespite the \"clean up\" in its purpose, introduced a behavioural\nchange for Kconfig symbols: we no longer able to select tracing\nsupport on PPC32 (because IRQFLAGS_SUPPORT isn\u0027t yet implemented).\n\nThe IRQFLAGS_SUPPORT is not mandatory for most tracers, tracing core\nhas a special case for platforms w/o irqflags (which, by the way, has\nbecome useless as of the commit above).\n\nThough according to Ingo Molnar, there was periodic build failures on\nweird, unmaintained architectures that had no irqflags-tracing support\nand hence didn\u0027t know the raw_irqs_save/restore primitives. Thus we\u0027d\nbetter not enable irqflags-less tracing for all architectures.\n\nThis patch restores the old behaviour for PPC32, and thus brings the\ntracing back. Other architectures can either add themselves to the\nexception list or (better) implement TRACE_IRQFLAGS_SUPPORT.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nAcked-b: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: linuxppc-dev@ozlabs.org\nLKML-Reference: \u003c20090323220724.GA9851@oksana.dev.rtsoft.ru\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3e1f60b80cafcb5d7e8d3665b35962fbb8fb9efa",
      "tree": "80b07264a2599f494f9f8eebb7230ceead3ae645",
      "parents": [
        "c0f92ba99bdeaf35f9c580291b4e1a657c67fbd4"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Mar 22 23:10:45 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 16:25:47 2009 +0100"
      },
      "message": "tracing/ftrace: check if debugfs is registered before creating files\n\nImpact: fix a crash with ftrace\u003d{nop,boot} parameter\n\nIf the nop or initcall tracers are launched as boot tracers,\nthey will attempt to create their option directory and files.\nBut these tracers are registered very early and then assigned\nas \"boot tracers\" very early if asked to.\n\nSince they do this before debugfs has been registered (core initcall),\na crash is triggered.\n\nAnother early tracers could also come later. So we fix it by\nchecking if debugfs is initialized before creating the root\ntracing directory.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1237759847-21025-3-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c4cff064be678f1e8344d907499f2a81282edc19",
      "tree": "8c020dd399a8eba7ae279283e9a3eeb074c74d88",
      "parents": [
        "ee6cdabc820a29bd607f38d9cb335c3ceddc673b"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Mon Mar 23 03:26:48 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 09:30:37 2009 +0100"
      },
      "message": "tracing/filters: clean up filter_add_subsystem_pred()\n\nImpact: cleanup, memory leak fix\n\nThis patch cleans up filter_add_subsystem_pred():\n\n- searches for the field before creating a copy of the pred\n\n- fixes memory leak in the case a predicate isn\u0027t applied\n\n- if -ENOMEM, makes sure there\u0027s no longer a reference to the\n  pred so the caller can free the half-finished filter\n\n- changes the confusing i \u003d\u003d MAX_FILTER_PRED - 1 comparison\n  previously remarked upon\n\nThis affects only per-subsystem event filtering.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \u003d?ISO-8859-1?Q?Fr\u003dE9d\u003dE9ric?\u003d Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237796808.7527.40.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ee6cdabc820a29bd607f38d9cb335c3ceddc673b",
      "tree": "bc4cbebd9abc679bb12b10d19f8ab9a7a23689dd",
      "parents": [
        "75c8b417526529d0a7072e4d93ec99dbd483a6f4"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Mon Mar 23 03:26:42 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 09:30:36 2009 +0100"
      },
      "message": "tracing/filters: fix bug in copy_pred()\n\nImpact: fix potential crash on subsystem filter expression freeing\n\nWhen making a copy of the predicate, pred-\u003efield_name needs to be\nduplicated in the copy as well, otherwise bad things can happen due to\nlater multiple frees of the same string.\n\nThis affects only per-subsystem event filtering.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \u003d?ISO-8859-1?Q?Fr\u003dE9d\u003dE9ric?\u003d Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237796802.7527.39.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "75c8b417526529d0a7072e4d93ec99dbd483a6f4",
      "tree": "6b8e3577c1bde7df9a723a4c76c8d0d0af694271",
      "parents": [
        "b118415bfad6d75792a85ac999e25149db8e6919"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Mon Mar 23 03:26:28 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 09:28:07 2009 +0100"
      },
      "message": "tracing/filters: use list_for_each_entry_safe\n\nImpact: cleanup\n\nUse list_for_each_entry_safe instead of list_for_each_entry in\nfind_event_field().\n\nReported-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1237796788.7527.35.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b118415bfad6d75792a85ac999e25149db8e6919",
      "tree": "21d3a6caf595bdf090fc9432d13003aef977fc1c",
      "parents": [
        "7e6ea92df3fd7cbe74e7985c6f3e40255c44b201"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Mar 23 00:18:39 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 09:22:15 2009 +0100"
      },
      "message": "tracing/events: don\u0027t discard an event after commit\n\nWhen we want to filter an event, the filter test is done after\nthe event is commited to the ring-buffer to be discarded later if\nneeded.\n\nBut a reader could be reading this event while we are trying to discard\nit. Other kind of racy events can even happen because the event is\ncommited and can be read and/or consumed.\n\nWhat we want is to discard the event before committing it.\n\nReported-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003c1237763919-21505-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7e6ea92df3fd7cbe74e7985c6f3e40255c44b201",
      "tree": "129b5ef0092098003c582c8192c795c8de5599df",
      "parents": [
        "07edf7121374609709ef1b0889f6e7b8d6a62ec1"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Mar 22 23:10:47 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 09:22:15 2009 +0100"
      },
      "message": "tracing/ftrace: make nop-tracer use polling wait for events on pipe\n\nImpact: display events when they arrive\n\nNow that the events don\u0027t use wake_up() anymore, we need the nop\ntracer to poll waiting for events on the pipe. Especially because\nnop is useful to look at orphan traces types (traces types that\ndon\u0027t rely on specific tracers) because it doesn\u0027t produce traces\nitself.\n\nAnd unlike other tracers that trigger specific traces periodically,\nnop triggers no traces by itself that can wake him.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1237759847-21025-5-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "07edf7121374609709ef1b0889f6e7b8d6a62ec1",
      "tree": "ad1649c9546dc3ce23bb2f8609a7459a7ca2006e",
      "parents": [
        "9bd7d099ab3f10dd666da399c064999bae427cd9"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Mar 22 23:10:46 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 09:22:14 2009 +0100"
      },
      "message": "tracing/events: don\u0027t use wake up for events\n\nImpact: fix hard-lockup with sched switch events\n\nSome ftrace events, such as sched wakeup, can be traced\nwhile the runqueue lock is hold. Since they are using\ntrace_current_buffer_unlock_commit(), they call wake_up()\nwhich can try to grab the runqueue lock too, resulting in\na deadlock.\n\nNow for all event, we call a new helper:\ntrace_nowake_buffer_unlock_commit() which do pretty the same than\ntrace_current_buffer_unlock_commit() except than it doesn\u0027t call\ntrace_wake_up().\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1237759847-21025-4-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9bd7d099ab3f10dd666da399c064999bae427cd9",
      "tree": "69a13d68fd947610b9a0115247b3e4b03c196839",
      "parents": [
        "fe9f57f250ab4d781b99504caeb218ca2db14c1a"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Mar 22 23:10:43 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 09:22:14 2009 +0100"
      },
      "message": "tracing/events: make the filter files writable\n\nWe need the filter files to be writable, the current\nfilter file permissions are only set readable.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003c1237759847-21025-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fe9f57f250ab4d781b99504caeb218ca2db14c1a",
      "tree": "dc2452c3a9eb2f7cb220270e4ee0de132db6bb50",
      "parents": [
        "cfb180f3e71b2a280a254c8646a9ab1beab63f84"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 22 18:41:59 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 22 18:43:25 2009 +0100"
      },
      "message": "tracing: add run-time field descriptions for event filtering, kfree fix\n\nImpact: fix potential kfree of random data in (rare) failure path\n\nZero-initialize the field structure.\n\nReported-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003c1237710639.7703.46.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cfb180f3e71b2a280a254c8646a9ab1beab63f84",
      "tree": "93fb1a319b40851ebb7a3cc0d9ea4cc9a88e919a",
      "parents": [
        "7ce7e4249921d5073e764f7ff7ad83cfa9894bd7"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Sun Mar 22 03:31:17 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 22 18:38:47 2009 +0100"
      },
      "message": "tracing: add per-subsystem filtering\n\nThis patch adds per-subsystem filtering to the event tracing subsystem.\n\nIt adds a \u0027filter\u0027 debugfs file to each subsystem directory.  This file\ncan be written to to set filters; reading from it will display the\ncurrent set of filters set for that subsystem.\n\nBasically what it does is propagate the filter down to each event\ncontained in the subsystem.  If a particular event doesn\u0027t have a field\nwith the name specified in the filter, it simply doesn\u0027t get set for\nthat event.  You can verify whether or not the filter was set for a\nparticular event by looking at the filter file for that event.\n\nAs with per-event filters, compound expressions are supported, echoing\n\u00270\u0027 to the subsystem\u0027s filter file clears all filters in the subsystem,\netc.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237710677.7703.49.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7ce7e4249921d5073e764f7ff7ad83cfa9894bd7",
      "tree": "d8a3026e85d3230ce39ca99f446abe76a710c337",
      "parents": [
        "2d622719f1572ef31e0616444a515eba3094d050"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Sun Mar 22 03:31:04 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 22 18:38:46 2009 +0100"
      },
      "message": "tracing: add per-event filtering\n\nThis patch adds per-event filtering to the event tracing subsystem.\n\nIt adds a \u0027filter\u0027 debugfs file to each event directory.  This file can\nbe written to to set filters; reading from it will display the current\nset of filters set for that event.\n\nBasically, any field listed in the \u0027format\u0027 file for an event can be\nfiltered on (including strings, but not yet other array types) using\neither matching (\u0027\u003d\u003d\u0027) or non-matching (\u0027!\u003d\u0027) \u0027predicates\u0027.  A\n\u0027predicate\u0027 can be either a single expression:\n\n # echo pid !\u003d 0 \u003e filter\n\n # cat filter\n pid !\u003d 0\n\nor a compound expression of up to 8 sub-expressions combined using \u0027\u0026\u0026\u0027\nor \u0027||\u0027:\n\n # echo comm \u003d\u003d Xorg \u003e filter\n # echo \"\u0026\u0026 sig !\u003d 29\" \u003e filter\n\n # cat filter\n comm \u003d\u003d Xorg\n \u0026\u0026 sig !\u003d 29\n\nOnly events having field values matching an expression will be available\nin the trace output; non-matching events are discarded.\n\nNote that a compound expression is built up by echoing each\nsub-expression separately - it\u0027s not the most efficient way to do\nthings, but it keeps the parser simple and assumes that compound\nexpressions will be relatively uncommon.  In any case, a subsequent\npatch introducing a way to set filters for entire subsystems should\nmitigate any need to do this for lots of events.\n\nSetting a filter without an \u0027\u0026\u0026\u0027 or \u0027||\u0027 clears the previous filter\ncompletely and sets the filter to the new expression:\n\n # cat filter\n comm \u003d\u003d Xorg\n \u0026\u0026 sig !\u003d 29\n\n # echo comm !\u003d Xorg\n\n # cat filter\n comm !\u003d Xorg\n\nTo clear a filter, echo 0 to the filter file:\n\n # echo 0 \u003e filter\n # cat filter\n none\n\nThe limit of 8 predicates for a compound expression is arbitrary - for\nefficiency, it\u0027s implemented as an array of pointers to predicates, and\n8 seemed more than enough for any filter...\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237710665.7703.48.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2d622719f1572ef31e0616444a515eba3094d050",
      "tree": "f9bffcdca6289f141fb53a38dd9f32af8c71efad",
      "parents": [
        "cf027f645e6aee4f0ca6197a6b6a57f327fdb13f"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Sun Mar 22 03:30:49 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 22 18:38:25 2009 +0100"
      },
      "message": "tracing: add ring_buffer_event_discard() to ring buffer\n\nThis patch overloads RINGBUF_TYPE_PADDING to provide a way to discard\nevents from the ring buffer, for the event-filtering mechanism\nintroduced in a subsequent patch.\n\nI did the initial version but thanks to Steven Rostedt for adding\nthe parts that actually made it work. ;-)\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b8b94265337f83b7db9c5f429b1769d463d7da8c",
      "tree": "231694bce8acda1204f95c1991f7f5b7ce5528bd",
      "parents": [
        "a524446fe82f7f38738403a5a080c4910af86a61"
      ],
      "author": {
        "name": "Dmitri Vorobiev",
        "email": "dmitri.vorobiev@movial.com",
        "time": "Sun Mar 22 19:11:11 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 22 18:16:54 2009 +0100"
      },
      "message": "tracing: fix four sparse warnings\n\nImpact: cleanup.\n\nThis patch fixes the following sparse warnings:\n\n kernel/trace/trace.c:385:9: warning: symbol \u0027trace_seq_to_buffer\u0027 was\n not declared. Should it be static?\n\n kernel/trace/trace_clock.c:29:13: warning: symbol \u0027trace_clock_local\u0027\n was not declared. Should it be static?\n\n kernel/trace/trace_clock.c:54:13: warning: symbol \u0027trace_clock\u0027 was not\n declared. Should it be static?\n\n kernel/trace/trace_clock.c:74:13: warning: symbol \u0027trace_clock_global\u0027\n was not declared. Should it be static?\n\nSigned-off-by: Dmitri Vorobiev \u003cdmitri.vorobiev@movial.com\u003e\nLKML-Reference: \u003c1237741871-5827-4-git-send-email-dmitri.vorobiev@movial.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cf027f645e6aee4f0ca6197a6b6a57f327fdb13f",
      "tree": "f8a20e8707967db5d9140f9069426f410a30dd32",
      "parents": [
        "0cf53ff62b3e9e491ff5e5f05b193fb6ce643047"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Sun Mar 22 03:30:39 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 22 18:11:22 2009 +0100"
      },
      "message": "tracing: add run-time field descriptions for event filtering\n\nThis patch makes the field descriptions defined for event tracing\navailable at run-time, for the event-filtering mechanism introduced\nin a subsequent patch.\n\nThe common event fields are prepended with \u0027common_\u0027 in the format\ndisplay, allowing them to be distinguished from the other fields\nthat might internally have same name and can therefore be\nunambiguously used in filters.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237710639.7703.46.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a524446fe82f7f38738403a5a080c4910af86a61",
      "tree": "d15127a183d1c2f864136389e5a758ed80a29449",
      "parents": [
        "0cf53ff62b3e9e491ff5e5f05b193fb6ce643047",
        "09c9e84d474d917d9de5b9011ed2064b03a19677",
        "505f2b970b2269ce4cb669b3ff4f6479d379cec2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 22 18:10:02 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 22 18:10:02 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027, \u0027tracing/hw-breakpoints\u0027, \u0027tracing/ring-buffer\u0027, \u0027tracing/textedit\u0027 and \u0027linus\u0027 into tracing/core\n"
    },
    {
      "commit": "0cf53ff62b3e9e491ff5e5f05b193fb6ce643047",
      "tree": "3a184041819aa922f3b7505fda803e649ee2786a",
      "parents": [
        "cf586b61f80229491127d3c57c06ed93c9f530d3"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Mar 22 15:13:07 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 22 15:17:21 2009 +0100"
      },
      "message": "tracing: keep the tracing buffer after self-test failure\n\nInstead of using ftrace_dump_on_oops, it\u0027s far more convenient\nto have the trace leading up to a self-test failure available\nin /debug/tracing/trace.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1237694675-23509-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cf586b61f80229491127d3c57c06ed93c9f530d3",
      "tree": "3f5e0d9429f32b8ad4f53104a260c8dff349cd9b",
      "parents": [
        "ac199db0189c091f2863312061c0575937f68810"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Mar 22 05:04:35 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 22 14:06:40 2009 +0100"
      },
      "message": "tracing/function-graph-tracer: prevent hangs during self-tests\n\nImpact: detect tracing related hangs\n\nSometimes, with some configs, the function graph tracer can make\nthe timer interrupt too much slow, hanging the kernel in an endless\nloop of timer interrupts servicing.\n\nAs suggested by Ingo, this patch brings a watchdog which stops the\nselftest after a defined number of functions traced, definitely\ndisabling this tracer.\n\nFor those who want to debug the cause of the function graph trace\nhang, you can pass the ftrace_dump_on_oops kernel parameter to dump\nthe traces after this hang detection.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1237694675-23509-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b125130b22d67f249beba10b71a254558b5279d0",
      "tree": "f42f4f732a2d7920009f34d798d1803def38ea44",
      "parents": [
        "cd649b8bb830d65c57c3c8b98d57b5402256d8bd"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 20 10:34:00 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 21 16:17:24 2009 +0100"
      },
      "message": "blktrace: avoid accessing NULL bdev-\u003ebd_disk\n\nbdev-\u003ebd_disk can be NULL, if the block device is not opened.\n\nTry this against an unmounted partition, and you\u0027ll see NULL dereference:\n\n  # echo 1 \u003e /sys/block/sda/sda5/enable\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49C30098.6080107@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cd649b8bb830d65c57c3c8b98d57b5402256d8bd",
      "tree": "e1cfb4a2d6a14f6459913ba7b40cc778f1fcb723",
      "parents": [
        "15152e448b693fa41de40f1e40ffbe717a3aab88"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 20 11:33:55 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 21 16:17:08 2009 +0100"
      },
      "message": "blktrace: remove sysfs_blk_trace_enable_show/store()\n\nsysfs_blk_trace_enable_show()/store() share most of code with\nsysfs_blk_trace_attr_show()/store().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49C30EA3.1060004@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "15152e448b693fa41de40f1e40ffbe717a3aab88",
      "tree": "0fec87dd1850aa8e6e8be21bebb3ce0bd3bf148a",
      "parents": [
        "cbe28296eb1ac441b35cf45804d0ae808add7dd1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 20 09:49:08 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 21 16:16:54 2009 +0100"
      },
      "message": "blktrace: report EBUSY correctly\n\nblk_trace_remove_queue() returns EINVAL if q-\u003eblk_trace \u003d\u003d NULL,\nbut blk_trace_setup_queue() doesn\u0027t return EBUSY if\nq-\u003eblk_trace !\u003d NULL.\n\n # echo 0 \u003e sdaX/trace/enable\n # echo 0 \u003e sdaX/trace/enable\n bash: echo: write error: Invalid argument\n # echo 1 \u003e sdaX/trace/enable\n # echo 1 \u003e sdaX/trace/enable\n (should return EBUSY)\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49C2F614.2010101@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cbe28296eb1ac441b35cf45804d0ae808add7dd1",
      "tree": "c387d2697ea153cadb629e3d664960bf12b8bc84",
      "parents": [
        "3c289ba7c320560ee74979a8895141c829046a2d"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 20 09:48:47 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 21 16:16:37 2009 +0100"
      },
      "message": "blktrace: don\u0027t increase blk_probes_ref if failed to setup blk trace\n\ndo_blk_trace_setup() may return EBUSY, but the current code\ndoesn\u0027t decrease blk_probes_ref in this case.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49C2F5FF.80002@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3c289ba7c320560ee74979a8895141c829046a2d",
      "tree": "293c9d1d931c06acf06998a6ea052193c0a8cf4e",
      "parents": [
        "5006ea73f38caef6065d1136808413813271633f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 20 09:48:26 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 21 16:16:25 2009 +0100"
      },
      "message": "blktrace: remove blk_probe_mutex\n\nblk_register_tracepoints() always returns 0, so make it return void,\nthus we don\u0027t need to use blk_probe_mutex to protect blk_probes_ref.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49C2F5EA.8060606@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5006ea73f38caef6065d1136808413813271633f",
      "tree": "296d4f15e625303cdd111f29d990cef3c3be85c5",
      "parents": [
        "1a17662ea033674a58bad3603531b0b5d42572f6"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 20 09:48:03 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 21 16:16:13 2009 +0100"
      },
      "message": "blktrace: make blk_tracer_enabled a bool flag\n\nIt doesn\u0027t have to be a counter, and it can be a bool flag instead.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c49C2F5D3.8090104@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1a17662ea033674a58bad3603531b0b5d42572f6",
      "tree": "157c7cdeab1192136f94ffe8098a368aea9c1437",
      "parents": [
        "22de89b371a18086162eacd9f8c960299334ab01"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 20 09:47:30 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 21 16:15:47 2009 +0100"
      },
      "message": "blktrace: fix possible memory leak\n\nWhen we failed to create \"block\" debugfs dir, we should do some\ncleanups.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49C2F5B2.8000800@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "09c9e84d474d917d9de5b9011ed2064b03a19677",
      "tree": "c725429e52c2c06822f189d05c8fe9d811e17891",
      "parents": [
        "22de89b371a18086162eacd9f8c960299334ab01"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Mar 21 04:33:36 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 21 10:54:10 2009 +0100"
      },
      "message": "tracing/ring-buffer: don\u0027t annotate rb_cpu_notify with __cpuinit\n\nImpact: remove a section warning\n\nCONFIG_DEBUG_SECTION_MISMATCH raises the following warning on -tip:\n\n  WARNING: kernel/trace/built-in.o(.text+0x5bc5): Section mismatch in\n  reference from the function ring_buffer_alloc() to the function\n  .cpuinit.text:rb_cpu_notify()\n  The function ring_buffer_alloc() references\n  the function __cpuinit rb_cpu_notify().\n\nThis is actually harmless. The code in the ring buffer don\u0027t build\nrb_cpu_notify and other cpu hotplug stuffs when !CONFIG_HOTPLUG_CPU\nso we have no risk to reference freed memory here (it would even\nbe harmless if we unconditionally build it because register_cpu_notifier\nwould do nothing when !CONFIG_HOTPLUG_CPU.\n\nBut since ring_buffer_alloc() can be called everytime, we don\u0027t want it\nto be annotated with __cpuinit so we drop the __cpuinit from\nrb_cpu_notify.\n\nThis is not a waste of memory because it is only defined and used on\nCONFIG_HOTPLUG_CPU.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1237606416-22268-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ac199db0189c091f2863312061c0575937f68810",
      "tree": "0068aaa77ca00102ca60754eb32329f06821bba0",
      "parents": [
        "28bea271e58e429eccfad3d7ee2ad12d6ee015bf"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Mar 19 20:26:15 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 20 10:17:07 2009 +0100"
      },
      "message": "ftrace: event profile hooks\n\nImpact: new tracing infrastructure feature\n\nProvide infrastructure to generate software perf counter events\nfrom tracepoints.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c20090319194233.557364871@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "28bea271e58e429eccfad3d7ee2ad12d6ee015bf",
      "tree": "00b5cf70bf147e7fad3b438835d21b093a2b9c28",
      "parents": [
        "23725aeeab10ba02bcf10ec49ad73146b54cb52f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Mar 19 20:26:14 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 20 10:17:06 2009 +0100"
      },
      "message": "ftrace: ensure every event gets an id\n\nImpact: widen user-space visibe event IDs to all events\n\nPreviously only TRACE_EVENT events got ids, because only they\ngenerated raw output which needs to be demuxed from the trace.\n\nIn order to provide a unique ID for each event, register everybody,\nregardless.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c20090319194233.464914218@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "23725aeeab10ba02bcf10ec49ad73146b54cb52f",
      "tree": "02d5932639e8d76be42a057d8d6ff73026949d12",
      "parents": [
        "44fc6ee92356aa3be31798ced220ab5abd898781"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Mar 19 20:26:13 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 20 10:17:05 2009 +0100"
      },
      "message": "ftrace: provide an id file for each event\n\nSince not every event has a format file to read the id from,\nexpose it explicitly in a separate file.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c20090319194233.372534033@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "44fc6ee92356aa3be31798ced220ab5abd898781",
      "tree": "45acaa8fe5e620cbf734bdbeb5d48121daa65d0e",
      "parents": [
        "22de89b371a18086162eacd9f8c960299334ab01",
        "5087f8d2a2f2daff5a913d72d8ea3ad601948e10"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 20 10:15:13 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 20 10:15:13 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "22de89b371a18086162eacd9f8c960299334ab01",
      "tree": "518227dde7ba892413163b32341c5d319da13949",
      "parents": [
        "3bf832ce1fe6988148d392599f34ca0c6a34427d",
        "f02b8624fedca39886b0eef770dca70c2f0749b3",
        "a635cf0497342978d417cae19d4a4823932977ff",
        "65c24491b4fef017c64e39ec64384fde5e05e0a0"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 20 10:14:53 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 20 10:14:53 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027, \u0027tracing/kprobes\u0027, \u0027tracing/tasks\u0027 and \u0027linus\u0027 into tracing/core\n"
    },
    {
      "commit": "5087f8d2a2f2daff5a913d72d8ea3ad601948e10",
      "tree": "94eea3fdf8aabf361b8bcb9dac99395796aa78c6",
      "parents": [
        "40ce74f19c28077550646c76d96a075bf312e461"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 15:14:46 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 15:58:56 2009 -0400"
      },
      "message": "function-graph: show binary events as comments\n\nWith the added TRACE_EVENT macro, the events no longer appear in\nthe function graph tracer. This was because the function graph\ndid not know how to display the entries. The graph tracer was\nonly aware of its own entries and the printk entries.\n\nBy using the event call back feature, the graph tracer can now display\nthe events.\n\n # echo irq \u003e /debug/tracing/set_event\n\nWhich can show:\n\n 0)               |          handle_IRQ_event() {\n 0)               |            /* irq_handler_entry: irq\u003d48 handler\u003deth0 */\n 0)               |            e1000_intr() {\n 0)   0.926 us    |              __napi_schedule();\n 0)   3.888 us    |            }\n 0)               |            /* irq_handler_exit: irq\u003d48 return\u003dhandled */\n 0)   0.655 us    |            runqueue_is_locked();\n 0)               |            __wake_up() {\n 0)   0.831 us    |              _spin_lock_irqsave();\n\nThe irq entry and exit events show up as comments.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "40ce74f19c28077550646c76d96a075bf312e461",
      "tree": "bd58d38b6ac806be6f59276f16d1e0758376fa1d",
      "parents": [
        "2fbcdb35aca614f9529a0e7d340146cf0b71684f"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 14:03:53 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 15:58:47 2009 -0400"
      },
      "message": "tracing: remove recording function depth from trace_printk\n\nThe function depth in trace_printk was to facilitate the function\ngraph output. Now that the function graph calculates the depth within\nthe trace output, we no longer need to record the depth when the\ntrace_printk is called.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "2fbcdb35aca614f9529a0e7d340146cf0b71684f",
      "tree": "02b717134d9d82b1f9a7cebd4e3daccde542cf5c",
      "parents": [
        "5ef841f6f32dce0b752a4fa0622781ee67a0e874"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 13:24:42 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 15:58:38 2009 -0400"
      },
      "message": "function-graph: calculate function depth within function graph tracer\n\nCurrently, the function graph tracer depends on the trace_printk\nto record the depth. All the information is already there in the trace\nto calculate function depth, with the exception of having the printk\nbe the first item. But as soon as a entry or exit is reached, then\nwe know the depth.\n\nThis patch changes the iter-\u003eprivate data from recording a per cpu\nlast_pid, to a structure that holds both the last_pid and the current\ndepth. This data is used to determine the function depth for the\nprintks.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "5ef841f6f32dce0b752a4fa0622781ee67a0e874",
      "tree": "12c1ac0552f12b93662e2676137fb1286b50d4ee",
      "parents": [
        "ac5f6c96859e9a664ac05b04bc96ed1caad5fe29"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 12:20:38 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 15:57:55 2009 -0400"
      },
      "message": "tracing: make print_(b)printk_msg_only global\n\nThis patch makes print_printk_msg_only and print_bprintk_msg_only\nglobal for other functions to use. It also renames them by adding\na \"trace_\" to the beginning to avoid namespace collisions.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "3bf832ce1fe6988148d392599f34ca0c6a34427d",
      "tree": "692834679fa56696f9823e7c54d38cf833e86398",
      "parents": [
        "ec625cb29e66824f7ce41082617aeb93fa4e42e2"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Mar 19 14:47:33 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 19 16:41:08 2009 +0100"
      },
      "message": "tracing/ring-buffer: fix non cpu hotplug case\n\nImpact: fix warning with irqsoff tracer\n\nThe ring buffer allocates its buffers on pre-smp time (early_initcall).\nIt means that, at first, only the boot cpu buffer is allocated and\nthe ring-buffer cpumask only has the boot cpu set (cpu_online_mask).\n\nLater, the secondary cpu will show up and the ring-buffer will be notified\nabout this event: the appropriate buffer will be allocated and the cpumask\nwill be updated.\n\nUnfortunately, if !CONFIG_CPU_HOTPLUG, the ring-buffer will not be\nnotified about the secondary cpus, meaning that the cpumask will have\nonly the cpu boot set, and only one cpu buffer allocated.\n\nWe fix that by using cpu_possible_mask if !CONFIG_CPU_HOTPLUG.\n\nThis patch fixes the following warning with irqsoff tracer running:\n\n[  169.317794] WARNING: at kernel/trace/trace.c:466 update_max_tr_single+0xcc/0xf3()\n[  169.318002] Hardware name: AMILO Li 2727\n[  169.318002] Modules linked in:\n[  169.318002] Pid: 5624, comm: bash Not tainted 2.6.29-rc8-tip-02636-g6aafa6c #11\n[  169.318002] Call Trace:\n[  169.318002]  [\u003cffffffff81036182\u003e] warn_slowpath+0xea/0x13d\n[  169.318002]  [\u003cffffffff8100b9d6\u003e] ? ftrace_call+0x5/0x2b\n[  169.318002]  [\u003cffffffff8100b9d6\u003e] ? ftrace_call+0x5/0x2b\n[  169.318002]  [\u003cffffffff8100b9d1\u003e] ? ftrace_call+0x0/0x2b\n[  169.318002]  [\u003cffffffff8101ef10\u003e] ? ftrace_modify_code+0xa9/0x108\n[  169.318002]  [\u003cffffffff8106e27f\u003e] ? trace_hardirqs_off+0x25/0x27\n[  169.318002]  [\u003cffffffff8149afe7\u003e] ? _spin_unlock_irqrestore+0x1f/0x2d\n[  169.318002]  [\u003cffffffff81064f52\u003e] ? ring_buffer_reset_cpu+0xf6/0xfb\n[  169.318002]  [\u003cffffffff8106637c\u003e] ? ring_buffer_reset+0x36/0x48\n[  169.318002]  [\u003cffffffff8106aeda\u003e] update_max_tr_single+0xcc/0xf3\n[  169.318002]  [\u003cffffffff8100bc17\u003e] ? sysret_check+0x22/0x5d\n[  169.318002]  [\u003cffffffff8106e3ea\u003e] stop_critical_timing+0x142/0x204\n[  169.318002]  [\u003cffffffff8106e4cf\u003e] trace_hardirqs_on_caller+0x23/0x25\n[  169.318002]  [\u003cffffffff8149ac28\u003e] trace_hardirqs_on_thunk+0x3a/0x3c\n[  169.318002]  [\u003cffffffff8100bc17\u003e] ? sysret_check+0x22/0x5d\n[  169.318002] ---[ end trace db76cbf775a750cf ]---\n\nBecause this tracer may try to swap two cpu ring buffers for an\nunregistered cpu on the ring buffer.\n\nThis patch might also fix a fair loss of traces due to unallocated buffers\nfor secondary cpus.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-b: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1237470453-5427-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ac5f6c96859e9a664ac05b04bc96ed1caad5fe29",
      "tree": "0795e1695c645e3e8b5a4d6631f086373b241e1d",
      "parents": [
        "e9d9df44736d116726f4596f7e2f9ce2764ffc0a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 11:29:23 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 11:29:23 2009 -0400"
      },
      "message": "function-graph: consolidate prologues for output\n\nImpact: clean up\n\nThe prologue of the function graph entry, return and comments all\nstart out pretty much the same. Each of these duplicate code and\ndo so slightly differently.\n\nThis patch consolidates the printing of the pid, absolute time,\ncpu and proc (and for entry, the interrupt).\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "4acd4d00f716873e27e7b60ae292cbdbfae674dd",
      "tree": "6728bed8b0cf8cc47ead79261c0fc8d2e9e5c093",
      "parents": [
        "490362003457f8d387f6f6e73e3a7efbf56c3314"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 18 10:40:24 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 18 10:52:47 2009 -0400"
      },
      "message": "tracing: give easy way to clear trace buffer\n\nThere is currently no easy way to clear the trace buffer. Currently\nthe only way is to change the current tracer.\n\nThis patch lets the user clear the trace buffer by simply writing\ninto the trace files.\n\n echo \u003e /debug/tracing/trace\n\nor to clear a single cpu (i.e. for CPU 1):\n\n echo \u003e /debug/tracing/per_cpu/cpu1/trace\n\nRequested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "490362003457f8d387f6f6e73e3a7efbf56c3314",
      "tree": "b2976ec33eac69243d564661fcbc52d0fd573cdb",
      "parents": [
        "327019b01e068d66dada6a8b2571180ab3674d20"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Mar 17 22:38:58 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 18 10:12:38 2009 +0100"
      },
      "message": "tracing/ftrace: stop {irqs, preempt}soff tracers when tracing is stopped\n\nImpact: fix a selftest warning\n\nIn some cases, it\u0027s possible to see the following warning on irqsoff\ntracer selftest:\n\n[    4.640003] Testing tracer irqsoff: \u003c4\u003e------------[ cut here ]------------\n[    4.653562] WARNING: at kernel/trace/trace.c:458 update_max_tr_single+0x9a/0xc4()\n[    4.660000] Hardware name: System Product Name\n[    4.660000] Modules linked in:\n[    4.660000] Pid: 301, comm: kstop/1 Not tainted 2.6.29-rc8-tip #35837\n[    4.660000] Call Trace:\n[    4.660000]  [\u003c4014b588\u003e] warn_slowpath+0x79/0x8f\n[    4.660000]  [\u003c402d6949\u003e] ? put_dec+0x64/0x6b\n[    4.660000]  [\u003c40162b56\u003e] ? getnstimeofday+0x58/0xdd\n[    4.660000]  [\u003c40162210\u003e] ? clocksource_read+0x3/0xf\n[    4.660000]  [\u003c4015eb44\u003e] ? ktime_set+0x8/0x34\n[    4.660000]  [\u003c4014101a\u003e] ? balance_runtime+0x8/0x56\n[    4.660000]  [\u003c405f6f11\u003e] ? _spin_lock+0x3/0x10\n[    4.660000]  [\u003c4011f643\u003e] ? ftrace_call+0x5/0x8\n[    4.660000]  [\u003c4015d0f1\u003e] ? task_cputime_zero+0x3/0x27\n[    4.660000]  [\u003c40190ee7\u003e] ? cpupri_set+0x90/0xcb\n[    4.660000]  [\u003c405f7208\u003e] ? _spin_lock_irqsave+0x22/0x34\n[    4.660000]  [\u003c40190f12\u003e] ? cpupri_set+0xbb/0xcb\n[    4.660000]  [\u003c405f7151\u003e] ? _spin_unlock_irqrestore+0x23/0x35\n[    4.660000]  [\u003c4018493f\u003e] ? ring_buffer_reset_cpu+0x27/0x51\n[    4.660000]  [\u003c405f7208\u003e] ? _spin_lock_irqsave+0x22/0x34\n[    4.660000]  [\u003c40184962\u003e] ? ring_buffer_reset_cpu+0x4a/0x51\n[    4.660000]  [\u003c405f7151\u003e] ? _spin_unlock_irqrestore+0x23/0x35\n[    4.660000]  [\u003c4018cc29\u003e] ? trace_hardirqs_off+0x1a/0x1c\n[    4.660000]  [\u003c405f7151\u003e] ? _spin_unlock_irqrestore+0x23/0x35\n[    4.660000]  [\u003c40184962\u003e] ? ring_buffer_reset_cpu+0x4a/0x51\n[    4.660000]  [\u003c401850f3\u003e] ? cpumask_next+0x15/0x18\n[    4.660000]  [\u003c4018a41f\u003e] update_max_tr_single+0x9a/0xc4\n[    4.660000]  [\u003c4014e5fe\u003e] ? exit_notify+0x16/0xf2\n[    4.660000]  [\u003c4018cd13\u003e] check_critical_timing+0xcc/0x11e\n[    4.660000]  [\u003c4014e5fe\u003e] ? exit_notify+0x16/0xf2\n[    4.660000]  [\u003c4014e5fe\u003e] ? exit_notify+0x16/0xf2\n[    4.660000]  [\u003c4018cdf1\u003e] stop_critical_timing+0x8c/0x9f\n[    4.660000]  [\u003c4014e5c4\u003e] ? forget_original_parent+0xac/0xd0\n[    4.660000]  [\u003c4018ce3a\u003e] trace_hardirqs_on+0x1a/0x1c\n[    4.660000]  [\u003c4014e5c4\u003e] forget_original_parent+0xac/0xd0\n[    4.660000]  [\u003c4014e5fe\u003e] exit_notify+0x16/0xf2\n[    4.660000]  [\u003c4014e8a5\u003e] do_exit+0x1cb/0x225\n[    4.660000]  [\u003c4015c72b\u003e] ? kthread+0x0/0x69\n[    4.660000]  [\u003c4011f61d\u003e] kernel_thread_helper+0xd/0x10\n[    4.660000] ---[ end trace a7919e7f17c0a725 ]---\n[    4.660164] .. no entries found ..FAILED!\n\nDuring the selftest of irqsoff tracer, we do that:\n\n\t/* disable interrupts for a bit */\n\tlocal_irq_disable();\n\tudelay(100);\n\tlocal_irq_enable();\n\t/* stop the tracing. */\n\ttracing_stop();\n\t/* check both trace buffers */\n\tret \u003d trace_test_buffer(tr, NULL);\n\nIf a callsite performs a new max delay with irqs off just after\ntracing_stop, update_max_tr_single() -\u003e ring_buffer_swap_cpu()\nwill be called with the buffers disabled by tracing_stop(), hence\nthe warning, then ring_buffer_swap_cpu() return -EAGAIN and\nupdate_max_tr_single() complains.\n\nFix it by also stopping the tracer before stopping the tracing globally.\nA similar situation can happen with preemptoff and preemptirqsoff tracers\nwhere we apply the same fix.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1237325938-5240-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a635cf0497342978d417cae19d4a4823932977ff",
      "tree": "afacf84eb85388801a04996ed62e000cdfad3bc2",
      "parents": [
        "50d88758a3f9787cbdbdbc030560b815721eab4b"
      ],
      "author": {
        "name": "Carsten Emde",
        "email": "Carsten.Emde@osadl.org",
        "time": "Wed Mar 18 09:00:41 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 18 10:10:18 2009 +0100"
      },
      "message": "tracing: fix command line to pid reverse map\n\nImpact: fix command line to pid mapping\n\nmap_cmdline_to_pid[] is checked in trace_save_cmdline(), but never\nupdated. This results in stale pid to command line mappings and the\ntracer output will associate the wrong comm string.\n\nSigned-off-by: Carsten Emde \u003cCarsten.Emde@osadl.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "50d88758a3f9787cbdbdbc030560b815721eab4b",
      "tree": "02e5c47c5c5bd05e578d1883ccaa1e3bc13c703a",
      "parents": [
        "2c7eea4c62ba090b7f4583c3d7337ea0019be900"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 18 08:58:44 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 18 10:10:17 2009 +0100"
      },
      "message": "tracing: fix trace_find_cmdline()\n\nImpact: prevent stale command line output\n\nIn case there is no valid command line mapping for a pid\ntrace_find_cmdline() returns without updating the comm buffer. The\ntrace dump keeps the previous entry which results in confusing trace\noutput:\n\n     \u003cidle\u003e-0     [000]   280.702056 ....\n     \u003cidle\u003e-23456 [000]   280.702080 ....\n\nUpdate the comm buffer with \"\u003c...\u003e\" when no mapping is found.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2c7eea4c62ba090b7f4583c3d7337ea0019be900",
      "tree": "2a85739caeef13035316d47f61cab11f3a91660f",
      "parents": [
        "18aecd362a1c991fbf5f7919ae051a77532ba2f8"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 18 09:03:19 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 18 10:10:17 2009 +0100"
      },
      "message": "tracing: replace the crude (unsigned) -1 hackery\n\nImpact: cleanup\n\nThe command line recorder uses (unsigned) -1 to mark non mapped\nentries in the pid to command line maps. The validity check is\ncompletely unintuitive: idx \u003e\u003d SAVED_CMDLINES\n\nThere is no need for such casting games. Use a constant to mark\nunmapped entries and check for that constant to make the code readable\nand understandable.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "18aecd362a1c991fbf5f7919ae051a77532ba2f8",
      "tree": "f19f11afa2b669a6acea5c98fda091b68993bc59",
      "parents": [
        "03418c7efaa429dc7647ac93e3862e3fe1816873"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 18 08:56:58 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 18 10:10:16 2009 +0100"
      },
      "message": "tracing: stop command line recording when tracing is disabled\n\nImpact: prevent overwrite of command line entries\n\nWhen the tracer is stopped the command line recording continues to\nrecord. The check for tracing_is_on() is not sufficient here as the\nringbuffer status is not affected by setting\ndebug/tracing/tracing_enabled to 0. On a non idle system this can\nresult in the loss of the command line information for the stopped\ntrace, which makes the trace harder to read and analyse.\n\nCheck tracer_enabled to allow further recording.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "327019b01e068d66dada6a8b2571180ab3674d20",
      "tree": "c81354a509d6962f6878145fcf3cdbe50a000a89",
      "parents": [
        "03418c7efaa429dc7647ac93e3862e3fe1816873",
        "62524d55e5b9ffe36e3bf3dd7a594114f150b449"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 18 06:59:56 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 18 06:59:56 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "62524d55e5b9ffe36e3bf3dd7a594114f150b449",
      "tree": "4e38825d35950ea962bbc44bdc78aea9ef909458",
      "parents": [
        "5fec6ddcb43a91aa9a254c8ecf174c803de6f07e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 20:58:00 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 23:12:11 2009 -0400"
      },
      "message": "tracing: make power tracer start/stop methods lighter weight\n\nThe start/stop methods of a tracer should be able to be executed\nin all contexts. This patch converts the power tracer to do so.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "5fec6ddcb43a91aa9a254c8ecf174c803de6f07e",
      "tree": "6c8e3c0d719022e7c82d87894c9eb28492035aa5",
      "parents": [
        "97e7e4f391cac2b00417b581b432533d245d4fd0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 19:59:53 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 23:10:45 2009 -0400"
      },
      "message": "tracing: make sched_switch stop/start light weight\n\nThe stopping and starting of a tracer should be light weight and\nbe able to be called in all contexts. The sched_switch grabbed\nmutexes in the start/stop functions. This patch changes it to a\nsimple variable, on/off.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "af4617bdba34aa556272b34c3986b0a4d588f568",
      "tree": "c46a6b695724ee27c0113f6affcebeffcefbcf23",
      "parents": [
        "37886f6a9f62d22530ffee8d3f9215c8345b6969"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 18:09:55 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 23:10:35 2009 -0400"
      },
      "message": "tracing: add global-clock option to provide cross CPU clock to traces\n\nImpact: feature to allow better serialized clock\n\nThis patch adds an option called \"global-clock\" that will allow\nthe tracer to switch to a slower but more accurate (across CPUs)\nclock.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "37886f6a9f62d22530ffee8d3f9215c8345b6969",
      "tree": "046c9086682145fd2808af7197af669f08be6d0a",
      "parents": [
        "6adaad14d7d4d3ef31b4e2dc992b18b5da7c4eb3"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 17:22:06 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 23:06:31 2009 -0400"
      },
      "message": "ring-buffer: add api to allow a tracer to change clock source\n\nThis patch adds a new function called ring_buffer_set_clock that\nallows a tracer to assign its own clock source to the buffer.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "4176935b58eeb636917e65a2c388e4607e36cce6",
      "tree": "dac4e0005cda5a3a5a313dde35bbac2877d9bd93",
      "parents": [
        "c269fc8c537d761f36cb98e637ae934d9331a9d5",
        "6adaad14d7d4d3ef31b4e2dc992b18b5da7c4eb3"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 17 10:37:37 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 17 10:37:37 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "c269fc8c537d761f36cb98e637ae934d9331a9d5",
      "tree": "f354c1ea46d796d553e239cf6365dd92c2200182",
      "parents": [
        "e4106133341121aeaad732d4613de06d9033b5ac"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Tue Mar 17 01:20:59 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 17 08:38:23 2009 +0100"
      },
      "message": "tracing: fix leak in event_format_read()\n\nImpact: fix memory leak\n\nIf event_format_read() exits early due to nonzero ppos, the\nprevious kmalloc doesn\u0027t get freed - might as well do the\ncheck before the kmalloc and avoid the problem.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \u003d?ISO-8859-1?Q?Fr\u003dE9d\u003dE9ric?\u003d Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237270859.8033.141.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6adaad14d7d4d3ef31b4e2dc992b18b5da7c4eb3",
      "tree": "2c1a122a9a13c8b2cae8f0c27368a67e33804deb",
      "parents": [
        "4ca530852346be239b7c19e7bec5d2b78855bebe"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 16 21:57:17 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 16 23:31:15 2009 -0400"
      },
      "message": "tracing: stop comm recording on tracing off\n\nImpact: fix for losing comms in trace\n\nThe command lines of tasks are cached at sched switch to not need\nto record them at every trace point.  Disabling the tracing on stops\nthe recording of traces, but does not stop the caching of command lines.\nWhen the tracing is off the cache may overflow and cause the tracing\nto show incorrect tasks matching the PIDs.\n\nThis patch disables prevents updates to the comm cache when the ring buffer\nis off.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "4ca530852346be239b7c19e7bec5d2b78855bebe",
      "tree": "96e5252faaf362115a96ed6df7c4e4f698a027dc",
      "parents": [
        "03303549b1695dc024d4a653cc16bd79f78f9750"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 16 19:20:15 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 16 23:27:06 2009 -0400"
      },
      "message": "tracing: protect reader of cmdline output\n\nImpact: fix to one cause of incorrect comm outputs in trace\n\nThe spinlock only protected the creation of a comm \u003c\u003d\u003e pid pair.\nBut it was possible that a reader could look up a pid, and get the\nwrong comm because it had no locking.\n\nThis also required changing trace_find_cmdline to copy the comm cache\nand not just send back a pointer to it.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "03303549b1695dc024d4a653cc16bd79f78f9750",
      "tree": "aa731b33460908038a50fb72850b873638a768aa",
      "parents": [
        "b478b782e110fdb4135caa3062b6d687e989d994"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Mar 16 22:41:00 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 16 22:15:36 2009 -0400"
      },
      "message": "tracing/ftrace: fix the check on nopped sites\n\nImpact: fix a dynamic tracing failure\n\nRecently, the function and function graph tracers failed to use dynamic\ntracing after the following commit:\n\nfa9d13cf135efbd454453a53b6299976bea245a9\n(ftrace: don\u0027t try to __ftrace_replace_code on !FTRACE_FL_CONVERTED rec)\n\nThe patch is right except a mistake on the check for the FTRACE_FL_CONVERTED\nflag. The code patching is aborted in case of successfully nopped sites.\nWhat we want is the opposite: ignore the callsites that haven\u0027t been nopped.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "2fc1dfbe17e7705c55b7a99da995fa565e26f151",
      "tree": "8d7ecb57fdefdfac5bdff6ee3a82485e2ea4340a",
      "parents": [
        "ac1d52d0b85854958c7e78c8006e39aadb6ce4b8"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Mar 16 01:45:03 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:13:18 2009 +0100"
      },
      "message": "tracing/core: fix early free of cpumasks\n\nImpact: fix crashes when tracing cpumasks\n\nWhile ring-buffer allocation, the cpumasks are allocated too,\nincluding the tracing cpumask and the per-cpu file mask handler.\nBut these cpumasks are freed accidentally just after.\nFix it.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237164303-11476-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ac1d52d0b85854958c7e78c8006e39aadb6ce4b8",
      "tree": "fc50818980e376a66d44f991b94e8a52c03e68fc",
      "parents": [
        "59f586db98919d7d9c43527b26c8de1cdf9ed912"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Mar 16 00:32:41 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:13:18 2009 +0100"
      },
      "message": "tracing/ftrace: fix double calls to tracing_start()\n\nImpact: fix a warning during preemptirqsoff selftests\n\nWhen the preemptirqsoff selftest fails, we see the following\nwarning:\n\n[    6.050000] Testing tracer preemptirqsoff: .. no entries found ..\n------------[ cut here ]------------\n[    6.060000] WARNING: at kernel/trace/trace.c:688 tracing_start+0x67/0xd3()\n[    6.060000] Modules linked in:\n[    6.060000] Pid: 1, comm: swapper Tainted: G\n[    6.060000] Call Trace:\n[    6.060000]  [\u003cffffffff802460ff\u003e] warn_slowpath+0xb1/0x100\n[    6.060000]  [\u003cffffffff802a8f5b\u003e] ? trace_preempt_on+0x35/0x4b\n[    6.060000]  [\u003cffffffff802a37fb\u003e] ? tracing_start+0x31/0xd3\n[    6.060000]  [\u003cffffffff802a37fb\u003e] ? tracing_start+0x31/0xd3\n[    6.060000]  [\u003cffffffff80271e0b\u003e] ? __lock_acquired+0xe6/0x1f2\n[    6.060000]  [\u003cffffffff802a37fb\u003e] ? tracing_start+0x31/0xd3\n[    6.060000]  [\u003cffffffff802a3831\u003e] tracing_start+0x67/0xd3\n[    6.060000]  [\u003cffffffff802a8ace\u003e] ? irqsoff_tracer_reset+0x2d/0x57\n[    6.060000]  [\u003cffffffff802a4d1c\u003e] trace_selftest_startup_preemptirqsoff+0x1c8/0x1f1\n[    6.060000]  [\u003cffffffff802a4798\u003e] register_tracer+0x12f/0x241\n[    6.060000]  [\u003cffffffff810250d0\u003e] ? init_irqsoff_tracer+0x0/0x53\n[    6.060000]  [\u003cffffffff8102510b\u003e] init_irqsoff_tracer+0x3b/0x53\n\nThis is because in fail case, the preemptirqsoff tracer selftest calls twice\nthe tracing_start() function:\n\nint\ntrace_selftest_startup_preemptirqsoff(struct tracer *trace, struct trace_array *tr)\n{\n        if (!ret \u0026\u0026 !count) {\n                printk(KERN_CONT \".. no entries found ..\");\n                ret \u003d -1;\n                tracing_start(); \u003c-----\n                goto out;\n        }\n        [...]\nout:\n        trace-\u003ereset(tr);\n        tracing_start(); \u003c------\n        tracing_max_latency \u003d save_max;\n\n        return ret;\n}\n\nSince it is well handled in the out path, we don\u0027t need the conditional one.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237159961-7447-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ],
  "next": "59f586db98919d7d9c43527b26c8de1cdf9ed912"
}
