)]}'
{
  "log": [
    {
      "commit": "b1bf9368407ae7e89d8a005bb40beb70a41df539",
      "tree": "3815c8aab19c6c186736673c624fef5f3faab716",
      "parents": [
        "524df55725217b13d5a232fb5badb5846418ea0e",
        "4671a1322052425afa38fcb7980d2fd2bb0fc99b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 01 09:00:29 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 01 09:00:29 2010 -0800"
      },
      "message": "Merge branch \u0027for-2.6.34\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.34\u0027 of git://git.kernel.dk/linux-2.6-block: (38 commits)\n  block: don\u0027t access jiffies when initialising io_context\n  cfq: remove 8 bytes of padding from cfq_rb_root on 64 bit builds\n  block: fix for \"Consolidate phys_segment and hw_segment limits\"\n  cfq-iosched: quantum check tweak\n  blktrace: perform cleanup after setup error\n  blkdev: fix merge_bvec_fn return value checks\n  cfq-iosched: requests \"in flight\" vs \"in driver\" clarification\n  cciss: Fix problem with scatter gather elements in the scsi half of the driver\n  cciss: eliminate unnecessary pointer use in cciss scsi code\n  cciss: do not use void pointer for scsi hba data\n  cciss: factor out scatter gather chain block mapping code\n  cciss: fix scatter gather chain block dma direction kludge\n  cciss: simplify scatter gather code\n  cciss: factor out scatter gather chain block allocation and freeing\n  cciss: detect bad alignment of scsi commands at build time\n  cciss: clarify command list padding calculation\n  cfq-iosched: rethink seeky detection for SSDs\n  cfq-iosched: rework seeky detection\n  block: remove padding from io_context on 64bit builds\n  block: Consolidate phys_segment and hw_segment limits\n  ...\n"
    },
    {
      "commit": "9a8c28c8311e30ba97499447d5a11662f5aea094",
      "tree": "b0260ab00c6e24fb02ca1cb3c147350e933c79ba",
      "parents": [
        "9f7cdbc33f36d28e57eaba0093f68f0d14c38c5b"
      ],
      "author": {
        "name": "Dmitry Monakhov",
        "email": "dmonakhov@openvz.org",
        "time": "Sat Feb 27 20:35:13 2010 +0300"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Sun Feb 28 19:47:19 2010 +0100"
      },
      "message": "blktrace: perform cleanup after setup error\n\nCurrently even if BLKTRACESETUP ioctl has failed user must call\nBLKTRACETEARDOWN to be shure what all staff was cleaned, which\nis contr-intuitive.\nLet\u0027s setup ioctl make necessery cleanup by it self.\n\nSigned-off-by: Dmitry Monakhov \u003cdmonakhov@openvz.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6556a6743549defc32e5f90ee2cb1ecd833a44c3",
      "tree": "622306583d4a3c13235a8bfc012854c125c597f1",
      "parents": [
        "e0d272429a34ff143bfa04ee8e29dd4eed2964c7",
        "1dd2980d990068e20045b90c424518cc7f3657ff"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Feb 28 10:20:25 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Feb 28 10:20:25 2010 -0800"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (172 commits)\n  perf_event, amd: Fix spinlock initialization\n  perf_event: Fix preempt warning in perf_clock()\n  perf tools: Flush maps on COMM events\n  perf_events, x86: Split PMU definitions into separate files\n  perf annotate: Handle samples not at objdump output addr boundaries\n  perf_events, x86: Remove superflous MSR writes\n  perf_events: Simplify code by removing cpu argument to hw_perf_group_sched_in()\n  perf_events, x86: AMD event scheduling\n  perf_events: Add new start/stop PMU callbacks\n  perf_events: Report the MMAP pgoff value in bytes\n  perf annotate: Defer allocating sym_priv-\u003ehist array\n  perf symbols: Improve debugging information about symtab origins\n  perf top: Use a macro instead of a constant variable\n  perf symbols: Check the right return variable\n  perf/scripts: Tag syscall_name helper as not yet available\n  perf/scripts: Add perf-trace-python Documentation\n  perf/scripts: Remove unnecessary PyTuple resizes\n  perf/scripts: Add syscall tracing scripts\n  perf/scripts: Add Python scripting engine\n  perf/scripts: Remove check-perf-trace from listed scripts\n  ...\n\nFix trivial conflict in tools/perf/util/probe-event.c\n"
    },
    {
      "commit": "480917427b0b6ff39de55ffc81391055472e6c26",
      "tree": "1108a81c38967031d929acec357885745d83d46c",
      "parents": [
        "6fb83029db161141d68cf019760a893d03d0682b",
        "f1c7f517a5dc23bce07efa5ed55e2c074ed9d4ba"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Feb 27 10:41:16 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Feb 27 10:41:16 2010 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/core\n"
    },
    {
      "commit": "6fb83029db161141d68cf019760a893d03d0682b",
      "tree": "6f149c23cedc9b2a5f72b5b90ab8426b39afbb7c",
      "parents": [
        "281b3714e91162b66add1cfac404cf7b81e3e2f2",
        "e01292b1fd68ff2abe234d584b06e64344d2c1de"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Feb 27 10:06:10 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Feb 27 10:06:10 2010 +0100"
      },
      "message": "Merge branch \u0027tracing/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into tracing/core\n"
    },
    {
      "commit": "f1c7f517a5dc23bce07efa5ed55e2c074ed9d4ba",
      "tree": "187be4d66aaa35db2eb1cd77b49520868e999b67",
      "parents": [
        "281b3714e91162b66add1cfac404cf7b81e3e2f2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 26 17:08:16 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Feb 26 19:25:53 2010 -0500"
      },
      "message": "ftrace: Add function names to dangling } in function graph tracer\n\nThe function graph tracer is currently the most invasive tracer\nin the ftrace family. It can easily overflow the buffer even with\n10megs per CPU. This means that events can often be lost.\n\nOn start up, or after events are lost, if the function return is\nrecorded but the function enter was lost, all we get to see is the\nexiting \u0027}\u0027.\n\nHere is how a typical trace output starts:\n\n [tracing] cat trace\n # tracer: function_graph\n #\n # CPU  DURATION                  FUNCTION CALLS\n # |     |   |                     |   |   |   |\n  0) + 91.897 us   |                  }\n  0) ! 567.961 us  |                }\n  0)   \u003c\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d |\n  0) ! 579.083 us  |                _raw_spin_lock_irqsave();\n  0)   4.694 us    |                _raw_spin_unlock_irqrestore();\n  0) ! 594.862 us  |              }\n  0) ! 603.361 us  |            }\n  0) ! 613.574 us  |          }\n  0) ! 623.554 us  |        }\n  0)   3.653 us    |        fget_light();\n  0)               |        sock_poll() {\n\nThere are a series of \u0027}\u0027 with no matching \"func() {\". There\u0027s no information\nto what functions these ending brackets belong to.\n\nThis patch adds a stack on the per cpu structure used in outputting\nthe function graph tracer to keep track of what function was outputted.\nThen on a function exit event, it checks the depth to see if the\nfunction exit has a matching entry event. If it does, then it only\nprints the \u0027}\u0027, otherwise it adds the function name after the \u0027}\u0027.\n\nThis allows function exit events to show what function they belong to\nat trace output startup, when the entry was lost due to ring buffer\noverflow, or even after a new task is scheduled in.\n\nHere is what the above trace will look like after this patch:\n\n [tracing] cat trace\n # tracer: function_graph\n #\n # CPU  DURATION                  FUNCTION CALLS\n # |     |   |                     |   |   |   |\n  0) + 91.897 us   |                  } (irq_exit)\n  0) ! 567.961 us  |                } (smp_apic_timer_interrupt)\n  0)   \u003c\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d |\n  0) ! 579.083 us  |                _raw_spin_lock_irqsave();\n  0)   4.694 us    |                _raw_spin_unlock_irqrestore();\n  0) ! 594.862 us  |              } (add_wait_queue)\n  0) ! 603.361 us  |            } (__pollwait)\n  0) ! 613.574 us  |          } (tcp_poll)\n  0) ! 623.554 us  |        } (sock_poll)\n  0)   3.653 us    |        fget_light();\n  0)               |        sock_poll() {\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "281b3714e91162b66add1cfac404cf7b81e3e2f2",
      "tree": "9f80453153db272c207129d971e17d31a6bb214a",
      "parents": [
        "64b9fb5704a479d98a59f2a1d45d3331a8f847f8",
        "7b60997f73865b019e595720185c85285ca3df9a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 26 09:20:17 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 26 09:20:17 2010 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/core\n"
    },
    {
      "commit": "64b9fb5704a479d98a59f2a1d45d3331a8f847f8",
      "tree": "2b1052b05fa7615c817894bc9802bc5bb2af7ac1",
      "parents": [
        "83f0d53993b2967e54186468b0fc4321447f68f1",
        "60b341b778cc2929df16c0a504c91621b3c6a4ad"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 26 09:18:32 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 26 09:18:32 2010 +0100"
      },
      "message": "Merge commit \u0027v2.6.33\u0027 into tracing/core\n\nConflicts:\n\tscripts/recordmcount.pl\n\nMerge reason: Merge up to v2.6.33.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7b60997f73865b019e595720185c85285ca3df9a",
      "tree": "4b441b810a31484cf28621b7690dadcf71a19e3e",
      "parents": [
        "c85f3a91f84d5a85f179c2504bb7a39370c82b41"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Wed Feb 24 15:40:26 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Feb 25 10:42:55 2010 -0500"
      },
      "message": "tracing: Simplify memory recycle of trace_define_field\n\nDiscard freeing field-\u003etype since it is not necessary.\n\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nLKML-Reference: \u003c1266997226-6833-5-git-send-email-wenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c85f3a91f84d5a85f179c2504bb7a39370c82b41",
      "tree": "04f082a3f73138f97a4022e624942f29420617a9",
      "parents": [
        "a5efd925115cbc1f90195dca9a25f7b8daa10c37"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Wed Feb 24 15:40:24 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Feb 25 10:41:24 2010 -0500"
      },
      "message": "tracing: Remove unnecessary variable in print_graph_return\n\nThe \"cpu\" variable is declared at the start of the function and\nalso within a branch, with the exact same initialization.\n\nRemove the local variable of the same name in the branch.\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nLKML-Reference: \u003c1266997226-6833-3-git-send-email-wenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a5efd925115cbc1f90195dca9a25f7b8daa10c37",
      "tree": "476e5db28eec3d8a9145ccacdde7b35801af757b",
      "parents": [
        "6574658b3bc7c408581629de5efb809f125cce8c"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Wed Feb 24 15:40:23 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Feb 25 10:36:29 2010 -0500"
      },
      "message": "tracing: Fix typo of info text in trace_kprobe.c\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nLKML-Reference: \u003c1266997226-6833-2-git-send-email-wenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "6574658b3bc7c408581629de5efb809f125cce8c",
      "tree": "4b0399c265df57ec762604123fb1d5f9edcae8dd",
      "parents": [
        "1ab83a89411556c4d5914dcf0d5da190178ae7db"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Wed Feb 24 15:40:22 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Feb 25 10:35:55 2010 -0500"
      },
      "message": "tracing: Fix typo in prof_sysexit_enable()\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nLKML-Reference: \u003c1266997226-6833-1-git-send-email-wenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "1ab83a89411556c4d5914dcf0d5da190178ae7db",
      "tree": "894b875ef02497e02e5c4c03ca5a4a0b40ce47dc",
      "parents": [
        "86c38a31aa7f2dd6e74a262710bf8ebf7455acc5"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Feb 24 15:28:14 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Feb 25 10:31:45 2010 -0500"
      },
      "message": "tracing: Remove CONFIG_TRACE_POWER from kernel config\n\nThe power tracer has been converted to power trace events.\n\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B84D50E.4070806@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "86c38a31aa7f2dd6e74a262710bf8ebf7455acc5",
      "tree": "167d2c46917233373e597cc5f82d3f9132170e65",
      "parents": [
        "0c54dd341fb701928b8e5dca91ced1870c55b05b"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Wed Feb 24 13:59:23 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Feb 25 09:38:11 2010 -0500"
      },
      "message": "tracing: Fix ftrace_event_call alignment for use with gcc 4.5\n\nGCC 4.5 introduces behavior that forces the alignment of structures to\n use the largest possible value. The default value is 32 bytes, so if\n some structures are defined with a 4-byte alignment and others aren\u0027t\n declared with an alignment constraint at all - it will align at 32-bytes.\n\n For things like the ftrace events, this results in a non-standard array.\n When initializing the ftrace subsystem, we traverse the _ftrace_events\n section and call the initialization callback for each event. When the\n structures are misaligned, we could be treating another part of the\n structure (or the zeroed out space between them) as a function pointer.\n\n This patch forces the alignment for all the ftrace_event_call structures\n to 4 bytes.\n\n Without this patch, the kernel fails to boot very early when built with\n gcc 4.5.\n\n It\u0027s trivial to check the alignment of the members of the array, so it\n might be worthwhile to add something to the build system to do that\n automatically. Unfortunately, that only covers this case. I\u0027ve asked one\n of the gcc developers about adding a warning when this condition is seen.\n\nCc: stable@kernel.org\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nLKML-Reference: \u003c4B85770B.6010901@suse.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f850c30c8b426ba1688cb63b1a3e534eed03a138",
      "tree": "b01f27bc57b73cf8311c8135be0ffc8e93b16ed6",
      "parents": [
        "e7b8e675d9c71b868b66f62f725a948047514719"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Feb 10 17:25:17 2010 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Feb 17 13:13:08 2010 +0100"
      },
      "message": "tracing/kprobes: Make Kconfig dependencies generic\n\nKPROBES_EVENT actually depends on the regs and stack access API\n(b1cf540f) and not on x86.\nSo introduce a new config option which architectures can select if\nthey have the API implemented and switch x86.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nLKML-Reference: \u003c20100210162517.GB6933@osiris.boeblingen.de.ibm.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "e7b8e675d9c71b868b66f62f725a948047514719",
      "tree": "77877e2470148dc47653408c4b624734a8f14239",
      "parents": [
        "ea2c68a08fedb5053ba312d661e47df9f4d72411"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Tue Jan 26 04:40:03 2010 -0500"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Feb 17 13:07:21 2010 +0100"
      },
      "message": "tracing: Unify arch_syscall_addr() implementations\n\nMost implementations of arch_syscall_addr() are the same, so create a\ndefault version in common code and move the one piece that differs (the\nsyscall table) to asm/syscall.h.  New arch ports don\u0027t have to waste\ntime copying \u0026 pasting this simple function.\n\nThe s390/sparc versions need to be different, so document why.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1264498803-17278-1-git-send-email-vapier@gentoo.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "a9bb18f36c8056f0712fb28c52c0f85d98438dfb",
      "tree": "408900306e5730221cb026f9c8fe9bdc9ec14d7c",
      "parents": [
        "4f48f8b7fd18c44f8478174f9925cc3c059c6ce4"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Feb 10 17:23:47 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 14 09:43:58 2010 +0100"
      },
      "message": "tracing/kprobes: Fix probe parsing\n\nTrying to add a probe like:\n\n  echo p:myprobe 0x10000 \u003e /sys/kernel/debug/tracing/kprobe_events\n\nwill fail since the wrong pointer is passed to strict_strtoul\nwhen trying to convert the address to an unsigned long.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c20100210162346.GA6933@osiris.boeblingen.de.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c7c6b1fe9f942c1a30585ec2210a09dfff238506",
      "tree": "de7780b1b6cff9c8f33c9de1240a0b19bea9aa94",
      "parents": [
        "ede55c9d78101fef0d8e620940a5163f14b02f29"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Feb 10 15:43:04 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Feb 11 14:32:38 2010 -0500"
      },
      "message": "ftrace: Allow to remove a single function from function graph filter\n\nI don\u0027t see why we can only clear all functions from the filter.\n\nAfter patching:\n\n  # echo sys_open \u003e set_graph_function\n  # echo sys_close \u003e\u003e set_graph_function\n  # cat set_graph_function\n  sys_open\n  sys_close\n  # echo \u0027!sys_close\u0027 \u003e\u003e set_graph_function\n  # cat set_graph_function\n  sys_open\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B726388.2000408@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ede55c9d78101fef0d8e620940a5163f14b02f29",
      "tree": "d09ace47623ef59d7db6a9ee66f3f0794ff2d6ea",
      "parents": [
        "ea2c68a08fedb5053ba312d661e47df9f4d72411"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jan 27 11:25:54 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 09 21:35:05 2010 -0500"
      },
      "message": "tracing: Add correct/incorrect to sort keys for branch annotation output\n\nThe branch annotation is a bit difficult to see the worst offenders\nbecause it only sorts by percentage:\n\n correct incorrect  %        Function                  File              Line\n ------- ---------  -        --------                  ----              ----\n       0      163 100 qdisc_restart                  sch_generic.c        179\n       0      163 100 pfifo_fast_dequeue             sch_generic.c        447\n       0        4 100 pskb_trim_rcsum                skbuff.h             1689\n       0        4 100 llc_rcv                        llc_input.c          170\n       0       18 100 psmouse_interrupt              psmouse-base.c       304\n       0        3 100 atkbd_interrupt                atkbd.c              389\n       0        5 100 usb_alloc_dev                  usb.c                437\n       0       11 100 vsscanf                        vsprintf.c           1897\n       0        2 100 IS_ERR                         err.h                34\n       0       23 100 __rmqueue_fallback             page_alloc.c         865\n       0        4 100 probe_wakeup_sched_switch      trace_sched_wakeup.c 142\n       0        3 100 move_masked_irq                migration.c          11\n\nAdding the incorrect and correct values as sort keys makes this file a\nbit more informative:\n\n correct incorrect  %        Function                  File              Line\n ------- ---------  -        --------                  ----              ----\n       0   366541 100 audit_syscall_entry            auditsc.c            1637\n       0   366538 100 audit_syscall_exit             auditsc.c            1685\n       0   115839 100 sched_info_switch              sched_stats.h        269\n       0    74567 100 sched_info_queued              sched_stats.h        222\n       0    66578 100 sched_info_dequeued            sched_stats.h        177\n       0    15113 100 trace_workqueue_insertion      workqueue.h          38\n       0    15107 100 trace_workqueue_execution      workqueue.h          45\n       0     3622 100 syscall_trace_leave            ptrace.c             1772\n       0     2750 100 sched_move_task                sched.c              10100\n       0     2750 100 sched_move_task                sched.c              10110\n       0     1815 100 pre_schedule_rt                sched_rt.c           1462\n       0      837 100 audit_alloc                    auditsc.c            879\n       0      814 100 tcp_mss_split_point            tcp_output.c         1302\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f24bb999d2b9f2950e5cac5b69bffedf73c24ea4",
      "tree": "2c595d1c4c34f06eda309fd3770e3a7fb9ffba8a",
      "parents": [
        "4554dbcb85a4ed2abaa2b6fa15649b796699ec89"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Tue Feb 02 16:49:25 2010 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 04 09:36:19 2010 +0100"
      },
      "message": "ftrace: Remove record freezing\n\nRemove record freezing. Because kprobes never puts probe on\nftrace\u0027s mcount call anymore, it doesn\u0027t need ftrace to check\nwhether kprobes on it.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: przemyslaw@pawelczyk.it\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20100202214925.4694.73469.stgit@dhcp-100-2-132.bos.redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2cfa19780d61740f65790c5bae363b759d7c96fa",
      "tree": "cc7a8277a9f04c1bd613efe03c7d6d16cd18dc96",
      "parents": [
        "615d0ebbc782b67296e3226c293f520f93f93515"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Tue Feb 02 16:49:11 2010 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 04 09:36:19 2010 +0100"
      },
      "message": "ftrace/alternatives: Introducing *_text_reserved functions\n\nIntroducing *_text_reserved functions for checking the text\naddress range is partially reserved or not. This patch provides\nchecking routines for x86 smp alternatives and dynamic ftrace.\nSince both functions modify fixed pieces of kernel text, they\nshould reserve and protect those from other dynamic text\nmodifier, like kprobes.\n\nThis will also be extended when introducing other subsystems\nwhich modify fixed pieces of kernel text. Dynamic text modifiers\nshould avoid those.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: przemyslaw@pawelczyk.it\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Mathieu Desnoyers \u003ccompudj@krystal.dyndns.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nLKML-Reference: \u003c20100202214911.4694.16587.stgit@dhcp-100-2-132.bos.redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4f48f8b7fd18c44f8478174f9925cc3c059c6ce4",
      "tree": "94eb6ad3dcf1d381d7b2bc81b3883d6cde98f3ba",
      "parents": [
        "ab658321f32770b903a4426e2a6fae0392757755"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Feb 02 15:32:09 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 02 10:20:18 2010 -0500"
      },
      "message": "tracing: Fix circular dead lock in stack trace\n\nWhen we cat \u003cdebugfs\u003e/tracing/stack_trace, we may cause circular lock:\nsys_read()\n  t_start()\n     arch_spin_lock(\u0026max_stack_lock);\n\n  t_show()\n     seq_printf(), vsnprintf() .... /* they are all trace-able,\n       when they are traced, max_stack_lock may be required again. */\n\nThe following script can trigger this circular dead lock very easy:\n#!/bin/bash\n\necho 1 \u003e /proc/sys/kernel/stack_tracer_enabled\n\nmount -t debugfs xxx /mnt \u003e /dev/null 2\u003e\u00261\n\n(\n# make check_stack() zealous to require max_stack_lock\nfor ((; ;))\n{\n\techo 1 \u003e /mnt/tracing/stack_max_size\n}\n) \u0026\n\nfor ((; ;))\n{\n\tcat /mnt/tracing/stack_trace \u003e /dev/null\n}\n\nTo fix this bug, we increase the percpu trace_active before\nrequire the lock.\n\nReported-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B67D4F9.9080905@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ae7f6711d6231c9ba54feb5ba9856c3775e482f8",
      "tree": "89070c82204b2503348e4fd6c51d25a169375545",
      "parents": [
        "64abebf731df87e6f4ae7d9ffc340bdf0c033e44",
        "b23ff0e9330e4b11e18af984d50573598e10e7f9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 29 09:24:57 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 29 10:36:22 2010 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: We want to queue up a dependent patch. Also update to\n              later -rc\u0027s.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1e12a4a7a3a78bc9c3aaf3486dde3b8ab1cdf465",
      "tree": "584de4d1c4dde232a8967d1a95d5b4f6eef8c606",
      "parents": [
        "430ad5a600a83956749307b13257c464c3826b55"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Thu Jan 28 09:34:27 2010 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jan 29 02:14:40 2010 +0100"
      },
      "message": "tracing/kprobe: Cleanup unused return value of tracing functions\n\nThe return values of the kprobe\u0027s tracing functions are meaningless,\nlets remove these.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c4B60E9A3.2040505@cn.fujitsu.com\u003e\n[fweisbec@gmail: whitespace fixes, drop useless void returns in end\nof functions]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "430ad5a600a83956749307b13257c464c3826b55",
      "tree": "9cd3dd3f54e29397ff303478de9fe6902f675b9b",
      "parents": [
        "339ce1a4dc2ca26444c4f65c31b71a5056f3bb0b"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Thu Jan 28 09:32:29 2010 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jan 29 02:02:57 2010 +0100"
      },
      "message": "perf: Factorize trace events raw sample buffer operations\n\nIntroduce ftrace_perf_buf_prepare() and ftrace_perf_buf_submit() to\ngather the common code that operates on raw events sampling buffer.\nThis cleans up redundant code between regular trace events, syscall\nevents and kprobe events.\n\nChangelog v1-\u003ev2:\n- Rename function name as per Masami and Frederic\u0027s suggestion\n- Add __kprobes for ftrace_perf_buf_prepare() and make\n  ftrace_perf_buf_submit() inline as per Masami\u0027s suggestion\n- Export ftrace_perf_buf_prepare since modules will use it\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c4B60E92D.9000808@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "ea2c68a08fedb5053ba312d661e47df9f4d72411",
      "tree": "76e5e61b8377aac6283670481171bf899905052b",
      "parents": [
        "24a53652e361321b09df5040711e69387344ce09"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Jan 13 19:38:30 2010 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jan 29 01:05:12 2010 +0100"
      },
      "message": "tracing: Simplify test for function_graph tracing start point\n\nIn the function graph tracer, a calling function is to be traced\nonly when it is enabled through the set_graph_function file,\nor when it is nested in an enabled function.\n\nCurrent code uses TSK_TRACE_FL_GRAPH to test whether it is nested\nor not. Looking at the code, we can get this:\n(trace-\u003edepth \u003e 0) \u003c\u003d\u003d\u003e (TSK_TRACE_FL_GRAPH is set)\n\ntrace-\u003edepth is more explicit to tell that it is nested.\nSo we use trace-\u003edepth directly and simplify the code.\n\nNo functionality is changed.\nTSK_TRACE_FL_GRAPH is not removed yet, it is left for future usage.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B4DB0B6.7040607@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "03688970347bfea32823953a7ce5886d1713205f",
      "tree": "7ae2cc539b20b0a621d4a11f335f96de619ecfcb",
      "parents": [
        "6993b1bb1e62367f500789835a1f747e12259f07"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Fri Jan 22 08:12:47 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jan 26 17:00:39 2010 -0500"
      },
      "message": "tracing/documentation: Cover new frame pointer semantics\n\nUpdate the graph tracer examples to cover the new frame pointer semantics\n(in terms of passing it along).  Move the HAVE_FUNCTION_GRAPH_FP_TEST docs\nout of the Kconfig, into the right place, and expand on the details.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nLKML-Reference: \u003c1264165967-18938-1-git-send-email-vapier@gentoo.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "3c05d7482777f15e71bb4cb1ba78dee2800dfec6",
      "tree": "cb3d7c935ede863ca94e0beb97dc57ceb1e75e7b",
      "parents": [
        "492a74f4210e15f4701422e2e1c4cd3c1e45ddae"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Jan 26 16:14:08 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jan 26 16:14:08 2010 -0500"
      },
      "message": "ring-buffer: Check for end of page in iterator\n\nIf the iterator comes to an empty page for some reason, or if\nthe page is emptied by a consuming read. The iterator code currently\ndoes not check if the iterator is pass the contents, and may\nreturn a false entry.\n\nThis patch adds a check to the ring buffer iterator to test if the\ncurrent page has been completely read and sets the iterator to the\nnext page if necessary.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "492a74f4210e15f4701422e2e1c4cd3c1e45ddae",
      "tree": "a45808e0aa8e5f50ca934a571660f24d6b2d8e1d",
      "parents": [
        "74bf4076f2ed79b5510440b72a561823a8852ec0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Jan 25 15:17:47 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jan 26 16:09:30 2010 -0500"
      },
      "message": "ring-buffer: Check if ring buffer iterator has stale data\n\nUsually reads of the ring buffer is performed by a single task.\nThere are two types of reads from the ring buffer.\n\nOne is a consuming read which will consume the entry that was read\nand the next read will be the entry that follows.\n\nThe other is an iterator that will let the user read the contents of\nthe ring buffer without modifying it. When an iterator is allocated,\nwrites to the ring buffer are disabled to protect the iterator.\n\nThe problem exists when consuming reads happen while an iterator is\nallocated. Specifically, the kind of read that swaps out an entire\npage (used by splice) and replaces it with a new read. If the iterator\nis on the page that is swapped out, then the next read may read\nfrom this swapped out page and return garbage.\n\nThis patch adds a check when reading the iterator to make sure that\nthe iterator contents are still valid. If a consuming read has taken\nplace, the iterator is reset.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "74bf4076f2ed79b5510440b72a561823a8852ec0",
      "tree": "d992d49f992cd77e20c9833876c021ad9b265f57",
      "parents": [
        "f6760aa024199cfbce564311dc4bc4d47b6fb349"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Jan 25 15:11:53 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jan 25 15:11:53 2010 -0500"
      },
      "message": "tracing: Prevent kernel oops with corrupted buffer\n\nIf the contents of the ftrace ring buffer gets corrupted and the trace\nfile is read, it could create a kernel oops (usualy just killing the user\ntask thread). This is caused by the checking of the pid in the buffer.\nIf the pid is negative, it still references the cmdline cache array,\nwhich could point to an invalid address.\n\nThe simple fix is to test for negative PIDs.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "231e36f4d2e63dd770db80b9f5113310c2bcfcfd",
      "tree": "6ecff75b334f24234e0e44bed703cfaa809a7d10",
      "parents": [
        "0eda7385db1f30271ade830a231006938a76fb53"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Thu Jan 14 00:12:12 2010 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 17 08:15:35 2010 +0100"
      },
      "message": "tracing/kprobe: Update kprobe tracing self test for new syntax\n\nUpdate kprobe tracing self test for new syntax (it supports\ndeleting individual probes, and drops $argN support)\nand behavior change (new probes are disabled in default).\n\nThis selftest includes the following checks:\n\n - Adding function-entry probe and return probe with arguments.\n - Enabling these probes.\n - Deleting it individually.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20100114051211.7814.29436.stgit@localhost6.localdomain6\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "24a53652e361321b09df5040711e69387344ce09",
      "tree": "9db320478f5233ee4b427292cc57ad4b3a66fefb",
      "parents": [
        "d931369b74b3d6f2044f595af6f3dd074f65d9cf"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Jan 14 08:23:15 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 17 08:06:25 2010 +0100"
      },
      "message": "tracing: Drop the tr check from the graph tracing path\n\nEach time we save a function entry from the function graph\ntracer, we check if the trace array is set, which is wasteful\nbecause it is set anyway before we start the tracer. All we need\nis to ensure we have good read and write orderings. When we set\nthe trace array, we just need to guarantee it to be visible\nbefore starting tracing.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c1263453795-7496-1-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d1303dd1d6b220cab375f24fa91a5640e54e169e",
      "tree": "6b37f4fe7ef331e18c35919ae2fab0ce9da5e6b9",
      "parents": [
        "16da27a8bc7a0d050686d1b2e9efb53fab9ed226"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:40 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:14 2010 -0500"
      },
      "message": "tracing/filters: Add comment for match callbacks\n\nWe should be clear on 2 things:\n\n- the length parameter of a match callback includes\n  tailing \u0027\\0\u0027.\n\n- the string to be searched might not be NULL-terminated.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8770.7000608@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "16da27a8bc7a0d050686d1b2e9efb53fab9ed226",
      "tree": "def65eba395d9b2a2531f87dc1dd051be7845e92",
      "parents": [
        "b2af211f284eb1bef19fbb85fc8ef551bb1e7460"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:27 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:12 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_FULL filter matching for PTR_STRING\n\nMATCH_FULL matching for PTR_STRING is not working correctly:\n\n  # echo \u0027func \u003d\u003d vt\u0027 \u003e events/bkl/lock_kernel/filter\n  # echo 1 \u003e events/bkl/lock_kernel/enable\n  ...\n  # cat trace\n   Xorg-1484  [000]  1973.392586: lock_kernel: ... func\u003dvt_ioctl()\n    gpm-1402  [001]  1974.027740: lock_kernel: ... func\u003dvt_ioctl()\n\nWe should pass to regex.match(..., len) the length (including \u0027\\0\u0027)\nof the source string instead of the length of the pattern string.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8763.5070707@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b2af211f284eb1bef19fbb85fc8ef551bb1e7460",
      "tree": "251b3848de7478ad9123c92fc7c95a464bd84f78",
      "parents": [
        "d5f1fb53353edc38da326445267c1df0c9676df2"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:11 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:11 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_MIDDLE_ONLY filter matching\n\nThe @str might not be NULL-terminated if it\u0027s of type\nDYN_STRING or STATIC_STRING, so we should use strnstr()\ninstead of strstr().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8753.2000102@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a3291c14ecf0a995e30d993b7f2cae031de98727",
      "tree": "46b0ed65d437fdffba57866af1ce51d0d15a7673",
      "parents": [
        "285caad415f459f336247932b4db95a571357a02"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:41 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:07 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_END_ONLY filter matching\n\nFor \u0027*foo\u0027 pattern, we should allow any string ending with\n\u0027foo\u0027, but event filtering incorrectly disallows strings\nlike bar_foo_foo:\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8735.6070604@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "285caad415f459f336247932b4db95a571357a02",
      "tree": "b4372c5336dee9919f26c61a4808ef08993a43a6",
      "parents": [
        "751e9983ee276cb150e8812b1d995f6035a63878"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:21 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:05 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_FRONT_ONLY filter matching\n\nMATCH_FRONT_ONLY actually is a full matching:\n\n  # ./perf record -R -f -a -e lock:lock_acquire \\\n\t--filter \u0027name ~rcu_*\u0027 sleep 1\n  # ./perf trace\n  (no output)\n\nWe should pass the length of the pattern string to strncmp().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8721.5090301@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "751e9983ee276cb150e8812b1d995f6035a63878",
      "tree": "7f9abfa2ea11bcc2ccfa9922af17811d5020fa69",
      "parents": [
        "b82a4045f7962483a78a874343dc6e31b79c96c1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:02 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:03 2010 -0500"
      },
      "message": "ftrace: Fix MATCH_END_ONLY function filter\n\nFor \u0027*foo\u0027 pattern, we should allow any string ending with\n\u0027foo\u0027, but ftrace filter incorrectly disallows strings\nlike bar_foo_foo:\n\n  # echo \u0027*io\u0027 \u003e set_ftrace_filter\n  # cat set_ftrace_filter | grep \u0027req_bio_endio\u0027\n  # cat available_filter_functions | grep \u0027req_bio_endio\u0027\n  req_bio_endio\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E870E.6060607@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "14640106f243a3b29944d7198569090fa6546f2d",
      "tree": "e5843aab34a60713f473a0e6bde6495827b9f031",
      "parents": [
        "ec3a9039601af210fca4650d229621fe5a21df0b"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Tue Jan 05 17:46:48 2010 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 13 10:09:12 2010 +0100"
      },
      "message": "tracing/kprobe: Drop function argument access syntax\n\nDrop function argument access syntax, because the function\narguments depend on not only architecture but also\ncompile-options and function API. And now, we have perf-probe\nfor finding register/memory assigned to each argument.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Mahesh Salgaonkar \u003cmahesh@linux.vnet.ibm.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Michael Neuling \u003cmikey@neuling.org\u003e\nCc: linuxppc-dev@ozlabs.org\nLKML-Reference: \u003c20100105224648.19431.52309.stgit@dhcp-100-2-132.bos.redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "61405fea92c42d072d9b8bd189689f1502a838af",
      "tree": "013ea3e7ed71f4114004d5852d40b6e89e128f76",
      "parents": [
        "9c443dfdd31eddea6cbe6ee0ca469fbcc4e1dc3b",
        "1703f2c321a8a531c393e137a82602e16c6061cb"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 13 09:58:37 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 13 10:08:50 2010 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: queue up dependent patch, update to -rc4\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0e1ff5d72a6393f2ef5dbf74f58bb55a12d63834",
      "tree": "e9a9600a14fa4d1f2b045097c9e9d7d03463f0bf",
      "parents": [
        "5ded3dc6a3c7549b36a8ac27bbd81b33756a2c29"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jan 06 20:40:44 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 20:40:44 2010 -0500"
      },
      "message": "ring-buffer: Add rb_list_head() wrapper around new reader page next field\n\nIf the very unlikely case happens where the writer moves the head by one\nbetween where the head page is read and where the new reader page\nis assigned _and_ the writer then writes and wraps the entire ring buffer\nso that the head page is back to what was originally read as the head page,\nthe page to be swapped will have a corrupted next pointer.\n\nSimple solution is to wrap the assignment of the next pointer with a\nrb_list_head().\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "5ded3dc6a3c7549b36a8ac27bbd81b33756a2c29",
      "tree": "e18c745a2b1b147a9222a615e9d0c39e8a6f7938",
      "parents": [
        "c6f7afaeeda5b3c42ea8d7b27e197d223a04675e"
      ],
      "author": {
        "name": "David Sharp",
        "email": "dhsharp@google.com",
        "time": "Wed Jan 06 17:12:07 2010 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 20:38:25 2010 -0500"
      },
      "message": "ring-buffer: Wrap a list.next reference with rb_list_head()\n\nThis reference at the end of rb_get_reader_page() was causing off-by-one\nwrites to the prev pointer of the page after the reader page when that\npage is the head page, and therefore the reader page has the RB_PAGE_HEAD\nflag in its list.next pointer. This eventually results in a GPF in a\nsubsequent call to rb_set_head_page() (usually from rb_get_reader_page())\nwhen that prev pointer is dereferenced. The dereferenced register would\ncharacteristically have an address that appears shifted left by one byte\n(eg, ffxxxxxxxxxxxxyy instead of ffffxxxxxxxxxxxx) due to being written at\nan address one byte too high.\n\nSigned-off-by: David Sharp \u003cdhsharp@google.com\u003e\nLKML-Reference: \u003c1262826727-9090-1-git-send-email-dhsharp@google.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d931369b74b3d6f2044f595af6f3dd074f65d9cf",
      "tree": "ae60bd92388f278d32f659b7ce5ff20a229e0bb1",
      "parents": [
        "dfaa9e2c5707b2c217c0121aac796e0fa3051482"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jan 06 17:27:11 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 18:09:57 2010 -0500"
      },
      "message": "tracing: Add stack dump to trace_printk if stacktrace option is set\n\nIf the ftrace stacktrace option is set, then add the stack dumps to\ntrace_printk.\n\nRequested-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "7e53bd42d14c75192b99674c40fcc359392da59d",
      "tree": "65c3638604a2c03947da5cbd7ffb3e4dfee66370",
      "parents": [
        "0fa0edaf32b9a78b9854f1da98d4511a501089b0"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Jan 06 20:08:50 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 12:51:34 2010 -0500"
      },
      "message": "tracing: Consolidate protection of reader access to the ring buffer\n\nAt the beginning, access to the ring buffer was fully serialized\nby trace_types_lock. Patch d7350c3f4569 gives more freedom to readers,\nand patch b04cc6b1f6 adds code to protect trace_pipe and cpu#/trace_pipe.\n\nBut actually it is not enough, ring buffer readers are not always\nread-only, they may consume data.\n\nThis patch makes accesses to trace, trace_pipe, trace_pipe_raw\ncpu#/trace, cpu#/trace_pipe and cpu#/trace_pipe_raw serialized.\nAnd removes tracing_reader_cpumask which is used to protect trace_pipe.\n\nDetails:\n\nRing buffer serializes readers, but it is low level protection.\nThe validity of the events (which returns by ring_buffer_peek() ..etc)\nare not protected by ring buffer.\n\nThe content of events may become garbage if we allow another process to consume\nthese events concurrently:\n  A) the page of the consumed events may become a normal page\n     (not reader page) in ring buffer, and this page will be rewritten\n     by the events producer.\n  B) The page of the consumed events may become a page for splice_read,\n     and this page will be returned to system.\n\nThis patch adds trace_access_lock() and trace_access_unlock() primitives.\n\nThese primitives allow multi process access to different cpu ring buffers\nconcurrently.\n\nThese primitives don\u0027t distinguish read-only and read-consume access.\nMulti read-only access is also serialized.\n\nAnd we don\u0027t use these primitives when we open files,\nwe only use them when we read files.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B447D52.1050602@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0fa0edaf32b9a78b9854f1da98d4511a501089b0",
      "tree": "2226710ff7f455cfc9ed9e29252337f70cf3ab33",
      "parents": [
        "5a65e956220efc2421e21ee56d6153fd5c533a95"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:57 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 12:08:46 2010 -0500"
      },
      "message": "tracing: Remove show_format and related macros from TRACE_EVENT\n\nThe previous patches added the use of print_fmt string and changes\nthe trace_define_field() function to also create the fields and\nformat output for the event format files.\n\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n5857201\t1355780\t9336808\t16549789\t fc879d\tvmlinux\n5884589\t1351684\t9337896\t16574169\t fce6d9\tvmlinux-orig\n\nThe above shows the size of the vmlinux after this patch set\ncompared to the vmlinux-orig which is before the patch set.\n\nThis saves us 27k on text, 1k on bss and adds just 4k of data.\n\nThe total savings of 24k in size.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D4D.40604@cn.fujitsu.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "5a65e956220efc2421e21ee56d6153fd5c533a95",
      "tree": "66cb79949a14f79ec5ece050c12a8cc587a0b2e2",
      "parents": [
        "c7ef3a9004201bca90626db246a19dadd2c29c9b"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:53 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 12:08:20 2010 -0500"
      },
      "message": "tracing: Use defined fields and print_fmt to print formats\n\nThe calls ftrace_format_##call() and ftrace_define_fields_##call()\nare almost duplicate in functionality. With the addition of the\nprint_fmt in previous patches, these two functions can be merged\ninto one.\n\nThe trace_define_field() defines the fields and links them into\nthe struct ftrace_event_call. The previous patches introduced\nthe print_fmt field and this can now be used with the trace_define_field()\nto create the event format file fields and print_fmt field.\n\nThe struct ftrace_event_call-\u003efields are used to print the fields\nThe struct ftrace_event_call-\u003eprint_fmt is used to print\nthe \"print fmt: XXXXXXXXXXX\" line.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D49.5000006@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c7ef3a9004201bca90626db246a19dadd2c29c9b",
      "tree": "ae6ffbf65a5e75f4cfcded814ea28eb1d35b025c",
      "parents": [
        "a342a0280b981c130e32dbb94dbd3a57959c4d04"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 28 21:13:59 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 12:02:32 2010 -0500"
      },
      "message": "tracing: Have syscall tracing call its own init function\n\nIn the clean up of having all events call one specific function,\nthe syscall event init was changed to call this helper function.\n\nWith the new print_fmt updates, the syscalls need to do special\ninitializations. This patch converts the syscall events to call\nits own init function again.\n\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a342a0280b981c130e32dbb94dbd3a57959c4d04",
      "tree": "7ef72d962cf1f0fd5b124b46995edb9b56e8c1f0",
      "parents": [
        "50307a45f8515f6244e3b08e6b19824b9fbfe293"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:49 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 12:01:35 2010 -0500"
      },
      "message": "tracing/kprobes: Init print_fmt for kprobe events\n\nThis is part of a patch set that removes the show_format method\nin the ftrace event macros.\n\nAdd the print_fmt initialization to the kprobe events.\nThe print_fmt is still not used, but will be in the follow up\npatches.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D45.3080100@cn.fujitsu.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "50307a45f8515f6244e3b08e6b19824b9fbfe293",
      "tree": "3561b9824617845910c09a4f7ef5d29ea6159ddf",
      "parents": [
        "509e760cd91c831983097ae174cb6c0b8c6c8e6b"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:45 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 11:58:32 2010 -0500"
      },
      "message": "tracing/syscalls: Init print_fmt for syscall events\n\nThis is part of a patch set that removes the show_format method\nin the ftrace event macros.\n\nAdd the print_fmt initialization to the syscall events.\nThe print_fmt is still not used, but will be in the follow up\npatches.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D41.609@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "509e760cd91c831983097ae174cb6c0b8c6c8e6b",
      "tree": "985da24e69e80b81713c2901c94b127c961cd426",
      "parents": [
        "809826a389040e0ad9d646b587bccc0e34691afd"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:42 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 11:41:54 2010 -0500"
      },
      "message": "tracing: Add print_fmt field\n\nThis is part of a patch set that removes the show_format method\nin the ftrace event macros.\n\nThe print_fmt field is added to hold the string that shows\nthe print_fmt in the event format files. This patch only adds\nthe field but it is currently not used. Later patches will use\nthis field to enable us to remove the show_format field\nand function.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D3E.2000704@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "809826a389040e0ad9d646b587bccc0e34691afd",
      "tree": "6407733ce514f3a51e1c3fae153f46aa51c271a7",
      "parents": [
        "74d2e4f8d79ae0c4b6ec027958d5b18058662eea"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:34 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 11:30:02 2010 -0500"
      },
      "message": "tracing: Have __dynamic_array() define a field\n\nThis is part of a patch set that removes the show_format method\nin the ftrace event macros.\n\nThis patch set requires that all fields are added to the\nftrace_event_call-\u003efields. This patch changes __dynamic_array()\nto call trace_define_field() to include fields that use __dynamic_array().\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D36.8090100@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b21c07040304b8716e38a4a0e4ab60f386357e61",
      "tree": "eb2cf03ec35b9a5090c0adaab659a766e02c3b10",
      "parents": [
        "4e58fb7305449cf8c5a86dd97dfc1812221be77c",
        "fb7ae981cb9fe8665b9da97e8734745e030c151d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:52:01 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:52:01 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Fix sign fields in ftrace_define_fields_##call()\n  tracing/syscalls: Fix typo in SYSCALL_DEFINE0\n  tracing/kprobe: Show sign of fields in trace_kprobe format files\n  ksym_tracer: Remove trace_stat\n  ksym_tracer: Fix race when incrementing count\n  ksym_tracer: Fix to allow writing newline to ksym_trace_filter\n  ksym_tracer: Fix to make the tracer work\n  tracing: Kconfig spelling fixes and cleanups\n  tracing: Fix setting tracer specific options\n  Documentation: Update ftrace-design.txt\n  Documentation: Update tracepoint-analysis.txt\n  Documentation: Update mmiotrace.txt\n"
    },
    {
      "commit": "fb7ae981cb9fe8665b9da97e8734745e030c151d",
      "tree": "7b127c1bd4c0457c30f57d0f9c6ceacf69ab88c2",
      "parents": [
        "e96dc9674cb597de4fee757ed005c8465072d13f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:38 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 30 10:27:06 2009 -0500"
      },
      "message": "tracing: Fix sign fields in ftrace_define_fields_##call()\n\nAdd is_signed_type() call to trace_define_field() in ftrace macros.\n\nThe code previously just passed in 0 (false), disregarding whether\nor not the field was actually a signed type.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D3A.6020007@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "79b408210885b9f7f0b067b07a09d68f4da3a700",
      "tree": "b1297cf9ce84442abe48e67debf67214bd00ac9b",
      "parents": [
        "53ab668064edaeef99c0ee22799483d45f4c81f6"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:19 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 30 10:27:03 2009 -0500"
      },
      "message": "tracing/kprobe: Show sign of fields in trace_kprobe format files\n\nThe format files of trace_kprobe do not show the sign of the fields.\nThe other format files show the field signed type of the fields and\nthis patch makes the trace_kprobe formats consistent with the others.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D27.5040009@cn.fujitsu.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "53ab668064edaeef99c0ee22799483d45f4c81f6",
      "tree": "1aa92f9e5bbddb61cbc3d5683180dc64abe341fc",
      "parents": [
        "e6d9491bf8ba6728cc86aeabbc688d20ec0563b5"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:24:03 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:50 2009 +0100"
      },
      "message": "ksym_tracer: Remove trace_stat\n\ntrace_stat is problematic. Don\u0027t use it, use seqfile instead.\n\nThis fixes a race that reading the stat file is not protected by\nany lock, which can lead to use after free.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF203.40200@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e6d9491bf8ba6728cc86aeabbc688d20ec0563b5",
      "tree": "1ca34f9f0608f688069da43688b2a9b8fa163644",
      "parents": [
        "3d13ec2efdb5843ad91e57b60d50b44d922cf063"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:23:40 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:49 2009 +0100"
      },
      "message": "ksym_tracer: Fix race when incrementing count\n\nWe are under rcu read section but not holding the write lock, so\ncount++ is not atomic. Use atomic64_t instead.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF1EC.9010608@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3d13ec2efdb5843ad91e57b60d50b44d922cf063",
      "tree": "35eb9a0ce4571bded972c28bc00526d9f51819dd",
      "parents": [
        "88f7a890d74137ab0d126a5d65679cd620f1a289"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:23:19 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:49 2009 +0100"
      },
      "message": "ksym_tracer: Fix to allow writing newline to ksym_trace_filter\n\nIt used to work, but now doesn\u0027t:\n\n # echo \u003e ksym_filter\n bash: echo: write error: Invalid argument\n\nIt\u0027s caused by d954fbf0ff6b5fdfb32350e85a2f15d3db976506\n(\"tracing: Fix wrong usage of strstrip in trace_ksyms\").\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF1D7.5040400@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "88f7a890d74137ab0d126a5d65679cd620f1a289",
      "tree": "93f6a908ae6eca32dd7b06be5a0cfb856c7877ac",
      "parents": [
        "40892367bc893f3abf6f5ca8ac2ed1c98ba26a77"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:22:22 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:47 2009 +0100"
      },
      "message": "ksym_tracer: Fix to make the tracer work\n\nksym tracer doesn\u0027t work:\n\n # echo tasklist_lock:rw- \u003e ksym_trace_filter\n -bash: echo: write error: No such device\n\nIt\u0027s because we pass to perf_event_create_kernel_counter()\na cpu number which is not present.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF19E.1010201@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "40892367bc893f3abf6f5ca8ac2ed1c98ba26a77",
      "tree": "f73c4b14b52247911a89fbcce0bcf9bd2b227913",
      "parents": [
        "c757bea93bea4b77ebd181cc6dca60c15e3b1a2c"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Mon Dec 21 12:01:17 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 10:37:54 2009 +0100"
      },
      "message": "tracing: Kconfig spelling fixes and cleanups\n\nFix filename reference (ftrace-implementation.txt -\u003e\nftrace-design.txt).\n\nFix spelling, punctuation, grammar.\n\nFix help text indentation and line lengths to reduce need for\nhorizontal scrolling or larger window sizes.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20091221120117.3fb49cdc.randy.dunlap@oracle.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "07b139c8c81b97bbe55c68daf0cbeca8b1c609ca",
      "tree": "ea410cac398bef3cc6cc7e2d2dc3527b50aac6d1",
      "parents": [
        "659d8cfbb225f1fa5a4f8671a847ef3ab5a89660"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Dec 21 14:27:35 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 10:33:06 2009 +0100"
      },
      "message": "perf events: Remove CONFIG_EVENT_PROFILE\n\nQuoted from Ingo:\n\n| This reminds me - i think we should eliminate CONFIG_EVENT_PROFILE -\n| it\u0027s an unnecessary Kconfig complication. If both PERF_EVENTS and\n| EVENT_TRACING is enabled we should expose generic tracepoints.\n|\n| Nor is it limited to event \u0027profiling\u0027, so it has become a misnomer as\n| well.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c4B2F1557.2050705@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c757bea93bea4b77ebd181cc6dca60c15e3b1a2c",
      "tree": "f1a4ddfea72acf13864f543648bf3f79924cbdc3",
      "parents": [
        "7e25f44cbf8d95a9748fdfd19c06145f19fd10e3"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 21 22:35:16 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Dec 21 22:35:16 2009 -0500"
      },
      "message": "tracing: Fix setting tracer specific options\n\nThe function __set_tracer_option() takes as its last parameter a\n\"neg\" value. If set it should negate the value of the option.\n\nThe trace_options_write() passed the value written to the file\nwhich is what the new value needs to be set as. But since this\nis not the negative, it never sets the value.\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "eca9dfcd0029c8a84b1094bb84a2fb53e4addf6c",
      "tree": "2e5982fef1e737ce5f8936981c7dc7fb50fc655c",
      "parents": [
        "3981e152864fcc1dbbb564e1f4c0ae11a09639d2",
        "b5b60fda1e462a849bc37dfbace2888191be82cc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:48:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:48:42 2009 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf session: Make events_stats u64 to avoid overflow on 32-bit arches\n  hw-breakpoints: Fix hardware breakpoints -\u003e perf events dependency\n  perf events: Dont report side-band events on each cpu for per-task-per-cpu events\n  perf events, x86/stacktrace: Fix performance/softlockup by providing a special frame pointer-only stack walker\n  perf events, x86/stacktrace: Make stack walking optional\n  perf events: Remove unused perf_counter.h header file\n  perf probe: Check new event name\n  kprobe-tracer: Check new event/group name\n  perf probe: Check whether debugfs path is correct\n  perf probe: Fix libdwarf include path for Debian\n"
    },
    {
      "commit": "5a865c0606eb44d5d12cabb429751c83712183de",
      "tree": "726d6eaf3b20f30900304bd0cbb6339b423a071f",
      "parents": [
        "331d9d5958277de27e6ce42247e1cbec54fd1c7e",
        "46e75f66677f5094bb51e91f9473128c4e907c7d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 07:23:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 07:23:42 2009 -0800"
      },
      "message": "Merge branch \u0027for-33\u0027 of git://repo.or.cz/linux-kbuild\n\n* \u0027for-33\u0027 of git://repo.or.cz/linux-kbuild: (29 commits)\n  net: fix for utsrelease.h moving to generated\n  gen_init_cpio: fixed fwrite warning\n  kbuild: fix make clean after mismerge\n  kbuild: generate modules.builtin\n  genksyms: properly consider  EXPORT_UNUSED_SYMBOL{,_GPL}()\n  score: add asm/asm-offsets.h wrapper\n  unifdef: update to upstream revision 1.190\n  kbuild: specify absolute paths for cscope\n  kbuild: create include/generated in silentoldconfig\n  scripts/package: deb-pkg: use fakeroot if available\n  scripts/package: add KBUILD_PKG_ROOTCMD variable\n  scripts/package: tar-pkg: use tar --owner\u003droot\n  Kbuild: clean up marker\n  net: add net_tstamp.h to headers_install\n  kbuild: move utsrelease.h to include/generated\n  kbuild: move autoconf.h to include/generated\n  drop explicit include of autoconf.h\n  kbuild: move compile.h to include/generated\n  kbuild: drop include/asm\n  kbuild: do not check for include/asm-$ARCH\n  ...\n\nFixed non-conflicting clean merge of modpost.c as per comments from\nStephen Rothwell (modpost.c had grown an include of linux/autoconf.h\nthat needed to be changed to generated/autoconf.h)\n"
    },
    {
      "commit": "61c1917f47f73c968e92d04d15370b1dc3ec4592",
      "tree": "a20445bcaf484d270bd6cb8de5969702110af687",
      "parents": [
        "5b74ed4729ad2b2017453add68104a83206caefb"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Dec 17 05:40:33 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 09:56:19 2009 +0100"
      },
      "message": "perf events, x86/stacktrace: Make stack walking optional\n\nThe current print_context_stack helper that does the stack\nwalking job is good for usual stacktraces as it walks through\nall the stack and reports even addresses that look unreliable,\nwhich is nice when we don\u0027t have frame pointers for example.\n\nBut we have users like perf that only require reliable\nstacktraces, and those may want a more adapted stack walker, so\nlets make this function a callback in stacktrace_ops that users\ncan tune for their needs.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1261024834-5336-1-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6f3cf440470650b3841d325acacd0c5ea9504c68",
      "tree": "a00395723fb479fc6485d1b6b36b97808d0159e6",
      "parents": [
        "96c96612e952f63cc0055db9df7d8b5b1ada02be"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Wed Dec 16 17:24:08 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 09:42:44 2009 +0100"
      },
      "message": "kprobe-tracer: Check new event/group name\n\nCheck new event/group name is same syntax as a C symbol. In other\nwords, checking the name is as like as other tracepoint events.\n\nThis can prevent user to create an event with useless name (e.g.\nfoo|bar, foo*bar).\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nLKML-Reference: \u003c20091216222408.14459.68790.stgit@dhcp-100-2-132.bos.redhat.com\u003e\n[ v2: minor cleanups ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "da184a8064efe2a78d8542877970f7c6bb62775a",
      "tree": "d10193bb583f60333e243fe46386cab31f591e0c",
      "parents": [
        "525995d77ca08dfc2ba6f8e606f93694271dbd66",
        "e36c54582c6f14adc9e10473e2aec2cc4f0acc03"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:02:25 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:02:25 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Fix return of trace_dump_stack()\n  ksym_tracer: Fix bad cast\n  tracing/power: Remove two exports\n  tracing: Change event-\u003eprofile_count to be int type\n  tracing: Simplify trace_option_write()\n  tracing: Remove useless trace option\n  tracing: Use seq file for trace_clock\n  tracing: Use seq file for trace_options\n  function-graph: Allow writing the same val to set_graph_function\n  ftrace: Call trace_parser_clear() properly\n  ftrace: Return EINVAL when writing invalid val to set_ftrace_filter\n  tracing: Move a printk out of ftrace_raw_reg_event_foo()\n  tracing: Pull up calls to trace_define_common_fields()\n  tracing: Extract duplicate ftrace_raw_init_event_foo()\n  ftrace.h: Use common pr_info fmt string\n  tracing: Add stack trace to irqsoff tracer\n  tracing: Add trace_dump_stack()\n  ring-buffer: Move resize integrity check under reader lock\n  ring-buffer: Use sync sched protection on ring buffer resizing\n  tracing: Fix wrong usage of strstrip in trace_ksyms\n"
    },
    {
      "commit": "28dfef8febe48f59cf1e7596e1992a6a1893ca24",
      "tree": "eb2df6dd75e72db066062950f91c9ab2e8215280",
      "parents": [
        "5116fa2b3a0a3ec625a10445ae45667f094c125b"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Dec 15 16:46:48 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:05 2009 -0800"
      },
      "message": "const: constify remaining pipe_buf_operations\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e36c54582c6f14adc9e10473e2aec2cc4f0acc03",
      "tree": "057c54ccfd431152486fd781070713ad0e34bb01",
      "parents": [
        "0087aabd6a3744c28114240776918f5d15e46b98"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 14 15:58:33 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 15 08:36:11 2009 +0100"
      },
      "message": "tracing: Fix return of trace_dump_stack()\n\nThe trace_dump_stack() returned a value for a void function.\n\nAlso, added the missing stub for trace_dump_stack() when tracing is\nnot configured.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLKML-Reference: \u003c20091214162713.GA31060@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0199c4e68d1f02894bdefe4b5d9e9ee4aedd8d62",
      "tree": "e371d17bd73d64332349debbf45962ec67e7269d",
      "parents": [
        "edc35bd72e2079b25f99c5da7d7a65dbbffc4a26"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 02 20:01:25 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Convert __raw_spin* functions to arch_spin*\n\nName space cleanup. No functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: linux-arch@vger.kernel.org\n"
    },
    {
      "commit": "edc35bd72e2079b25f99c5da7d7a65dbbffc4a26",
      "tree": "a4fac9d24d243d3296fc36a2371db2a56d363e1a",
      "parents": [
        "445c89514be242b1b0080056d50bdc1b72adeb5c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 03 12:38:57 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Rename __RAW_SPIN_LOCK_UNLOCKED to __ARCH_SPIN_LOCK_UNLOCKED\n\nFurther name space cleanup. No functional change\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: linux-arch@vger.kernel.org\n"
    },
    {
      "commit": "445c89514be242b1b0080056d50bdc1b72adeb5c",
      "tree": "96ed062794ad0fb6a649713c83f009eea382e8b2",
      "parents": [
        "6b6b4792f89346e47437682c7ba3438e6681c0f9"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 02 19:49:50 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Convert raw_spinlock to arch_spinlock\n\nThe raw_spin* namespace was taken by lockdep for the architecture\nspecific implementations. raw_spin_* would be the ideal name space for\nthe spinlocks which are not converted to sleeping locks in preempt-rt.\n\nLinus suggested to convert the raw_ to arch_ locks and cleanup the\nname space instead of using an artifical name like core_spin,\natomic_spin or whatever\n\nNo functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: linux-arch@vger.kernel.org\n\n"
    },
    {
      "commit": "d0316554d3586cbea60592a41391b5def2553d6f",
      "tree": "5e7418f0bacbc68cec5dfd1541e03eb56870aa02",
      "parents": [
        "fb0bbb92d42d5bd0ab224605444efdfed06d6934",
        "51e99be00ce2713cbb841cedc997cafa6e26c7f4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 14 09:58:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 14 09:58:24 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (34 commits)\n  m68k: rename global variable vmalloc_end to m68k_vmalloc_end\n  percpu: add missing per_cpu_ptr_to_phys() definition for UP\n  percpu: Fix kdump failure if booted with percpu_alloc\u003dpage\n  percpu: make misc percpu symbols unique\n  percpu: make percpu symbols in ia64 unique\n  percpu: make percpu symbols in powerpc unique\n  percpu: make percpu symbols in x86 unique\n  percpu: make percpu symbols in xen unique\n  percpu: make percpu symbols in cpufreq unique\n  percpu: make percpu symbols in oprofile unique\n  percpu: make percpu symbols in tracer unique\n  percpu: make percpu symbols under kernel/ and mm/ unique\n  percpu: remove some sparse warnings\n  percpu: make alloc_percpu() handle array types\n  vmalloc: fix use of non-existent percpu variable in put_cpu_var()\n  this_cpu: Use this_cpu_xx in trace_functions_graph.c\n  this_cpu: Use this_cpu_xx for ftrace\n  this_cpu: Use this_cpu_xx in nmi handling\n  this_cpu: Use this_cpu operations in RCU\n  this_cpu: Use this_cpu ops for VM statistics\n  ...\n\nFix up trivial (famous last words) global per-cpu naming conflicts in\n\tarch/x86/kvm/svm.c\n\tmm/slab.c\n"
    },
    {
      "commit": "0087aabd6a3744c28114240776918f5d15e46b98",
      "tree": "8bf3ba7b3395490441722360d2872480f64cd694",
      "parents": [
        "cc0104e877fff32865a67b256d3a9ce52ff15790",
        "cc51a0fca66658ea710db566ba17e80e3f7d4957"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 17:12:37 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 17:12:37 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/urgent\n"
    },
    {
      "commit": "cc0104e877fff32865a67b256d3a9ce52ff15790",
      "tree": "18779442274e81607822ecb0905c55ac4ce6a163",
      "parents": [
        "16620e0f1990fa6d896a639449c4b3d678458464",
        "f40542532e96dda5506eb76badea322f2ae4731c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 09:16:49 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 09:16:49 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/urgent\n\nConflicts:\n\tkernel/trace/trace_kprobe.c\n\nMerge reason: resolve the conflict.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "16620e0f1990fa6d896a639449c4b3d678458464",
      "tree": "fd8be22bfc910b858277c8b12e9621eb47e6ba08",
      "parents": [
        "472bbe02c92a7a8299d7b16946277d98bb8f4bb7"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:18:16 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:46:54 2009 +0100"
      },
      "message": "ksym_tracer: Fix bad cast\n\nFix this warning:\n\nkernel/trace/trace_ksym.c: In function \u0027ksym_trace_filter_read\u0027:\nkernel/trace/trace_ksym.c:239: warning: cast to pointer from integer of different size\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \"K.Prasad\" \u003cprasad@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c4B1DC578.9020909@cn.fujitsu.com\u003e\n[remove the strstrip fix as tglx already fixed that]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "472bbe02c92a7a8299d7b16946277d98bb8f4bb7",
      "tree": "3293350de0a24b03a503560e09494e88327d9c0d",
      "parents": [
        "e00bf2ec60605eb95687b7a0c3b83c87c48541dc"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:17:51 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:28 2009 +0100"
      },
      "message": "tracing/power: Remove two exports\n\ntrace_power_start and trace_power_end are used in\narch/x86/kernel/power.c, and this file can\u0027t be compiled\nas a module, so these two tracepoints don\u0027t need to be\nexported.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B1DC55F.7060305@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "e00bf2ec60605eb95687b7a0c3b83c87c48541dc",
      "tree": "e0b63423355286bc14cee438b39e9ba681f7327a",
      "parents": [
        "8d18eaaff5acaa58369be342c86e607643ce10c7"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:17:29 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:28 2009 +0100"
      },
      "message": "tracing: Change event-\u003eprofile_count to be int type\n\nLike total_profile_count, struct ftrace_event_call::profile_count\nis protected by event_mutex, so it doesn\u0027t need to be atomic_t.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c4B1DC549.5010705@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "8d18eaaff5acaa58369be342c86e607643ce10c7",
      "tree": "ff5d275165cd224468a9930f94ac80a53bfc55c7",
      "parents": [
        "2cbafd68b826f8e0471875cf33cdfb8a1478aef1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:17:06 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:28 2009 +0100"
      },
      "message": "tracing: Simplify trace_option_write()\n\n- remove duplicate code inside trace_options_write()\n- extract duplicate code in trace_options_write() and set_tracer_option()\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B1DC532.9010802@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "2cbafd68b826f8e0471875cf33cdfb8a1478aef1",
      "tree": "27bf54c8f0803fc3ed854140eee01d7ac5104c6a",
      "parents": [
        "13f16d209161c95e92aef40e350cc6cf56ac440b"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:16:26 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:27 2009 +0100"
      },
      "message": "tracing: Remove useless trace option\n\nSince commit 4d9493c90f8e6e1b164aede3814010a290161abb\n(\"ftrace: remove add-hoc code\"), option \"sched-tree\"\nhas become useless.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B1DC50A.7040402@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "13f16d209161c95e92aef40e350cc6cf56ac440b",
      "tree": "a8e3bc78c7b07f5dab8776d91642d29ea1783fb8",
      "parents": [
        "fdb372ed4cadbfe9dbba0e932a77d0523682e690"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:16:11 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:27 2009 +0100"
      },
      "message": "tracing: Use seq file for trace_clock\n\nThe buffer for the output is as small as 64 bytes, so it\u0027ll\noverflow if we add more clock type. Use seq file instead.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B1DC4FB.5030407@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "fdb372ed4cadbfe9dbba0e932a77d0523682e690",
      "tree": "fe58239da27070baac9c0dc3c692f7535cfcfa15",
      "parents": [
        "91baf6285be7282cfa487de92f836c50749dffb9"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:15:59 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:27 2009 +0100"
      },
      "message": "tracing: Use seq file for trace_options\n\nCode simplification for reading trace_options.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-reference: \u003c4B1DC4EF.3090106@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "91baf6285be7282cfa487de92f836c50749dffb9",
      "tree": "766544ebcc24fecf177eba5bd8be475cf3516eef",
      "parents": [
        "313254a9400d388b46150c0f355e216418a2f598"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:15:45 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:26 2009 +0100"
      },
      "message": "function-graph: Allow writing the same val to set_graph_function\n\n# echo \u0027do_open\u0027 \u003e set_graph_function\n # echo \u0027do_open\u0027 \u003e\u003e set_graph_function\n bash: echo: write error: Invalid argument\n\nMake it valid to write the same value to set_graph_function,\nwhich is consistent with set_ftrace_filter interface.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-reference: \u003c4B1DC4E1.1060303@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "313254a9400d388b46150c0f355e216418a2f598",
      "tree": "190c360ad60b27763e2f95dc5cf8fa9068d3d71e",
      "parents": [
        "311d16da575f53c3367099579736c1d233efe0dc"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:15:30 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:26 2009 +0100"
      },
      "message": "ftrace: Call trace_parser_clear() properly\n\nI found a weird behavior:\n\n  # echo \u0027fuse:*\u0027 \u003e set_ftrace_filter\n  bash: echo: write error: Invalid argument\n  # cat set_ftrace_filter\n  fuse_dev_fasync\n  fuse_dev_poll\n  fuse_copy_do\n\nWe should call trace_parser_clear() no matter ftrace_process_regex()\nreturns 0 or -errno, otherwise we will actually take the unaccepted\nrecords from ftrace_regex_release().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B1DC4D2.3000406@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "311d16da575f53c3367099579736c1d233efe0dc",
      "tree": "6fea069fc00f50afac428021989d037f0bb0162f",
      "parents": [
        "3b8e4273814a7f9e9a74ece517d9206fea919aaa"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:15:11 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:25 2009 +0100"
      },
      "message": "ftrace: Return EINVAL when writing invalid val to set_ftrace_filter\n\nCurrently it doesn\u0027t warn user on invald value:\n\n # echo nonexist_symbol \u003e set_ftrace_filter\nor:\n # echo \u0027nonexist_symbol:mod:fuse\u0027 \u003e set_ftrace_filter\n\nBetter make it return failure.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B1DC4BF.2070003@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "3b8e4273814a7f9e9a74ece517d9206fea919aaa",
      "tree": "aa7960d90fe8cd4b04537bf9ea84ac73cb3b69ad",
      "parents": [
        "614a71a26ba3d97e9fa85649db69a682b78e407d"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:14:52 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:25 2009 +0100"
      },
      "message": "tracing: Move a printk out of ftrace_raw_reg_event_foo()\n\nMove the printk from each ftrace_raw_reg_event_foo() to\nits caller ftrace_event_enable_disable(). This avoids each\nregfunc trace event callbacks to handle a same error report\nthat can be carried from the caller.\n\nSee how much space this saves:\n\n   text    data     bss     dec     hex filename\n5345151 1961864 7103260 14410275         dbe223 vmlinux.o.old\n5331487 1961864 7103260 14396611         dbacc3 vmlinux.o\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nLKML-Reference: \u003c4B1DC4AC.802@cn.fujitsu.com\u003e\n[start cmdline record before calling regfunc to avoid lost\nwindow of pid to comm resolution]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "614a71a26ba3d97e9fa85649db69a682b78e407d",
      "tree": "f0e52c9fa62f4e4230bc2ead2449caae3b30ff87",
      "parents": [
        "87d9b4e1c52867a45331a9a5495f6448e0c68b23"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:14:36 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:34:23 2009 +0100"
      },
      "message": "tracing: Pull up calls to trace_define_common_fields()\n\nCall trace_define_common_fields() in event_create_dir() only.\nThis avoids trace events to handle it from their define_fields\ncallbacks and shrinks the kernel code size:\n\n   text    data     bss     dec     hex filename\n5346802 1961864 7103260 14411926         dbe896 vmlinux.o.old\n5345151 1961864 7103260 14410275         dbe223 vmlinux.o\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nLKML-Reference: \u003c4B1DC49C.8000107@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "87d9b4e1c52867a45331a9a5495f6448e0c68b23",
      "tree": "dcac60fbfa60eec687d723fad780165cec5fd9b1",
      "parents": [
        "4819568f23a8bef0ca99b740ca60fe2450ab0aac"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:14:20 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:34:23 2009 +0100"
      },
      "message": "tracing: Extract duplicate ftrace_raw_init_event_foo()\n\nUse a generic trace_event_raw_init() function for all event\u0027s raw_init\ncallbacks (but kprobes) instead of defining the same version for each\nof these.\nThis shrinks the kernel code:\n\n   text    data     bss     dec     hex filename\n5355293 1961928 7103260 14420481         dc0a01 vmlinux.o.old\n5346802 1961864 7103260 14411926         dbe896 vmlinux.o\n\nraw_init can\u0027t be removed, because ftrace events and kprobe events\nuse different raw_init callbacks. Though it\u0027s possible to totally\nremove raw_init, I choose to leave it as it is for now.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nLKML-Reference: \u003c4B1DC48C.7080603@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "273b281fa22c293963ee3e6eec418f5dda2dbc83",
      "tree": "1503005f5b106c0293a5eba1fb9ff90a9c91e4c9",
      "parents": [
        "264a26838056fc2d759f58bec2e720e01fcb1bdb"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Oct 18 00:52:28 2009 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Sat Dec 12 13:08:15 2009 +0100"
      },
      "message": "kbuild: move utsrelease.h to include/generated\n\nFix up all users of utsrelease.h\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "df7147b3c37cb203f968119f3b6a1cd648c535a1",
      "tree": "f5e0026cc8b1f711beef03338b087ff66cae92c4",
      "parents": [
        "6f696eb17be741668810fe1f798135c7cf6733e2",
        "788d70dce0184eccc249ac6f05aa38b385b7497c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:47:44 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:47:44 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Remove comparing of NULL to va_list in trace_array_vprintk()\n  tracing: Fix function graph trace_pipe to properly display failed entries\n  tracing: Add full state to trace_seq\n  tracing: Buffer the output of seq_file in case of filled buffer\n  tracing: Only call pipe_close if pipe_close is defined\n  tracing: Add pipe_close interface\n"
    },
    {
      "commit": "6f696eb17be741668810fe1f798135c7cf6733e2",
      "tree": "f9bcfe5831dfcaaad50ca68d7f04d80d8236fa56",
      "parents": [
        "c4e194e3b71ff4fed01d727c32ee1071921d28a3",
        "125580380f418000b1a06d9a54700f1191b6e561"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:47:30 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:47:30 2009 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (57 commits)\n  x86, perf events: Check if we have APIC enabled\n  perf_event: Fix variable initialization in other codepaths\n  perf kmem: Fix unused argument build warning\n  perf symbols: perf_header__read_build_ids() offset\u0027n\u0027size should be u64\n  perf symbols: dsos__read_build_ids() should read both user and kernel buildids\n  perf tools: Align long options which have no short forms\n  perf kmem: Show usage if no option is specified\n  sched: Mark sched_clock() as notrace\n  perf sched: Add max delay time snapshot\n  perf tools: Correct size given to memset\n  perf_event: Fix perf_swevent_hrtimer() variable initialization\n  perf sched: Fix for getting task\u0027s execution time\n  tracing/kprobes: Fix field creation\u0027s bad error handling\n  perf_event: Cleanup for cpu_clock_perf_event_update()\n  perf_event: Allocate children\u0027s perf_event_ctxp at the right time\n  perf_event: Clean up __perf_event_init_context()\n  hw-breakpoints: Modify breakpoints without unregistering them\n  perf probe: Update perf-probe document\n  perf probe: Support --del option\n  trace-kprobe: Support delete probe syntax\n  ...\n"
    },
    {
      "commit": "cc51a0fca66658ea710db566ba17e80e3f7d4957",
      "tree": "4ab424a7f5f873ba603d090ab36b15f5aaf874c3",
      "parents": [
        "03889384cee7a198a79447c1ea6aca2c8e54d155"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Dec 11 11:54:51 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Dec 11 13:19:51 2009 -0500"
      },
      "message": "tracing: Add stack trace to irqsoff tracer\n\nThe irqsoff and friends tracers help in finding causes of latency in the\nkernel. The also work with the function tracer to show what was happening\nwhen interrupts or preemption are disabled. But the function tracer has\na bit of an overhead and can cause exagerated readings.\n\nCurrently, when tracing with /proc/sys/kernel/ftrace_enabled \u003d 0, where the\nfunction tracer is disabled, the information that is provided can end up\nbeing useless. For example, a 2 and a half millisecond latency only showed:\n\n # tracer: preemptirqsoff\n #\n # preemptirqsoff latency trace v1.1.5 on 2.6.32\n # --------------------------------------------------------------------\n # latency: 2463 us, #4/4, CPU#2 | (M:preempt VP:0, KP:0, SP:0 HP:0 #P:4)\n #    -----------------\n #    | task: -4242 (uid:0 nice:0 policy:0 rt_prio:0)\n #    -----------------\n #  \u003d\u003e started at: _spin_lock_irqsave\n #  \u003d\u003e ended at:   remove_wait_queue\n #\n #\n #                  _------\u003d\u003e CPU#\n #                 / _-----\u003d\u003e irqs-off\n #                | / _----\u003d\u003e need-resched\n #                || / _---\u003d\u003e hardirq/softirq\n #                ||| / _--\u003d\u003e preempt-depth\n #                |||| /_--\u003d\u003e lock-depth\n #                |||||/     delay\n #  cmd     pid   |||||| time  |   caller\n #     \\   /      ||||||   \\   |   /\n hackbenc-4242    2d....    0us!: trace_hardirqs_off \u003c-_spin_lock_irqsave\n hackbenc-4242    2...1. 2463us+: _spin_unlock_irqrestore \u003c-remove_wait_queue\n hackbenc-4242    2...1. 2466us : trace_preempt_on \u003c-remove_wait_queue\n\nThe above lets us know that hackbench with pid 2463 grabbed a spin lock\nsomewhere and enabled preemption at remove_wait_queue. This helps a little\nbut where this actually happened is not informative.\n\nThis patch adds the stack dump to the end of the irqsoff tracer. This provides\nthe following output:\n\n hackbenc-4242    2d....    0us!: trace_hardirqs_off \u003c-_spin_lock_irqsave\n hackbenc-4242    2...1. 2463us+: _spin_unlock_irqrestore \u003c-remove_wait_queue\n hackbenc-4242    2...1. 2466us : trace_preempt_on \u003c-remove_wait_queue\n hackbenc-4242    2...1. 2467us : \u003cstack trace\u003e\n  \u003d\u003e sub_preempt_count\n  \u003d\u003e _spin_unlock_irqrestore\n  \u003d\u003e remove_wait_queue\n  \u003d\u003e free_poll_entry\n  \u003d\u003e poll_freewait\n  \u003d\u003e do_sys_poll\n  \u003d\u003e sys_poll\n  \u003d\u003e system_call_fastpath\n\nNow we see that the culprit of this latency was the free_poll_entry code.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "03889384cee7a198a79447c1ea6aca2c8e54d155",
      "tree": "66794ab12e3196c4bee4d8d020f451e8cc8a1f6d",
      "parents": [
        "dd7f59435782a02ceb6d16b9ce823dd3345d75ec"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Dec 11 09:48:22 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Dec 11 10:38:47 2009 -0500"
      },
      "message": "tracing: Add trace_dump_stack()\n\nI\u0027ve been asked a few times about how to find out what is calling\nsome location in the kernel. One way is to use dynamic function tracing\nand implement the func_stack_trace. But this only finds out who is\ncalling a particular function. It does not tell you who is calling\nthat function and entering a specific if conditional.\n\nI have myself implemented a quick version of trace_dump_stack() for\nthis purpose a few times, and just needed it now. This is when I realized\nthat this would be a good tool to have in the kernel like trace_printk().\n\nUsing trace_dump_stack() is similar to dump_stack() except that it\nwrites to the trace buffer instead and can be used in critical locations.\n\nFor example:\n\n@@ -5485,8 +5485,12 @@ need_resched_nonpreemptible:\n \tif (prev-\u003estate \u0026\u0026 !(preempt_count() \u0026 PREEMPT_ACTIVE)) {\n \t\tif (unlikely(signal_pending_state(prev-\u003estate, prev)))\n \t\t\tprev-\u003estate \u003d TASK_RUNNING;\n-\t\telse\n+\t\telse {\n \t\t\tdeactivate_task(rq, prev, 1);\n+\t\t\ttrace_printk(\"Deactivating task %s:%d\\n\",\n+\t\t\t\t     prev-\u003ecomm, prev-\u003epid);\n+\t\t\ttrace_dump_stack();\n+\t\t}\n \t\tswitch_count \u003d \u0026prev-\u003envcsw;\n \t}\n\nProduces:\n\n           \u003c...\u003e-3249  [001]   296.105269: schedule: Deactivating task ntpd:3249\n           \u003c...\u003e-3249  [001]   296.105270: \u003cstack trace\u003e\n \u003d\u003e schedule\n \u003d\u003e schedule_hrtimeout_range\n \u003d\u003e poll_schedule_timeout\n \u003d\u003e do_select\n \u003d\u003e core_sys_select\n \u003d\u003e sys_select\n \u003d\u003e system_call_fastpath\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "dd7f59435782a02ceb6d16b9ce823dd3345d75ec",
      "tree": "d85e0a7b2b587b41afd1c764e7c25b3fa2962613",
      "parents": [
        "184210154b9aa570099183f6c062ac4eb11190b7"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Dec 10 23:20:52 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Dec 10 23:20:52 2009 -0500"
      },
      "message": "ring-buffer: Move resize integrity check under reader lock\n\nWhile using an application that does splice on the ftrace ring\nbuffer at start up, I triggered an integrity check failure.\n\nLooking into this, I discovered that resizing the buffer performs\nan integrity check after the buffer is resized. This check unfortunately\nis preformed after it releases the reader lock. If a reader is\nreading the buffer it may cause the integrity check to trigger a\nfalse failure.\n\nThis patch simply moves the integrity checker under the protection\nof the ring buffer reader lock.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "184210154b9aa570099183f6c062ac4eb11190b7",
      "tree": "8951abcbd66eb5e198e340013b87138c2ff8d7fa",
      "parents": [
        "d954fbf0ff6b5fdfb32350e85a2f15d3db976506"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Dec 10 22:54:27 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Dec 10 22:54:27 2009 -0500"
      },
      "message": "ring-buffer: Use sync sched protection on ring buffer resizing\n\nThere was a comment in the ring buffer code that says the calling\nlayers should prevent tracing or reading of the ring buffer while\nresizing. I have discovered that the tracers do not honor this\narrangement.\n\nThis patch moves the disabling and synchronizing the ring buffer to\na higher layer during resizing. This guarantees that no writes\nare occurring while the resize takes place.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d954fbf0ff6b5fdfb32350e85a2f15d3db976506",
      "tree": "3814d5878ed43b7f3cd36bdfe08053bb3d5fc0d9",
      "parents": [
        "788d70dce0184eccc249ac6f05aa38b385b7497c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 10 23:46:52 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Dec 11 00:01:36 2009 +0100"
      },
      "message": "tracing: Fix wrong usage of strstrip in trace_ksyms\n\nstrstrip returns a pointer to the first non space character, but the\ncode in parse_ksym_trace_str() ignores that.\n\nstrstrip is now must_check and therefor we get the correct warning:\nkernel/trace/trace_ksym.c:294: warning:\nignoring return value of ‘strstrip’, declared with attribute warn_unused_result\n\nWe are really not interested in leading whitespace here.\n\nFix that and cleanup the dozen kfree() exit pathes.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f2942487ffb0c0a80b2312f667ea30dd55a24bb0",
      "tree": "8e6e4c8ae8230f2648142c863e8482b7656e6614",
      "parents": [
        "be1eca39319689aed7d3aedb9c3bece9469fe10f"
      ],
      "author": {
        "name": "Carsten Emde",
        "email": "Carsten.Emde@osadl.org",
        "time": "Sun Dec 06 14:02:44 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 14:20:08 2009 -0500"
      },
      "message": "tracing: Remove comparing of NULL to va_list in trace_array_vprintk()\n\nOlof Johansson stated the following:\n\n  Comparing a va_list with NULL is bogus. It\u0027s supposed to be treated like\n  an opaque type and only be manipulated with va_* accessors.\n\nOlof noticed that this code broke the ARM builds:\n\n    kernel/trace/trace.c: In function \u0027trace_array_vprintk\u0027:\n    kernel/trace/trace.c:1364: error: invalid operands to binary \u003d\u003d (have \u0027va_list\u0027 and \u0027void *\u0027)\n    kernel/trace/trace.c: In function \u0027tracing_mark_write\u0027:\n    kernel/trace/trace.c:3349: error: incompatible type for argument 3 of \u0027trace_vprintk\u0027\n\nThis patch partly reverts c13d2f7c3231e873f30db92b96c8caa48f100f33 and\nre-installs the original mark_printk() mechanism.\n\nReported-by: Olof Johansson \u003colof@lixom.net\u003e\nSigned-off-by: Carsten Emde \u003cC.Emde@osadl.org\u003e\nLKML-Reference: \u003c4B1BAB74.104@osadl.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "be1eca39319689aed7d3aedb9c3bece9469fe10f",
      "tree": "fd55a6c086f328a2cdf9ed9ea2d371c3383c663f",
      "parents": [
        "d184b31c0e403580aafb3f8955ecc185a3d04801"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Tue Nov 24 13:57:38 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 14:09:06 2009 -0500"
      },
      "message": "tracing: Fix function graph trace_pipe to properly display failed entries\n\nThere is a case where the graph tracer might get confused and omits\ndisplaying of a single record.  This applies mostly with the trace_pipe\nsince it is unlikely that the trace_seq buffer will overflow with the\ntrace file.\n\nAs the function_graph tracer goes through the trace entries keeping a\npointer to the current record:\n\ncurrent -\u003e  func1 ENTRY\n            func2 ENTRY\n            func2 RETURN\n            func1 RETURN\n\nWhen an function ENTRY is encountered, it moves the pointer to the\nnext entry to check if the function is a nested or leaf function.\n\n            func1 ENTRY\ncurrent -\u003e  func2 ENTRY\n            func2 RETURN\n            func1 RETURN\n\nIf the rest of the writing of the function fills the trace_seq buffer,\nthen the trace_pipe read will ignore this entry. The next read will\nNow start at the current location, but the first entry (func1) will\nbe discarded.\n\nThis patch keeps a copy of the current entry in the iterator private\nstorage and will keep track of when the trace_seq buffer fills. When\nthe trace_seq buffer fills, it will reuse the copy of the entry in the\nnext iteration.\n\n[\n  This patch has been largely modified by Steven Rostedt in order to\n  clean it up and simplify it. The original idea and concept was from\n  Jirka and for that, this patch will go under his name to give him\n  the credit he deserves. But because this was modify by Steven Rostedt\n  anything wrong with the patch should be blamed on Steven.\n]\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1259067458-27143-1-git-send-email-jolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d184b31c0e403580aafb3f8955ecc185a3d04801",
      "tree": "ca3fc8371382ce8dbe43eb684313847b7555573e",
      "parents": [
        "a63ce5b306855bccdacba95c03bfc293316c8ae3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Nov 25 16:10:14 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 14:05:49 2009 -0500"
      },
      "message": "tracing: Add full state to trace_seq\n\nThe trace_seq buffer might fill up, and right now one needs to check the\nreturn value of each printf into the buffer to check for that.\n\nInstead, have the buffer keep track of whether it is full or not, and\nreject more input if it is full or would have overflowed with an input\nthat wasn\u0027t added.\n\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a63ce5b306855bccdacba95c03bfc293316c8ae3",
      "tree": "b6d91266e9333a9cf74d6171bbee0acc0e18096b",
      "parents": [
        "29bf4a5e3fed3dde3eb629a0cb1762c1e9217458"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 07 09:11:39 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 13:55:26 2009 -0500"
      },
      "message": "tracing: Buffer the output of seq_file in case of filled buffer\n\nIf the seq_read fills the buffer it will call s_start again on the next\nitertation with the same position. This causes a problem with the\nfunction_graph tracer because it consumes the iteration in order to\ndetermine leaf functions.\n\nWhat happens is that the iterator stores the entry, and the function\ngraph plugin will look at the next entry. If that next entry is a return\nof the same function and task, then the function is a leaf and the\nfunction_graph plugin calls ring_buffer_read which moves the ring buffer\niterator forward (the trace iterator still points to the function start\nentry).\n\nThe copying of the trace_seq to the seq_file buffer will fail if the\nseq_file buffer is full. The seq_read will not show this entry.\nThe next read by userspace will cause seq_read to again call s_start\nwhich will reuse the trace iterator entry (the function start entry).\nBut the function return entry was already consumed. The function graph\nplugin will think that this entry is a nested function and not a leaf.\n\nTo solve this, the trace code now checks the return status of the\nseq_printf (trace_print_seq). If the writing to the seq_file buffer\nfails, we set a flag in the iterator (leftover) and we do not reset\nthe trace_seq buffer. On the next call to s_start, we check the leftover\nflag, and if it is set, we just reuse the trace_seq buffer and do not\ncall into the plugin print functions.\n\nBefore this patch:\n\n 2)               |      fput() {\n 2)               |        __fput() {\n 2)   0.550 us    |          inotify_inode_queue_event();\n 2)               |          __fsnotify_parent() {\n 2)   0.540 us    |          inotify_dentry_parent_queue_event();\n\nAfter the patch:\n\n 2)               |      fput() {\n 2)               |        __fput() {\n 2)   0.550 us    |          inotify_inode_queue_event();\n 2)   0.548 us    |          __fsnotify_parent();\n 2)   0.540 us    |          inotify_dentry_parent_queue_event();\n\n[\n  Updated the patch to fix a missing return 0 from the trace_print_seq()\n  stub when CONFIG_TRACING is disabled.\n\n  Reported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n]\n\nReported-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "29bf4a5e3fed3dde3eb629a0cb1762c1e9217458",
      "tree": "42a93ba9e1e7d0fb7b1f46382dba9a5245768629",
      "parents": [
        "c521efd1700a8c0f7ce26f011f5eaecca17fabfa"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Dec 09 12:37:43 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 12:47:35 2009 -0500"
      },
      "message": "tracing: Only call pipe_close if pipe_close is defined\n\nThis fixes a cut and paste error that had pipe_close get called\nif pipe_open was defined (not pipe_close).\n\nReported-by: Kosaki Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nLKML-Reference: \u003c20091209153204.F4CD.A69D9226@jp.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    }
  ],
  "next": "822a6961112f0c9101d3359d8524604c3309ee6c"
}
