)]}'
{
  "log": [
    {
      "commit": "886b5b73d71e4027d7dc6c14f5f7ab102201ea6b",
      "tree": "307a0e4d1c597e90d6972f95c2396ea4e1be2057",
      "parents": [
        "c478f8786973d6d7552c652ddad3f6fd86b5af28"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 25 11:03:44 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 25 11:05:34 2009 +0100"
      },
      "message": "tracing: remove /debug/tracing/latency_trace\n\nImpact: remove old debug/tracing API\n\n/debug/tracing/latency_trace is an old legacy format we kept from\nthe old latency tracer. Remove the file for now. If there\u0027s any\nuseful bit missing then we\u0027ll propagate any useful output bits into\nthe /debug/tracing/trace output.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c478f8786973d6d7552c652ddad3f6fd86b5af28",
      "tree": "39967f4bb9a35d626584bd46f1acd916c6b5278d",
      "parents": [
        "843adf2379c18ed9a1b7493ee208bfd5512732e0",
        "4377245aa93b65b6597e4b7bb460fb9abc48b56b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 22 18:12:01 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 22 18:12:01 2009 +0100"
      },
      "message": "Merge branch \u0027tip/x86/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n\nConflicts:\n\tinclude/linux/ftrace.h\n\tkernel/trace/ftrace.c\n"
    },
    {
      "commit": "4377245aa93b65b6597e4b7bb460fb9abc48b56b",
      "tree": "00eae2cbdd12e855bbde2f6cd6d1a6e6fd659a11",
      "parents": [
        "90c7ac49aa819feb9433b5310089fca6399881c0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 19 13:41:27 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 20 14:30:20 2009 -0500"
      },
      "message": "ftrace: break out modify loop immediately on detection of error\n\nImpact: added precaution on failure detection\n\nBreak out of the modifying loop as soon as a failure is detected.\nThis is just an added precaution found by code review and was not\nfound by any bug chasing.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "000ab691172db3921efa3cb7f17fc79235a1de7f",
      "tree": "5670e20fe203488b408977d5d5634fc9ddf418e1",
      "parents": [
        "07a66d7c53a538e1a9759954a82bb6c07365eff9"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 13:35:06 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 20 13:16:18 2009 -0500"
      },
      "message": "ftrace: allow archs to preform pre and post process for code modification\n\nThis patch creates the weak functions: ftrace_arch_code_modify_prepare\nand ftrace_arch_code_modify_post_process that are called before and\nafter the stop machine is called to modify the kernel text.\n\nIf the arch needs to do pre or post processing, it only needs to define\nthese functions.\n\n[ Update: Ingo Molnar suggested using the name ftrace_arch_code_modify_*\n          over using ftrace_arch_modify_* ]\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "f9349a8f978929a0c71d2c42ae299f7d462c239d",
      "tree": "e5d010a27078993709fd286f358122886cbbc3bc",
      "parents": [
        "64b36ca7f408e0bd45487c8c28f168f11f3b6dcd"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Feb 19 21:13:12 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 20 11:36:24 2009 +0100"
      },
      "message": "tracing/function-graph-tracer: make set_graph_function file support ftrace regex\n\nImpact: trace only functions matching a pattern\n\nThe set_graph_function file let one to trace only one or several\nchosen functions and follow all their code flow.\n\nCurrently, only a constant function name is allowed so this patch\nallows the ftrace_regex functions:\n\n- matches all functions that end with \"name\":\n  echo *name \u003e set_graph_function\n\n- matches all functions that begin with \"name\":\n  echo name* \u003e set_graph_function\n\n- matches all functions that contains \"name\":\n  echo *name* \u003e set_graph_function\n\nExample:\n\necho mutex* \u003e set_graph_function\n\n 0)               |  mutex_lock_nested() {\n 0)   0.563 us    |    __might_sleep();\n 0)   2.072 us    |  }\n 0)               |  mutex_unlock() {\n 0)   1.036 us    |    __mutex_unlock_slowpath();\n 0)   2.433 us    |  }\n 0)               |  mutex_unlock() {\n 0)   0.691 us    |    __mutex_unlock_slowpath();\n 0)   1.787 us    |  }\n 0)               |  mutex_lock_interruptible_nested() {\n 0)   0.548 us    |    __might_sleep();\n 0)   1.945 us    |  }\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "00a8bf859331e349713274825e6fbf20bf2ac15a",
      "tree": "09a26efd9f8c79c2fc4bead9d6adc18cd2ea6de9",
      "parents": [
        "5752674e140db5bce08c6bc60021a9bc3b960800"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 13:01:37 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 13:01:37 2009 +0100"
      },
      "message": "tracing/function-graph-tracer: fix merge\n\nMerge artifact: pid got changed to ent-\u003epid meanwhile.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d1f9cbd78841f1a797c77e9117e4882f932c2ef6",
      "tree": "385b85ae60dfca6b4d2c5d8093db07cd6c5fbb20",
      "parents": [
        "4cd0332db7e8f57cc082bab11d82c064a9721737"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Feb 18 04:25:25 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 12:33:21 2009 +0100"
      },
      "message": "tracing/function-graph-tracer: fix traces weirdness while absolute time printing\n\nImpact: trace output cleanup/reordering\n\nWhen an interrupt occurs and and the abstime option is selected:\n\n  echo funcgraph-abstime \u003e /debug/tracing/trace_options\n\nthen we observe broken traces:\n\n30581.025422 |   0)   Xorg-4291    |   0.503 us    |      idle_cpu();\n30581.025424 |   0)   Xorg-4291    |   2.576 us    |    }\n30581.025424 |   0)   Xorg-4291    | + 75.771 us   |  }\n 0)   Xorg-4291    |   \u003c\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d |\n30581.025425 |   0)   Xorg-4291    |               |  schedule() {\n30581.025426 |   0)   Xorg-4291    |               |    __schedule() {\n30581.025426 |   0)   Xorg-4291    |   0.705 us    |      _spin_lock_irq();\n\nWith this patch, the interrupts output better adapts\nto absolute time printing:\n\n  414.856543 |   1)   Xorg-4279    |   8.816 us    |                        }\n  414.856544 |   1)   Xorg-4279    |   0.525 us    |                        rcu_irq_exit();\n  414.856545 |   1)   Xorg-4279    |   0.526 us    |                        idle_cpu();\n  414.856546 |   1)   Xorg-4279    | + 12.157 us   |                      }\n  414.856549 |   1)   Xorg-4279    | ! 104.114 us  |                    }\n  414.856549 |   1)   Xorg-4279    |   \u003c\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d |\n  414.856549 |   1)   Xorg-4279    | ! 107.944 us  |                  }\n  414.856550 |   1)   Xorg-4279    | ! 137.010 us  |                }\n  414.856551 |   1)   Xorg-4279    |   0.624 us    |                _read_unlock();\n  414.856552 |   1)   Xorg-4279    | ! 140.930 us  |              }\n  414.856552 |   1)   Xorg-4279    | ! 166.159 us  |            }\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4cd0332db7e8f57cc082bab11d82c064a9721737",
      "tree": "b6de7771d67c5bf6eeb890fa0f5a901365104b98",
      "parents": [
        "40999096e8b9872199bf56ecd0c4d98397ccaf2f",
        "712406a6bf59ebf4a00358bb59a4a2a1b2953d90"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 12:13:33 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 12:13:33 2009 +0100"
      },
      "message": "Merge branch \u0027mainline/function-graph\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/function-graph-tracer\n"
    },
    {
      "commit": "40999096e8b9872199bf56ecd0c4d98397ccaf2f",
      "tree": "a1019965100c10cae52014c447bfb4d1381ebec9",
      "parents": [
        "72c26c9a26ea7f2f3d14f162c2ebb07805f724ea",
        "fa7c7f6e11f70d62505074a8b30a776236850dec",
        "ed4a2f374d71770796789ed559c35a36bab82f1a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 10:20:17 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 10:20:17 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/blktrace\u0027, \u0027tracing/ftrace\u0027 and \u0027tracing/urgent\u0027 into tracing/core\n"
    },
    {
      "commit": "72c26c9a26ea7f2f3d14f162c2ebb07805f724ea",
      "tree": "bf1b4bc0b69f96c79474f9edb9cf0e811c95f2dc",
      "parents": [
        "37bd824a35a60abc73e5fa8816bd5f50c913d69b",
        "ba95fd47d177d46743ad94055908d22840370e06"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 09:00:35 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 09:00:35 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/blktrace\n\nConflicts:\n\tblock/blktrace.c\n\nSemantic merge:\n\tkernel/trace/blktrace.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4b3e3d228429c75d398f1aa24532e468d3220c49",
      "tree": "ff0f2bd4b3f6903ad563d16c47d0bbb15603b2dd",
      "parents": [
        "4d7a077c0c7bfdba04cf0aa0b79053cf4ebaacf8"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 22:50:01 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 22:50:01 2009 -0500"
      },
      "message": "tracing: limit the number of loops the ring buffer self test can make\n\nImpact: prevent deadlock if ring buffer gets corrupted\n\nThis patch adds a paranoid check to make sure the ring buffer consumer\ndoes not go into an infinite loop. Since the ring buffer has been set\nto read only, the consumer should not loop for more than the ring buffer\nsize. A check is added to make sure the consumer does not loop more than\nthe ring buffer size.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "4d7a077c0c7bfdba04cf0aa0b79053cf4ebaacf8",
      "tree": "6c5499988ccb21898b22d709f9f66d019e0fe475",
      "parents": [
        "0c5119c1e655e0719a69601b1049acdd5ec1c125"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 22:06:18 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 22:06:18 2009 -0500"
      },
      "message": "tracing: have function trace select kallsyms\n\nImpact: fix output of function tracer to be useful\n\nThe function tracer is pretty useless if KALLSYMS is not configured.\nUnless you are good at reading hex values, the function tracer should\nselect the KALLSYMS configuration.\n\nAlso, the dynamic function tracer will fail its self test if KALLSYMS\nis not selected.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "0c5119c1e655e0719a69601b1049acdd5ec1c125",
      "tree": "e808e36e274afc7c6521f69194e6fc2597e189bd",
      "parents": [
        "5b058bcde961bf28678a70e44c079107313543b6"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 18:33:57 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 22:04:01 2009 -0500"
      },
      "message": "tracing: disable tracing while testing ring buffer\n\nImpact: fix to prevent hard lockup on self tests\n\nIf one of the tracers are broken and is constantly filling the ring\nbuffer while the test of the ring buffer is running, it will hang\nthe box. The reason is that the test is a consumer that will not\nstop till the ring buffer is empty. But if the tracer is broken and\nis constantly producing input to the buffer, this test will never\nend. The result is a lockup of the box.\n\nThis happened when KALLSYMS was not defined and the dynamic ftrace\ntest constantly filled the ring buffer, because the filter failed\nand all functions were being traced. Something was being called\nthat constantly filled the buffer.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "712406a6bf59ebf4a00358bb59a4a2a1b2953d90",
      "tree": "5bea439ccacde69ba71c5da8e8e307c2d343aa93",
      "parents": [
        "d2f8d7ee1a9b4650b4e43325b321801264f7c37a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 09 10:54:03 2009 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 13:43:04 2009 -0500"
      },
      "message": "tracing/function-graph-tracer: make arch generic push pop functions\n\nThere is nothing really arch specific of the push and pop functions\nused by the function graph tracer. This patch moves them to generic\ncode.\n\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "fa7c7f6e11f70d62505074a8b30a776236850dec",
      "tree": "f325008f7505ffb45dd7b1139d38c6a8229c6ccd",
      "parents": [
        "6eaaa5d57e76c454479833fc8594cd7c3b75c789"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Feb 11 02:51:30 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 18 01:40:20 2009 +0100"
      },
      "message": "tracing/core: remove unused parameter in tracing_fill_pipe_page()\n\nImpact: cleanup\n\nThe struct page *pages parameter is unused.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6eaaa5d57e76c454479833fc8594cd7c3b75c789",
      "tree": "c8f3c130004199bbbc8d141bbfb0f216539c0724",
      "parents": [
        "ac07bcaa8259841905ead3f8cd60b1923ca6c0e5"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Feb 11 02:25:00 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 18 01:40:20 2009 +0100"
      },
      "message": "tracing/core: use appropriate waiting on trace_pipe\n\nImpact: api and pipe waiting change\n\nCurrently, the waiting used in tracing_read_pipe() is done through a\n100 msecs schedule_timeout() loop which periodically check if there\nare traces on the buffer.\n\nThis can cause small latencies for programs which are reading the incoming\nevents.\n\nThis patch makes the reader waiting for the trace_wait waitqueue except\nfor few tracers such as the sched and functions tracers which might be\nalready hold the runqueue lock while waking up the reader.\n\nThis is performed through a new callback wait_pipe() on struct tracer.\nIf none is implemented on a specific tracer, the default waiting for\ntrace_wait queue is attached.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ac07bcaa8259841905ead3f8cd60b1923ca6c0e5",
      "tree": "162def1cd53ef477adca17fe06c33a484f6b2e87",
      "parents": [
        "37bd824a35a60abc73e5fa8816bd5f50c913d69b",
        "35ebf1caa4854ad5ba25f3a72967acc064147994"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 18 01:09:07 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 18 01:09:07 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "37bd824a35a60abc73e5fa8816bd5f50c913d69b",
      "tree": "e6f718191893ccb713f854fc8bf4a5866a41fe2b",
      "parents": [
        "73d3fd96e77745742f3750b7b19ee42204adc210",
        "5b058bcde961bf28678a70e44c079107313543b6"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 18 01:08:13 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 18 01:08:13 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027 and \u0027tracing/urgent\u0027 into tracing/core\n"
    },
    {
      "commit": "5b058bcde961bf28678a70e44c079107313543b6",
      "tree": "077a1bd366399544a84f61b07ae2f7bd894fae47",
      "parents": [
        "f9aa28adfc6a4b01268ebb6d88566cca8627905f"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Feb 17 18:35:34 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 19:20:17 2009 +0100"
      },
      "message": "tracing/function-graph-tracer: trace the idle tasks\n\nWhen the function graph tracer is activated, it iterates over the task_list\nto allocate a stack to store the return addresses.\n\nBut the per cpu idle tasks are not iterated by using\ndo_each_thread / while_each_thread.\n\nSo we have to iterate on them manually.\n\nThis fixes somes weirdness in the traces and many losses of traces.\nExamples on two cpus:\n\n 0)   Xorg-4287    |   2.906 us    |              }\n 0)   Xorg-4287    |   3.965 us    |            }\n 0)   Xorg-4287    |   5.302 us    |          }\n ------------------------------------------\n 0)   Xorg-4287    \u003d\u003e    \u003cidle\u003e-0\n ------------------------------------------\n\n 0)    \u003cidle\u003e-0    |   2.861 us    |                        }\n 0)    \u003cidle\u003e-0    |   0.526 us    |                        set_normalized_timespec();\n 0)    \u003cidle\u003e-0    |   7.201 us    |                      }\n 0)    \u003cidle\u003e-0    |   8.214 us    |                    }\n 0)    \u003cidle\u003e-0    |               |                    clockevents_program_event() {\n 0)    \u003cidle\u003e-0    |               |                      lapic_next_event() {\n 0)    \u003cidle\u003e-0    |   0.510 us    |                        native_apic_mem_write();\n 0)    \u003cidle\u003e-0    |   1.546 us    |                      }\n 0)    \u003cidle\u003e-0    |   2.583 us    |                    }\n 0)    \u003cidle\u003e-0    | + 12.435 us   |                  }\n 0)    \u003cidle\u003e-0    | + 13.470 us   |                }\n 0)    \u003cidle\u003e-0    |   0.608 us    |                _spin_unlock_irqrestore();\n 0)    \u003cidle\u003e-0    | + 23.270 us   |              }\n 0)    \u003cidle\u003e-0    | + 24.336 us   |            }\n 0)    \u003cidle\u003e-0    | + 25.417 us   |          }\n 0)    \u003cidle\u003e-0    |   0.593 us    |          _spin_unlock();\n 0)    \u003cidle\u003e-0    | + 41.869 us   |        }\n 0)    \u003cidle\u003e-0    | + 42.906 us   |      }\n 0)    \u003cidle\u003e-0    | + 95.035 us   |    }\n 0)    \u003cidle\u003e-0    |   0.540 us    |    menu_reflect();\n 0)    \u003cidle\u003e-0    | ! 100.404 us  |  }\n 0)    \u003cidle\u003e-0    |   0.564 us    |  mce_idle_callback();\n 0)    \u003cidle\u003e-0    |               |  enter_idle() {\n 0)    \u003cidle\u003e-0    |   0.526 us    |    mce_idle_callback();\n 0)    \u003cidle\u003e-0    |   1.757 us    |  }\n 0)    \u003cidle\u003e-0    |               |  cpuidle_idle_call() {\n 0)    \u003cidle\u003e-0    |               |    menu_select() {\n 0)    \u003cidle\u003e-0    |   0.525 us    |      pm_qos_requirement();\n 0)    \u003cidle\u003e-0    |   0.518 us    |      tick_nohz_get_sleep_length();\n 0)    \u003cidle\u003e-0    |   2.621 us    |    }\n[...]\n 1)    \u003cidle\u003e-0    |   0.518 us    |              touch_softlockup_watchdog();\n 1)    \u003cidle\u003e-0    | + 14.355 us   |            }\n 1)    \u003cidle\u003e-0    | + 22.840 us   |          }\n 1)    \u003cidle\u003e-0    | + 25.949 us   |        }\n 1)    \u003cidle\u003e-0    |               |        handle_irq() {\n 1)    \u003cidle\u003e-0    |   0.511 us    |          irq_to_desc();\n 1)    \u003cidle\u003e-0    |               |          handle_edge_irq() {\n 1)    \u003cidle\u003e-0    |   0.638 us    |            _spin_lock();\n 1)    \u003cidle\u003e-0    |               |            ack_apic_edge() {\n 1)    \u003cidle\u003e-0    |   0.510 us    |              irq_to_desc();\n 1)    \u003cidle\u003e-0    |               |              move_native_irq() {\n 1)    \u003cidle\u003e-0    |   0.510 us    |                irq_to_desc();\n 1)    \u003cidle\u003e-0    |   1.532 us    |              }\n 1)    \u003cidle\u003e-0    |   0.511 us    |              native_apic_mem_write();\n ------------------------------------------\n 1)    \u003cidle\u003e-0    \u003d\u003e    cat-5073\n ------------------------------------------\n\n 1)    cat-5073    |   3.731 us    |                    }\n 1)    cat-5073    |               |                    run_local_timers() {\n 1)    cat-5073    |   0.533 us    |                      hrtimer_run_queues();\n 1)    cat-5073    |               |                      raise_softirq() {\n 1)    cat-5073    |               |                        __raise_softirq_irqoff() {\n 1)    cat-5073    |               |                          /* nr: 1 */\n 1)    cat-5073    |   2.718 us    |                        }\n 1)    cat-5073    |   3.814 us    |                      }\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "35ebf1caa4854ad5ba25f3a72967acc064147994",
      "tree": "6adc0e7db8cb16d18f3683bf729cf8261af93b1f",
      "parents": [
        "73d8b8bc4f24a97a406d09c8268ac019f4ac661e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 13:12:12 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 13:12:12 2009 -0500"
      },
      "message": "ftrace: show unlimited when traceon or traceoff has no counter\n\nImpact: clean up\n\nThe traceon and traceoff function probes are confusing to developers\nto what happens when a counter is not specified. This should help\nclear things up.\n\n # echo \"*:traceoff\" \u003e set_ftrace_filter\n # cat /debug/tracing/set_ftrace_filter\n\n  #### all functions enabled ####\n  do_fork:traceoff:unlimited\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "73d8b8bc4f24a97a406d09c8268ac019f4ac661e",
      "tree": "53917dadae639d825a8e917a27644555cb6eeea5",
      "parents": [
        "d2ef7c2f0f9ab48c25eafc0ebad0df5f7930420b"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Tue Feb 17 01:10:02 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 12:38:24 2009 -0500"
      },
      "message": "tracing: fix typing mistake in hint message and comments\n\nImpact: cleanup\n\nFix incorrect hint message in code and typos in comments.\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "d2ef7c2f0f9ab48c25eafc0ebad0df5f7930420b",
      "tree": "f728344561b02428d875e30a0d07143dafd52bcc",
      "parents": [
        "af513098452b8887d7c0e15a39d7cb74479501bd"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Tue Feb 17 01:09:47 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 12:38:24 2009 -0500"
      },
      "message": "tracing: fix the return value of trace selftest\n\nThis patch is to fix the return value of trace_selftest_startup_sysprof\nand trace_selftest_startup_branch on failure.\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "af513098452b8887d7c0e15a39d7cb74479501bd",
      "tree": "a578846af58fe25dd784f694440a3cf757aea807",
      "parents": [
        "b6887d7916e44c1d8913084fb6aa5004d9473f1a"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Tue Feb 17 01:07:28 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 12:38:23 2009 -0500"
      },
      "message": "tracing: use the more proper parameter\n\nPass tsk to tracing_record_cmdline instead of current.\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "b6887d7916e44c1d8913084fb6aa5004d9473f1a",
      "tree": "3446baa5592ce9ce17abb51ffdf3d89e6b52ef9b",
      "parents": [
        "6a24a244cd3a02d5b290293c32fcf2c6e92b4235"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 12:32:04 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 12:32:04 2009 -0500"
      },
      "message": "ftrace: rename _hook to _probe\n\nImpact: clean up\n\nIngo Molnar did not like the _hook naming convention used by the\nselect function tracer. Luis Claudio R. Goncalves suggested using\nthe \"_probe\" extension. This patch implements the change of\ncalling the functions and variables \"_hook\" and replacing them\nwith \"_probe\".\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "6a24a244cd3a02d5b290293c32fcf2c6e92b4235",
      "tree": "8328e5e7da792a07a338f20974eaea4f80bb59ac",
      "parents": [
        "73d3fd96e77745742f3750b7b19ee42204adc210"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 11:20:26 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 11:20:26 2009 -0500"
      },
      "message": "ftrace: clean up coding style\n\nIngo Molnar pointed out some coding style issues with the recent ftrace\nupdates. This patch cleans them up.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "73d3fd96e77745742f3750b7b19ee42204adc210",
      "tree": "02eb978e04288883d7f7709e87d8906687c29ba7",
      "parents": [
        "97d0bb8dcd8c2812e1927cdb51d7b1f9c98352b5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 11:48:18 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 11:50:42 2009 +0100"
      },
      "message": "ftrace: fix !CONFIG_DYNAMIC_FTRACE ftrace_swapper_pid definition\n\nImpact: build fix\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f492d3f8385a98f828e8220d14492337dc29e07b",
      "tree": "31f22c83f7e45388955aacb45c425d7cb6a4d78c",
      "parents": [
        "c4e2b432d5b57e2faaeea048079b31c243079647",
        "e110e3d1eaa0f9628918be67ddd32e8ad65a2871"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 11:31:01 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 11:31:01 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "c4e2b432d5b57e2faaeea048079b31c243079647",
      "tree": "f4e59abeb522ecb11476fe69d827390050a0ffee",
      "parents": [
        "a234aa9ecdf47a5461573a21dc0b154278df5ba8",
        "72b623c73685e86b70a51855e1058ebc98a9f6ed"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 11:29:53 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 11:29:53 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/hw-branch-tracing\u0027 and \u0027tracing/power-tracer\u0027 into tracing/core\n"
    },
    {
      "commit": "e110e3d1eaa0f9628918be67ddd32e8ad65a2871",
      "tree": "f51fcc118da53c2f7a8dc7ed028a7ed5380c9706",
      "parents": [
        "809dcf29ce4e1723709910878e050bd187617e0e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 23:38:13 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 23:38:13 2009 -0500"
      },
      "message": "ftrace: add pretty print function for traceon and traceoff hooks\n\nThis patch adds a pretty print version of traceon and traceoff\noutput for set_ftrace_filter.\n\n  # echo \u0027sys_open:traceon:4\u0027 \u003e set_ftrace_filter\n  # cat set_ftrace_filter\n\n #### all functions enabled ####\n sys_open:traceon:count\u003d4\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "809dcf29ce4e1723709910878e050bd187617e0e",
      "tree": "4747ede5ad0678d6ae88176f403a2c26f277182e",
      "parents": [
        "8fc0c701c5b6c0c3e242758c3acef6f9047940a9"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 23:06:01 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 23:06:01 2009 -0500"
      },
      "message": "ftrace: add pretty print to selected fuction traces\n\nThis patch adds a call back for the tracers that have hooks to\nselected functions. This allows the tracer to show better output\nin the set_ftrace_filter file.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "8fc0c701c5b6c0c3e242758c3acef6f9047940a9",
      "tree": "aa9c495fc2d898b39873e1ce9f154bed64b33f8e",
      "parents": [
        "23b4ff3aa479c9e3bb23cb6b2d0a97878399784a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 15:28:00 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 22:50:06 2009 -0500"
      },
      "message": "ftrace: show selected functions in set_ftrace_filter\n\nThis patch adds output to show what functions have tracer hooks\nattached to them.\n\n  # echo \u0027sys_open:traceon:4\u0027 \u003e /debug/tracing/set_ftrace_filter\n  # cat set_ftrace_filter\n\n #### all functions enabled ####\n sys_open:ftrace_traceon:0000000000000004\n\n  # echo \u0027do_fork:traceoff:\u0027 \u003e set_ftrace_filter\n  # cat set_ftrace_filter\n\n #### all functions enabled ####\n sys_open:ftrace_traceon:0000000000000002\n do_fork:ftrace_traceoff:ffffffffffffffff\n\nNote the 4 changed to a 2. This is because The code was executed twice\nsince the traceoff was added. If a cat is done again:\n\n #### all functions enabled ####\n sys_open:ftrace_traceon\n do_fork:ftrace_traceoff:ffffffffffffffff\n\nThe number disappears. That is because it will not print a NULL.\n\nCallbacks to allow the tracer to pretty print will be implemented soon.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "23b4ff3aa479c9e3bb23cb6b2d0a97878399784a",
      "tree": "ba446de609489d91303e6bdafd5168463100417a",
      "parents": [
        "988ae9d6b2bc3ebdc1a488490250a6812f85e9d4"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 14 19:04:24 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 22:50:04 2009 -0500"
      },
      "message": "ftrace: add traceon traceoff commands to enable/disable the buffers\n\nThis patch adds the new function selection commands traceon and\ntraceoff. traceon sets the function to enable the ring buffers\nwhile traceoff disables the ring buffers.  You can pass in the\nnumber of times you want the command to be executed when the function\nis hit. It will only execute if the state of the buffers are not\nalready in that state.\n\nExample:\n\n # echo do_fork:traceon:4\n\nWill enable the ring buffers if they are disabled every time it\nhits do_fork, up to 4 times.\n\n # echo sys_close:traceoff\n\nThis will disable the ring buffers every time (unlimited) when\nsys_close is called.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "988ae9d6b2bc3ebdc1a488490250a6812f85e9d4",
      "tree": "2674e810891133bc7ddb935baa6c15a0412e2a8f",
      "parents": [
        "59df055f1991c9fc0c71a9230663c39188f6972f"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 14 19:17:02 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 22:50:01 2009 -0500"
      },
      "message": "ring-buffer: add tracing_is_on to test if ring buffer is enabled\n\nThis patch adds the tracing_is_on() interface to tell if the ring\nbuffer is turned on or not.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "59df055f1991c9fc0c71a9230663c39188f6972f",
      "tree": "e1799897a8c8da924a3e933f539e8869e8725cb6",
      "parents": [
        "e6ea44e9b4c12325337cd1c06103cd515a1c02b2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 14 15:29:06 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 22:44:09 2009 -0500"
      },
      "message": "ftrace: trace different functions with a different tracer\n\nImpact: new feature\n\nCurrently, the function tracer only gives you an ability to hook\na tracer to all functions being traced. The dynamic function trace\nallows you to pick and choose which of those functions will be\ntraced, but all functions being traced will call all tracers that\nregistered with the function tracer.\n\nThis patch adds a new feature that allows a tracer to hook to specific\nfunctions, even when all functions are being traced. It allows for\ndifferent functions to call different tracer hooks.\n\nThe way this is accomplished is by a special function that will hook\nto the function tracer and will set up a hash table knowing which\ntracer hook to call with which function. This is the most general\nand easiest method to accomplish this. Later, an arch may choose\nto supply their own method in changing the mcount call of a function\nto call a different tracer. But that will be an exercise for the\nfuture.\n\nTo register a function:\n\n struct ftrace_hook_ops {\n\tvoid\t\t\t(*func)(unsigned long ip,\n\t\t\t\t\tunsigned long parent_ip,\n\t\t\t\t\tvoid **data);\n\tint\t\t\t(*callback)(unsigned long ip, void **data);\n\tvoid\t\t\t(*free)(void **data);\n };\n\n int register_ftrace_function_hook(char *glob, struct ftrace_hook_ops *ops,\n\t\t\t\t  void *data);\n\nglob is a simple glob to search for the functions to hook.\nops is a pointer to the operations (listed below)\ndata is the default data to be passed to the hook functions when traced\n\nops:\n func is the hook function to call when the functions are traced\n callback is a callback function that is called when setting up the hash.\n   That is, if the tracer needs to do something special for each\n   function, that is being traced, and wants to give each function\n   its own data. The address of the entry data is passed to this\n   callback, so that the callback may wish to update the entry to\n   whatever it would like.\n free is a callback for when the entry is freed. In case the tracer\n   allocated any data, it is give the chance to free it.\n\nTo unregister we have three functions:\n\n  void\n  unregister_ftrace_function_hook(char *glob, struct ftrace_hook_ops *ops,\n\t\t\t\tvoid *data)\n\nThis will unregister all hooks that match glob, point to ops, and\nhave its data matching data. (note, if glob is NULL, blank or \u0027*\u0027,\nall functions will be tested).\n\n  void\n  unregister_ftrace_function_hook_func(char *glob,\n\t\t\t\t struct ftrace_hook_ops *ops)\n\nThis will unregister all functions matching glob that has an entry\npointing to ops.\n\n  void unregister_ftrace_function_hook_all(char *glob)\n\nThis simply unregisters all funcs.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "e6ea44e9b4c12325337cd1c06103cd515a1c02b2",
      "tree": "01d13cb3dfb6031c220b42cedc7df7c84dc116b4",
      "parents": [
        "52baf11922db7377b580dd5448a07f71c6a35611"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 14 01:42:44 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 18:15:31 2009 -0500"
      },
      "message": "ftrace: consolidate mutexes\n\nImpact: clean up\n\nNow that ftrace_lock is a mutex, there is no reason to have three\ndifferent mutexes protecting similar data. All the mutex paths\nare not in hot paths, so having a mutex to cover more data is\nnot a problem.\n\nThis patch removes the ftrace_sysctl_lock and ftrace_start_lock\nand uses the ftrace_lock to protect the locations that were protected\nby these locks. By doing so, this change also removes some of\nthe lock nesting that was taking place.\n\nThere are still more mutexes in ftrace.c that can probably be\nconsolidated, but they can be dealt with later. We need to be careful\nabout the way the locks are nested, and by consolidating, we can cause\na recursive deadlock.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "52baf11922db7377b580dd5448a07f71c6a35611",
      "tree": "8fe8a5346da71f63d627ff3824e065efff88889b",
      "parents": [
        "f6180773d90595650e11de0118bb112018290915"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 14 01:15:39 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 17:33:14 2009 -0500"
      },
      "message": "ftrace: convert ftrace_lock from a spinlock to mutex\n\nImpact: clean up\n\nThe older versions of ftrace required doing the ftrace list\nsearch under atomic context. Now all the calls are in non-atomic\ncontext. There is no reason to keep the ftrace_lock as a spinlock.\n\nThis patch converts it to a mutex.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "f6180773d90595650e11de0118bb112018290915",
      "tree": "ccf8642d7ac584f73e7820fae64fc4daf4546f6b",
      "parents": [
        "e68746a271eb3393a2183840be9e903caddf765b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 14 00:40:25 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 17:06:02 2009 -0500"
      },
      "message": "ftrace: add command interface for function selection\n\nAllow for other tracers to add their own commands for function\nselection. This interface gives a trace the ability to name a\ncommand for function selection. Right now it is pretty limited\nin what it offers, but this is a building step for more features.\n\nThe :mod: command is converted to this interface and also serves\nas a template for other implementations.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "e68746a271eb3393a2183840be9e903caddf765b",
      "tree": "106ea87792837ccee1476687d9f9a067f96488a9",
      "parents": [
        "64e7c440618998fd69eee6ab490b042d12248021"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 13 20:53:42 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 17:03:49 2009 -0500"
      },
      "message": "ftrace: enable filtering only when a function is filtered on\n\nImpact: fix to prevent empty set_ftrace_filter and no ftrace output\n\nThe function filter is used to only trace a given set of functions.\nThe filter is enabled when a function name is echoed into the\nset_ftrace_filter file. But if the name has a typo and the function\nis not found, the filter is enabled, but no function is listed.\n\nThis makes a confusing situation where set_ftrace_filter is empty\nbut no functions ever get enabled for tracing.\n\nFor example:\n\n # cat /debug/tracing/set_ftrace_filter\n\n  #### all functions enabled ####\n\n # echo bad_name \u003e set_ftrace_filter\n # cat /debug/tracing/set_ftrace_filter\n\n # echo function \u003e current_tracer\n # cat trace\n\n  # tracer: nop\n  #\n  #           TASK-PID    CPU#    TIMESTAMP  FUNCTION\n  #              | |       |          |         |\n\nThis patch changes that to only enable filtering if a function\nis set to be filtered on. Now, the filter is not enabled if\na bad name is echoed into set_ftrace_filter.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "64e7c440618998fd69eee6ab490b042d12248021",
      "tree": "384246f895f2697dd6927b776c67755cc13e901d",
      "parents": [
        "9f4801e30ad291e27284e873696da1ead92d68fa"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 13 17:08:48 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 16:55:50 2009 -0500"
      },
      "message": "ftrace: add module command function filter selection\n\nThis patch adds a \"command\" syntax to the function filtering files:\n\n  /debugfs/tracing/set_ftrace_filter\n  /debugfs/tracing/set_ftrace_notrace\n\nOf the format:  \u003cfunction\u003e:\u003ccommand\u003e:\u003cparameter\u003e\n\nThe command is optional, and dependent on the command, so are\nthe parameters.\n\n echo do_fork \u003e set_ftrace_filter\n\nWill only trace \u0027do_fork\u0027.\n\n echo \u0027sched_*\u0027 \u003e set_ftrace_filter\n\nWill only trace functions starting with the letters \u0027sched_\u0027.\n\n echo \u0027*:mod:ext3\u0027 \u003e set_ftrace_filter\n\nWill trace only the ext3 module functions.\n\n echo \u0027*write*:mod:ext3\u0027 \u003e set_ftrace_notrace\n\nWill prevent the ext3 functions with the letters \u0027write\u0027 in\nthe name from being traced.\n\n echo \u0027!*_allocate:mod:ext3\u0027 \u003e set_ftrace_filter\n\nWill remove the functions in ext3 that end with the letters\n\u0027_allocate\u0027 from the ftrace filter.\n\nAlthough this patch implements the \u0027command\u0027 format, only the\n\u0027mod\u0027 command is supported. More commands to follow.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "9f4801e30ad291e27284e873696da1ead92d68fa",
      "tree": "2a374e89f4f4ecb13cbcf8f914076539e9096517",
      "parents": [
        "7f24b31b01a271b62346d9df084b029e48612163"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 13 15:56:43 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 16:49:57 2009 -0500"
      },
      "message": "ftrace: break up ftrace_match_records into smaller components\n\nImpact: clean up\n\nftrace_match_records does a lot of things that other features\ncan use. This patch breaks up ftrace_match_records and pulls\nout ftrace_setup_glob and ftrace_match_record.\n\nftrace_setup_glob prepares a simple glob expression for use with\nftrace_match_record. ftrace_match_record compares a single record\nwith a glob type.\n\nBreaking this up will allow for more features to run on individual\nrecords.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "7f24b31b01a271b62346d9df084b029e48612163",
      "tree": "ad611a62206455b128db3032bf1a535207b1d20f",
      "parents": [
        "265c831cb03d533cbe159af45798ac9fef534260"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 13 14:37:33 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 16:33:15 2009 -0500"
      },
      "message": "ftrace: rename ftrace_match to ftrace_match_records\n\nImpact: clean up\n\nftrace_match is too generic of a name. What it really does is\nsearch all records and matches the records with the given string,\nand either sets or unsets the functions to be traced depending\non if the parameter \u0027enable\u0027 is set or not.\n\nThis allows us to make another function called ftrace_match that\ncan be used to test a single record.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "265c831cb03d533cbe159af45798ac9fef534260",
      "tree": "d00548a034b3092f8f42086f348c70b784c1df5e",
      "parents": [
        "0c75a3ed633419d75d823d5dcb05d42924c6ae61"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 13 12:43:56 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 16:25:12 2009 -0500"
      },
      "message": "ftrace: add do_for_each_ftrace_rec and while_for_each_ftrace_rec\n\nImpact: clean up\n\nTo iterate over all the functions that dynamic trace knows about\nit requires two for loops. One to iterate over the pages and the\nother to iterate over the records within the page.\n\nThere are several duplications of these loops in ftrace.c. This\npatch creates the macros do_for_each_ftrace_rec and\nwhile_for_each_ftrace_rec to handle this logic, and removes the\nduplicate code.\n\nWhile making this change, I also discovered and fixed a small\nbug that one of the iterations should exit the loop after it found the\nrecord it was searching for. This used a break when it should have\nused a goto, since there were two loops it needed to break out\nfrom.  No real harm was done by this bug since it would only continue\nto search the other records, and the code was in a slow path anyway.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "0c75a3ed633419d75d823d5dcb05d42924c6ae61",
      "tree": "1878804d15a37d1c1603d906933cee0e7b5c8787",
      "parents": [
        "5fb896a4e916e72efec4772b66be1cce3d6a9143"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 11:21:52 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 16:21:35 2009 -0500"
      },
      "message": "ftrace: state that all functions are enabled in set_ftrace_filter\n\nImpact: clean up, make set_ftrace_filter less confusing\n\nThe set_ftrace_filter shows only the functions that will be traced.\nBut when it is empty, it will trace all functions. This can be a bit\nconfusing.\n\nThis patch makes set_ftrace_filter show:\n\n  #### all functions enabled ####\n\nWhen all functions will be traced, and we do not filter only a select\nfew.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "72b623c73685e86b70a51855e1058ebc98a9f6ed",
      "tree": "ce0942ca907ad09480358076fd2724f8c1d10547",
      "parents": [
        "9abd60304816a5b0fd9e51034f78e3eaed89f901",
        "b5f9fd0f8a05c9bafb91a9a85b9110938d8e585b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 15 20:43:03 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 15 20:43:03 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/power-tracer\n"
    },
    {
      "commit": "a234aa9ecdf47a5461573a21dc0b154278df5ba8",
      "tree": "35b53e048a4298e43de45883b446303ba17daee9",
      "parents": [
        "9abd60304816a5b0fd9e51034f78e3eaed89f901"
      ],
      "author": {
        "name": "Rakib Mullick",
        "email": "rakib.mullick@gmail.com",
        "time": "Sat Feb 14 09:36:00 2009 +0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 15 20:41:08 2009 +0100"
      },
      "message": "tracing: fix section mismatch in trace_hw_branches.c\n\nThe function bts_trace_init() references a variable\nbts_hotcpu_notifier which is marked\nas __cpuinitdata. Thus causes section mismatch. This patch fixes it.\n\n   LD      kernel/trace/built-in.o\n WARNING: kernel/trace/built-in.o(.text+0xc90c): Section mismatch in\n reference from the function bts_trace_init() to the variable\n .cpuinit.data:bts_hotcpu_notifier\n The function bts_trace_init() references\n the variable __cpuinitdata bts_hotcpu_notifier.\n This is often because bts_trace_init lacks a __cpuinitdata\n annotation or the annotation of bts_hotcpu_notifier is wrong.\n\n WARNING: kernel/trace/built-in.o(.text+0xc92a): Section mismatch in\n reference from the function bts_trace_reset() to the variable\n .cpuinit.data:bts_hotcpu_notifier\n The function bts_trace_reset() references\n the variable __cpuinitdata bts_hotcpu_notifier.\n This is often because bts_trace_reset lacks a __cpuinitdata\n annotation or the annotation of bts_hotcpu_notifier is wrong.\n\nSigned-off-by: Rakib Mullick \u003crakib.mullick@gmail.com\u003e\nCc: markus.t.metzger@gmail.com\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6bc5c366b1a45ca18fba6851f62db5743b3f6db5",
      "tree": "c3e2a092760b2eca5ff052cbea77cc84502b8016",
      "parents": [
        "391b170f10e669dd429aa47bce998c2fa839404c"
      ],
      "author": {
        "name": "Pekka Paalanen",
        "email": "pq@iki.fi",
        "time": "Sat Jan 03 21:23:51 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 15 20:03:28 2009 +0100"
      },
      "message": "trace: mmiotrace to the tracer menu in Kconfig\n\nImpact: cosmetic change in Kconfig menu layout\n\nThis patch was originally suggested by Peter Zijlstra, but seems it\nwas forgotten.\n\nCONFIG_MMIOTRACE and CONFIG_MMIOTRACE_TEST were selectable\ndirectly under the Kernel hacking / debugging menu in the kernel\nconfiguration system. They were present only for x86 and x86_64.\n\nOther tracers that use the ftrace tracing framework are in their own\nsub-menu. This patch moves the mmiotrace configuration options there.\nSince the Kconfig file, where the tracer menu is, is not architecture\nspecific, HAVE_MMIOTRACE_SUPPORT is introduced and provided only by\nx86/x86_64. CONFIG_MMIOTRACE now depends on it.\n\nSigned-off-by: Pekka Paalanen \u003cpq@iki.fi\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "391b170f10e669dd429aa47bce998c2fa839404c",
      "tree": "0bb0cb203ced1fc1f5ed71832fbfb21fdbe8047f",
      "parents": [
        "d2f8d7ee1a9b4650b4e43325b321801264f7c37a"
      ],
      "author": {
        "name": "Pekka Paalanen",
        "email": "pq@iki.fi",
        "time": "Tue Jan 06 13:57:11 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 15 20:02:42 2009 +0100"
      },
      "message": "mmiotrace: count events lost due to not recording\n\nImpact: enhances lost events counting in mmiotrace\n\nThe tracing framework, or the ring buffer facility it uses, has a switch\nto stop recording data. When recording is off, the trace events will be\nlost. The framework does not count these, so mmiotrace has to count them\nitself.\n\nSigned-off-by: Pekka Paalanen \u003cpq@iki.fi\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b5f9fd0f8a05c9bafb91a9a85b9110938d8e585b",
      "tree": "14e84d393f5dd1235fc6e256564d80e965daf3a7",
      "parents": [
        "45141d4667d208421ca787a3301542b6a5e0b112"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Wed Feb 11 13:57:25 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 13 09:06:18 2009 -0500"
      },
      "message": "tracing: convert c/p state power tracer to use tracepoints\n\nConvert the c/p state \"power\" tracer to use tracepoints. Avoids a\nfunction call when the tracer is disabled.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "d351c8db95953b1b673de3966cb39640dc6c2f5f",
      "tree": "a080910d3ced94780e5d16401f7aab4e3d777c8d",
      "parents": [
        "1c511f740fe7031867f51831854360e8be1ba34c",
        "45141d4667d208421ca787a3301542b6a5e0b112"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 13 10:26:45 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 13 10:26:45 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "1c511f740fe7031867f51831854360e8be1ba34c",
      "tree": "bd678fbc8117f751a3d1f8dc93b91c215ceaf66f",
      "parents": [
        "e7669b8e329255bbcb40af65b38e342825d97a46",
        "00f62f614bb713027b9296068d1879fbca511eb7",
        "b22f4858126a6aa852ad745b94f6b25dbdea708e",
        "071a0bc2ceace31266836801510879407a3701fa"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 13 10:25:18 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 13 10:25:18 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027, \u0027tracing/ring-buffer\u0027, \u0027tracing/sysprof\u0027, \u0027tracing/urgent\u0027 and \u0027linus\u0027 into tracing/core\n"
    },
    {
      "commit": "45141d4667d208421ca787a3301542b6a5e0b112",
      "tree": "7f1cedbd431b9b01345730e338c179e6bb8029ad",
      "parents": [
        "e7669b8e329255bbcb40af65b38e342825d97a46"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 12 13:19:48 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 12 13:39:46 2009 -0500"
      },
      "message": "ring-buffer: rename label out_unlock to out_reset\n\nImpact: clean up\n\nWhile reviewing the ring buffer code, I thougth I saw a bug with\n\n\tif (!__raw_spin_trylock(\u0026cpu_buffer-\u003elock))\n\t\tgoto out_unlock;\n\nBut I forgot that we use a variable \"lock_taken\" that is set if\nthe spinlock is taken, and only unlock it if that variable is set.\n\nTo avoid further confusion from other reviewers, this patch\nrenames the label out_unlock with out_reset, which is the more\nappropriate name.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "00f62f614bb713027b9296068d1879fbca511eb7",
      "tree": "682f45c89a43c4bbde751b75764dd62e8fe09c7e",
      "parents": [
        "d524e03207591a6de7e6b5069aabc778e3f0f5f8"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Feb 09 17:04:06 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 11 13:21:40 2009 +0100"
      },
      "message": "ring_buffer: pahole struct ring_buffer\n\nWhile fixing some bugs in pahole (built-in.o files were not being\nprocessed due to relocation problems) I found out about these packable\nstructures:\n\n$ pahole --packable kernel/trace/ring_buffer.o  | grep ring\nring_buffer\t72\t64\t8\nring_buffer_per_cpu\t112\t104\t8\n\nIf we take a look at the current layout of struct ring_buffer we can see\nthat we have two 4 bytes holes.\n\n$ pahole -C ring_buffer kernel/trace/ring_buffer.o\nstruct ring_buffer {\n\tunsigned int               pages;           /*     0     4 */\n\tunsigned int               flags;           /*     4     4 */\n\tint                        cpus;            /*     8     4 */\n\n\t/* XXX 4 bytes hole, try to pack */\n\n\tcpumask_var_t              cpumask;         /*    16     8 */\n\tatomic_t                   record_disabled; /*    24     4 */\n\n\t/* XXX 4 bytes hole, try to pack */\n\n\tstruct mutex               mutex;           /*    32    32 */\n\t/* --- cacheline 1 boundary (64 bytes) --- */\n\tstruct ring_buffer_per_cpu * * buffers;     /*    64     8 */\n\n\t/* size: 72, cachelines: 2, members: 7 */\n\t/* sum members: 64, holes: 2, sum holes: 8 */\n\t/* last cacheline: 8 bytes */\n};\n\nSo, if I ask pahole to reorganize it:\n\n$ pahole -C ring_buffer --reorganize kernel/trace/ring_buffer.o\n\nstruct ring_buffer {\n\tunsigned int               pages;           /*     0     4 */\n\tunsigned int               flags;           /*     4     4 */\n\tint                        cpus;            /*     8     4 */\n\tatomic_t                   record_disabled; /*    12     4 */\n\tcpumask_var_t              cpumask;         /*    16     8 */\n\tstruct mutex               mutex;           /*    24    32 */\n\tstruct ring_buffer_per_cpu * * buffers;     /*    56     8 */\n\t/* --- cacheline 1 boundary (64 bytes) --- */\n\n\t/* size: 64, cachelines: 1, members: 7 */\n};   /* saved 8 bytes and 1 cacheline! */\n\nWe get it using just one 64 bytes cacheline.\n\nTo see what it did:\n\n$ pahole -C ring_buffer --reorganize --show_reorg_steps \\\n\tkernel/trace/ring_buffer.o | grep \\/\n/* Moving \u0027record_disabled\u0027 from after \u0027cpumask\u0027 to after \u0027cpus\u0027 */\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b22f4858126a6aa852ad745b94f6b25dbdea708e",
      "tree": "6dc35af9c91144e45938a1fb6c0f28bcd685d50d",
      "parents": [
        "d524e03207591a6de7e6b5069aabc778e3f0f5f8"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Feb 10 15:49:11 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 11 12:55:19 2009 +0100"
      },
      "message": "tracing/sysprof: add missing tracing_{start,stop}_record_cmdline()\n\nAdd the missing pair tracing_{start,stop}_record_cmdline() to record well\nthe cmdline associated with pid.\n\nChanges in v2:\n\n- fix a build error, the sched_switch tracer is needed to record the\n  cmdline.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e7669b8e329255bbcb40af65b38e342825d97a46",
      "tree": "2abe83b7fc90a458c75db0f852c36aa757850673",
      "parents": [
        "5e39841c45cf5e6ea930ede1b0303309e03037a2"
      ],
      "author": {
        "name": "Hannes Eder",
        "email": "hannes@hanneseder.net",
        "time": "Tue Feb 10 19:44:45 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 11 10:15:42 2009 +0100"
      },
      "message": "tracing: fix sparse warning: attribute function with __acquires/__releases\n\nFix this sparse warning:\n\n  kernel/trace/trace.c:458:9: warning: context imbalance in \u0027register_tracer\u0027 - unexpected unlock\n\nSigned-off-by: Hannes Eder \u003channes@hanneseder.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5e39841c45cf5e6ea930ede1b0303309e03037a2",
      "tree": "f92c8d042c07f423c6300f570f3c3b6ae4613f90",
      "parents": [
        "4fd2735881bf4d8bf5e30979f31fc2f1b1d505fa"
      ],
      "author": {
        "name": "Hannes Eder",
        "email": "hannes@hanneseder.net",
        "time": "Tue Feb 10 19:44:34 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 11 10:15:42 2009 +0100"
      },
      "message": "tracing: fix sparse warnings: fix (un-)signedness\n\nFix these sparse warnings:\n\n  kernel/trace/ring_buffer.c:70:37: warning: incorrect type in argument 2 (different signedness)\n  kernel/trace/ring_buffer.c:84:39: warning: incorrect type in argument 2 (different signedness)\n  kernel/trace/ring_buffer.c:96:43: warning: incorrect type in argument 2 (different signedness)\n  kernel/trace/ring_buffer.c:2475:13: warning: incorrect type in argument 2 (different signedness)\n  kernel/trace/ring_buffer.c:2475:13: warning: incorrect type in argument 2 (different signedness)\n  kernel/trace/ring_buffer.c:2478:42: warning: incorrect type in argument 2 (different signedness)\n  kernel/trace/ring_buffer.c:2478:42: warning: incorrect type in argument 2 (different signedness)\n  kernel/trace/ring_buffer.c:2500:40: warning: incorrect type in argument 3 (different signedness)\n  kernel/trace/ring_buffer.c:2505:44: warning: incorrect type in argument 2 (different signedness)\n  kernel/trace/ring_buffer.c:2507:46: warning: incorrect type in argument 2 (different signedness)\n  kernel/trace/trace.c:2130:40: warning: incorrect type in argument 3 (different signedness)\n  kernel/trace/trace.c:2280:40: warning: incorrect type in argument 3 (different signedness)\n\nSigned-off-by: Hannes Eder \u003channes@hanneseder.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4fd2735881bf4d8bf5e30979f31fc2f1b1d505fa",
      "tree": "09f923acc762038aad786e1acf1065db9dd072eb",
      "parents": [
        "4040068dce64f75c9d414f41fc2fb314a44bad65"
      ],
      "author": {
        "name": "Hannes Eder",
        "email": "hannes@hanneseder.net",
        "time": "Tue Feb 10 19:44:12 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 11 10:15:41 2009 +0100"
      },
      "message": "tracing: fix sparse warnings: make symbols static\n\nImpact: make global variables and a global function static\n\nThe function \u0027__trace_userstack\u0027 does not seem to have a caller, so it\nis commented out.\n\nFix this sparse warnings:\n  kernel/trace/trace.c:82:5: warning: symbol \u0027tracing_disabled\u0027 was not declared. Should it be static?\n  kernel/trace/trace.c:600:10: warning: symbol \u0027trace_record_cmdline_disabled\u0027 was not declared. Should it be static?\n  kernel/trace/trace.c:957:6: warning: symbol \u0027__trace_userstack\u0027 was not declared. Should it be static?\n  kernel/trace/trace.c:1694:5: warning: symbol \u0027tracing_release\u0027 was not declared. Should it be static?\n\nSigned-off-by: Hannes Eder \u003channes@hanneseder.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c3706f005c3aaf570e71f0f083fdbb59a5a9fa2e",
      "tree": "b4fab26095cd08403a86d976c90320f5053bcc08",
      "parents": [
        "810dc73265cd690b2bc6010489b4317bba2cda39"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Tue Feb 10 01:03:18 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 10 12:32:35 2009 -0500"
      },
      "message": "tracing: fix typos in comments\n\nImpact: clean up.\n\nFix typos in the comments.\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "810dc73265cd690b2bc6010489b4317bba2cda39",
      "tree": "5cc203b18962bdf92dc065da933737cd04b8a2d2",
      "parents": [
        "f54fc98aa656f334c1571df6e3ca9178ea223847"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Tue Feb 10 01:03:05 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 10 12:32:33 2009 -0500"
      },
      "message": "tracing: provide correct return value after outputting the event\n\nThis patch is to make the function return early on failure, and give\ncorrect return value on success.\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "f54fc98aa656f334c1571df6e3ca9178ea223847",
      "tree": "cf6b0a206d8fc67a7fe989ac11f09af746026fcf",
      "parents": [
        "4543ae7ce1cb8b5ff27a59009e7991ea63791a71"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Tue Feb 10 01:02:46 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 10 12:32:18 2009 -0500"
      },
      "message": "tracing: remove unneeded variable\n\nImpact: clean up.\n\nRemove the unnecessary variable ret.\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "4543ae7ce1cb8b5ff27a59009e7991ea63791a71",
      "tree": "6b4ec60c4118bc4a9990f2052e7cd71a7ddbef09",
      "parents": [
        "966657883fdc3a2883a5e641ca4ec8f79ffb8ecd"
      ],
      "author": {
        "name": "Tobias Klauser",
        "email": "tklauser@distanz.ch",
        "time": "Mon Feb 09 23:09:32 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 10 11:58:45 2009 -0500"
      },
      "message": "tracing: storage class should be before const qualifier\n\nThe C99 specification states in section 6.11.5:\n\nThe placement of a storage-class specifier other than at the beginning\nof the declaration specifiers in a declaration is an obsolescent\nfeature.\n\nSigned-off-by: Tobias Klauser \u003ctklauser@distanz.ch\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "667d24125839b6f3363d8177d7ed9fab8a40e45f",
      "tree": "be090ba5c44386556c143348b83266230ad4fb47",
      "parents": [
        "b85fa01ed958ca59523a2db3c2ee647b98745d6a"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Mon Feb 09 14:21:17 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 10 09:17:37 2009 -0500"
      },
      "message": "ring_buffer: fix ring_buffer_read_page()\n\nImpact: change API and init bpage when copy\n\nring_buffer_read_page()/rb_remove_entries() may be called for\na partially consumed page.\n\nAdd a parameter for rb_remove_entries() and make it update\ncpu_buffer-\u003eentries correctly for partially consumed pages.\n\nring_buffer_read_page() now returns the offset to the next event.\n\nInit the bpage\u0027s time_stamp when return value is 0.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "b85fa01ed958ca59523a2db3c2ee647b98745d6a",
      "tree": "8afcb14110ff875e53a98f0df2c2f427389c2bf0",
      "parents": [
        "34cd4998d38f9bd04f34b78a7cb0c7f1bee00bd9"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Mon Feb 09 14:21:14 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 10 09:17:19 2009 -0500"
      },
      "message": "ring_buffer: fix typing mistake\n\nImpact: Fix bug\n\nI found several very very curious line.\nIt\u0027s so curious that it may be brought by typing mistake.\n\nWhen (cpu_buffer-\u003ereader_page \u003d\u003d cpu_buffer-\u003ecommit_page):\n\n1) We haven\u0027t copied it for bpage is changed:\n   bpage \u003d cpu_buffer-\u003ereader_page-\u003epage;\n   memcpy(bpage-\u003edata, cpu_buffer-\u003ereader_page-\u003epage-\u003edata + read ... )\n2) We need update cpu_buffer-\u003ereader_page-\u003eread, but\n   \"cpu_buffer-\u003ereader_page +\u003d read;\" is not right.\n\n[\n  This bug was a typo. The commit-\u003ereader_page is a page pointer\n  and not an index into the page. The line should have been\n  commit-\u003ereader_page-\u003eread +\u003d read.  The other changes\n  by Lai are nice clean ups to the code.  - SDR\n]\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "34cd4998d38f9bd04f34b78a7cb0c7f1bee00bd9",
      "tree": "05fa5a4418a95119d4448fb49bd8d7d6240ed616",
      "parents": [
        "ff98781bab2735e6c89793034173e0cb5007a7e5"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 09 12:06:29 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 09 12:24:58 2009 -0500"
      },
      "message": "tracing: clean up splice code\n\nIngo Molnar suggested a series of clean ups for the splice code.\nThis patch implements those suggestions.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "ff98781bab2735e6c89793034173e0cb5007a7e5",
      "tree": "e79e4c329896018cd9ca97192292632ad7c43007",
      "parents": [
        "3c56819b14b00dd449bd776303e61f8532fad09f"
      ],
      "author": {
        "name": "Eduard - Gabriel Munteanu",
        "email": "eduard.munteanu@linux360.ro",
        "time": "Mon Feb 09 08:15:55 2009 +0200"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 09 12:24:51 2009 -0500"
      },
      "message": "tracing: Move pipe waiting code out of tracing_read_pipe().\n\nThis moves the pipe waiting code from tracing_read_pipe() into\ntracing_wait_pipe(), which is useful to implement other fops, like\nsplice_read.\n\nSigned-off-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "3c56819b14b00dd449bd776303e61f8532fad09f",
      "tree": "5a0617aa39fa441673382cf69d873b1906146e7e",
      "parents": [
        "b91facc367366b3f71375f337eb5997ec9ab4e69"
      ],
      "author": {
        "name": "Eduard - Gabriel Munteanu",
        "email": "eduard.munteanu@linux360.ro",
        "time": "Mon Feb 09 08:15:56 2009 +0200"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 09 12:24:34 2009 -0500"
      },
      "message": "tracing: splice support for tracing_pipe\n\nAdded and implemented tracing_pipe_fops-\u003esplice_read(). This allows\nuserspace programs to get tracing data more efficiently.\n\nSigned-off-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "b91facc367366b3f71375f337eb5997ec9ab4e69",
      "tree": "1f7c8914f493080cadcfdec23b33d9a5936fe98b",
      "parents": [
        "1dfba05d0f1a9b4245bb242a7c17fe448811a520"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Feb 06 18:30:44 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 09 12:37:27 2009 +0100"
      },
      "message": "tracing/function-graph-tracer: handle the leaf functions from trace_pipe\n\nWhen one cats the trace file, the leaf functions are printed without brackets:\n\n function();\n\nwhereas in the trace_pipe file we\u0027ll see the following:\n\n function() {\n }\n\nThis is because the ring_buffer handling is not the same between those two files.\nOn the trace file, when an entry is printed, the iterator advanced and then we can\ncheck the next entry.\n\nThere is no iterator with trace_pipe, the current entry to print has been peeked\nand not consumed. So checking the next entry will still return the current one while\nwe don\u0027t consume it.\n\nThis patch introduces a new value for the output callbacks to ask the tracing\ncore to not consume the current entry after printing it.\n\nWe need it because we will have to consume the current entry ourself to check\nthe next one.\n\nNow the trace_pipe is able to handle well the leaf functions.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1dfba05d0f1a9b4245bb242a7c17fe448811a520",
      "tree": "c3452c4c41b6e7d9660fe49464238dae004fbd0b",
      "parents": [
        "b5db03c4355e568f1567758287b30a6a262d5057"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 09 12:06:54 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 09 12:07:28 2009 +0100"
      },
      "message": "tracing/blktrace: move the tracing file to kernel/trace, fix\n\nImpact: build fix\n\nThe BLK_DEV_IO_TRACE entry used to be in block/Kconfig - which\nfile itself was dependent on CONFIG_BLOCK. But now the entry is\nin kernel/trace/Kconfig - which is present even on !CONFIG_BLOCK.\n\nSo add a \u0027depends on BLOCK\u0027 to BLK_DEV_IO_TRACE.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b5db03c4355e568f1567758287b30a6a262d5057",
      "tree": "efdeb3041099a6946e2c5104aadfb78bcdf5a76e",
      "parents": [
        "3861a17bcc0af815f684c6178bc9ec2d790c350e"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Feb 07 18:52:59 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 09 10:56:53 2009 +0100"
      },
      "message": "tracing: handle unregistering the current tracer\n\nImpact: simplification\n\nInstead of requiring that plugins have the sequence:\n\n  my_tracer_stop(my_trace_array);\n  unregister_tracer(my_tracer);\n\nit should be possible just do a:\n\n  unregister_tracer(my_tracer);\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1292211058aaf872eeb2a0e2677d237916b4501f",
      "tree": "7127ffe80e42faed85bf45b4182c97a39f299642",
      "parents": [
        "7447dce96f2233d250bc39a4a10a42f7c3dd46fc"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Feb 07 22:16:12 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 09 10:51:38 2009 +0100"
      },
      "message": "tracing/power: move the power trace headers to a dedicated file\n\nImpact: cleanup\n\nMove the power tracer headers to trace/power.h to keep ftrace.h and power bits\nmore easy to maintain as separated topics.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7447dce96f2233d250bc39a4a10a42f7c3dd46fc",
      "tree": "c02c991cca658e69a0c83c1a93b068df1d5caa53",
      "parents": [
        "2db270a80b8f2238e536876cfb3987af02684df8"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Feb 07 21:33:57 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 09 10:51:37 2009 +0100"
      },
      "message": "tracing/function-graph-tracer: provide a selftest for the function graph tracer\n\nMaking it more easy to do a basic regression test for this tracer.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2db270a80b8f2238e536876cfb3987af02684df8",
      "tree": "352bf63f9d48cf686a2a36c157707789a29fe7d1",
      "parents": [
        "44b0635481437140b0e29d6023f05e805d5e7620"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Feb 07 20:46:45 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 09 10:51:02 2009 +0100"
      },
      "message": "tracing/blktrace: move the tracing file to kernel/trace\n\nImpact: cleanup\n\nMove blktrace.c to kernel/trace, also move its config entry.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "44b0635481437140b0e29d6023f05e805d5e7620",
      "tree": "ff31986115075410d0479df307a6b9841976026c",
      "parents": [
        "4ad476e11f94fd3724c6e272d8220e99cd222b27",
        "57794a9d48b63e34acbe63282628c9f029603308"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 09 10:35:12 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 09 10:35:12 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/core/devel\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n\nConflicts:\n\tkernel/trace/trace_hw_branches.c\n"
    },
    {
      "commit": "57794a9d48b63e34acbe63282628c9f029603308",
      "tree": "ed42d073f82cd91b8d8a331c60814aa699c3293d",
      "parents": [
        "a81bd80a0b0a405dc0483e2c428332d69da2c79f"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Fri Feb 06 17:33:27 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 07 20:03:36 2009 -0500"
      },
      "message": "trace: trivial fixes in comment typos.\n\nImpact: clean up\n\nFixed several typos in the comments.\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "a81bd80a0b0a405dc0483e2c428332d69da2c79f",
      "tree": "8543662a0ad8199bde641c1fd4a42929d684ffaf",
      "parents": [
        "9a5fd902273d01170fd033691bd70b142baa7309"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 06 01:45:16 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 07 20:03:33 2009 -0500"
      },
      "message": "ring-buffer: use generic version of in_nmi\n\nImpact: clean up\n\nNow that a generic in_nmi is available, this patch removes the\nspecial code in the ring_buffer and implements the in_nmi generic\nversion instead.\n\nWith this change, I was also able to rename the \"arch_ftrace_nmi_enter\"\nback to \"ftrace_nmi_enter\" and remove the code from the ring buffer.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "78d904b46a72fcf15ea6a39672bbef92953876b5",
      "tree": "69f56f7bbd1866491517d902bdf18ab973f0eb5f",
      "parents": [
        "1830b52d0de8c60c4f5dfbac134aa8f69d815801"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 05 18:43:07 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 07 20:00:17 2009 -0500"
      },
      "message": "ring-buffer: add NMI protection for spinlocks\n\nImpact: prevent deadlock in NMI\n\nThe ring buffers are not yet totally lockless with writing to\nthe buffer. When a writer crosses a page, it grabs a per cpu spinlock\nto protect against a reader. The spinlocks taken by a writer are not\nto protect against other writers, since a writer can only write to\nits own per cpu buffer. The spinlocks protect against readers that\ncan touch any cpu buffer. The writers are made to be reentrant\nwith the spinlocks disabling interrupts.\n\nThe problem arises when an NMI writes to the buffer, and that write\ncrosses a page boundary. If it grabs a spinlock, it can be racing\nwith another writer (since disabling interrupts does not protect\nagainst NMIs) or with a reader on the same CPU. Luckily, most of the\nusers are not reentrant and protects against this issue. But if a\nuser of the ring buffer becomes reentrant (which is what the ring\nbuffers do allow), if the NMI also writes to the ring buffer then\nwe risk the chance of a deadlock.\n\nThis patch moves the ftrace_nmi_enter called by nmi_enter() to the\nring buffer code. It replaces the current ftrace_nmi_enter that is\nused by arch specific code to arch_ftrace_nmi_enter and updates\nthe Kconfig to handle it.\n\nWhen an NMI is called, it will set a per cpu variable in the ring buffer\ncode and will clear it when the NMI exits. If a write to the ring buffer\ncrosses page boundaries inside an NMI, a trylock is used on the spin\nlock instead. If the spinlock fails to be acquired, then the entry\nis discarded.\n\nThis bug appeared in the ftrace work in the RT tree, where event tracing\nis reentrant. This workaround solved the deadlocks that appeared there.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "1830b52d0de8c60c4f5dfbac134aa8f69d815801",
      "tree": "2aa803853ac145fedd0d65324d77f64d25e7b3a2",
      "parents": [
        "43769f10b4826376cbf4ce17af74a5b4e8dc4fcd"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 07 19:38:43 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 07 19:38:43 2009 -0500"
      },
      "message": "trace: remove deprecated entry-\u003ecpu\n\nImpact: fix to prevent developers from using entry-\u003ecpu\n\nWith the new ring buffer infrastructure, the cpu for the entry is\nimplicit with which CPU buffer it is on.\n\nThe original code use to record the current cpu into the generic\nentry header, which can be retrieved by entry-\u003ecpu. When the\nring buffer was introduced, the users were convert to use the\nthe cpu number of which cpu ring buffer was in use (this was passed\nto the tracers by the iterator: iter-\u003ecpu).\n\nUnfortunately, the cpu item in the entry structure was never removed.\nThis allowed for developers to use it instead of the proper iter-\u003ecpu,\nunknowingly, using an uninitialized variable. This was not the fault\nof the developers, since it would seem like the logical place to\nretrieve the cpu identifier.\n\nThis patch removes the cpu item from the entry structure and fixes\nall the users that should have been using iter-\u003ecpu.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "b6f11df26fdc28324cf9c9e3b77f2dc985c1bb13",
      "tree": "e03b4b8b9dad8a2d3f81574c10aab8fb7a779cbb",
      "parents": [
        "51a763dd84253bab1d0a1e68e11a7753d1b702ca"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Feb 05 18:02:00 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 06 01:01:41 2009 +0100"
      },
      "message": "trace: Call tracing_reset_online_cpus before tracer-\u003einit()\n\nImpact: cleanup\n\nTo make it easy for ftrace plugin writers, as this was open coded in\nthe existing plugins\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nAcked-by: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "51a763dd84253bab1d0a1e68e11a7753d1b702ca",
      "tree": "2cc2cf0509db480391c585786285267e360c1338",
      "parents": [
        "0a9877514c4fed10a70720293b37213dd172ee3e"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Feb 05 16:14:13 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 06 01:01:41 2009 +0100"
      },
      "message": "tracing: Introduce trace_buffer_{lock_reserve,unlock_commit}\n\nImpact: new API\n\nThese new functions do what previously was being open coded, reducing\nthe number of details ftrace plugin writers have to worry about.\n\nIt also standardizes the handling of stacktrace, userstacktrace and\nother trace options we may introduce in the future.\n\nWith this patch, for instance, the blk tracer (and some others already\nin the tree) can use the \"userstacktrace\" /d/tracing/trace_options\nfacility.\n\n$ codiff /tmp/vmlinux.before /tmp/vmlinux.after\nlinux-2.6-tip/kernel/trace/trace.c:\n  trace_vprintk              |   -5\n  trace_graph_return         |  -22\n  trace_graph_entry          |  -26\n  trace_function             |  -45\n  __ftrace_trace_stack       |  -27\n  ftrace_trace_userstack     |  -29\n  tracing_sched_switch_trace |  -66\n  tracing_stop               |   +1\n  trace_seq_to_user          |   -1\n  ftrace_trace_special       |  -63\n  ftrace_special             |   +1\n  tracing_sched_wakeup_trace |  -70\n  tracing_reset_online_cpus  |   -1\n 13 functions changed, 2 bytes added, 355 bytes removed, diff: -353\n\nlinux-2.6-tip/block/blktrace.c:\n  __blk_add_trace |  -58\n 1 function changed, 58 bytes removed, diff: -58\n\nlinux-2.6-tip/kernel/trace/trace.c:\n  trace_buffer_lock_reserve  |  +88\n  trace_buffer_unlock_commit |  +86\n 2 functions changed, 174 bytes added, diff: +174\n\n/tmp/vmlinux.after:\n 16 functions changed, 176 bytes added, 413 bytes removed, diff: -237\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nAcked-by: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0a9877514c4fed10a70720293b37213dd172ee3e",
      "tree": "7f21548126d448d96116f57f2c7927fa2b2c7ddd",
      "parents": [
        "dac74940289f350c2590bec92737833bad608541"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Feb 05 16:12:56 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 06 01:01:40 2009 +0100"
      },
      "message": "ring_buffer: remove unused flags parameter\n\nImpact: API change, cleanup\n\n\u003eFrom ring_buffer_{lock_reserve,unlock_commit}.\n\n$ codiff /tmp/vmlinux.before /tmp/vmlinux.after\nlinux-2.6-tip/kernel/trace/trace.c:\n  trace_vprintk              |  -14\n  trace_graph_return         |  -14\n  trace_graph_entry          |  -10\n  trace_function             |   -8\n  __ftrace_trace_stack       |   -8\n  ftrace_trace_userstack     |   -8\n  tracing_sched_switch_trace |   -8\n  ftrace_trace_special       |  -12\n  tracing_sched_wakeup_trace |   -8\n 9 functions changed, 90 bytes removed, diff: -90\n\nlinux-2.6-tip/block/blktrace.c:\n  __blk_add_trace |   -1\n 1 function changed, 1 bytes removed, diff: -1\n\n/tmp/vmlinux.after:\n 10 functions changed, 91 bytes removed, diff: -91\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nAcked-by: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dac74940289f350c2590bec92737833bad608541",
      "tree": "94ee2c4b8c365b3e53ae735f0e3ac6b8e9df6949",
      "parents": [
        "7be421510b91491d5aa5a29fa1005712039b95af"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 05 01:13:38 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 05 14:35:47 2009 +0100"
      },
      "message": "trace: code style clean up\n\nIngo Molnar suggested using goto logic to keep the indentation\ndown and to be able to remove the nasty line breaks. This actually\nmakes the code a bit more readable.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7be421510b91491d5aa5a29fa1005712039b95af",
      "tree": "43c85cd688ea4e33b32816bb3f363215d572f052",
      "parents": [
        "97e5b191ae7dc0f4f5b82b9db29782928b103b4d"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Feb 05 01:13:37 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 05 14:35:47 2009 +0100"
      },
      "message": "trace: Remove unused trace_array_cpu parameter\n\nImpact: cleanup\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "97e5b191ae7dc0f4f5b82b9db29782928b103b4d",
      "tree": "4281b1d95a437ab6fd2a0ff451888744f9541f16",
      "parents": [
        "268ccda0cb4d1292029d07ee3dbd07117baf6ecb"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Feb 05 01:13:36 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 05 14:35:46 2009 +0100"
      },
      "message": "trace_branch: Remove unused function\n\nImpact: cleanup\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "268ccda0cb4d1292029d07ee3dbd07117baf6ecb",
      "tree": "7683e02758d3f768ad21414abf39b00773e87940",
      "parents": [
        "43769f10b4826376cbf4ce17af74a5b4e8dc4fcd"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Feb 04 20:16:39 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 05 14:35:46 2009 +0100"
      },
      "message": "trace: assign defaults at register_ftrace_event\n\nImpact: simplification of tracers\n\nAs all tracers are doing this we might as well do it in\nregister_ftrace_event and save one branch each time we call these\ncallbacks.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ae7462b4f1fe1f36b5d562dbd5202a2eba01f072",
      "tree": "ceb9db3c0e90d4a459dac695ca7b2e2fddf70b32",
      "parents": [
        "d9793bd8018f835c64b10f44e278c86cecb8e932"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Feb 03 22:05:50 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 04 20:48:39 2009 +0100"
      },
      "message": "trace: make the trace_event callbacks return enum print_line_t\n\nAs they actually all return these enumerators.\n\nReported-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d9793bd8018f835c64b10f44e278c86cecb8e932",
      "tree": "da5ad9bc8f3fc7b4eb4ecd398f7c52a6f112d544",
      "parents": [
        "ce70a0b472e06feae3a580ecb3fbef1e1e020a9b"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Feb 03 20:20:41 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 04 20:48:30 2009 +0100"
      },
      "message": "trace: judicious error checking of trace_seq results\n\nImpact: bugfix and cleanup\n\nSome callsites were returning either TRACE_ITER_PARTIAL_LINE if the\ntrace_seq routines (trace_seq_printf, etc) returned 0 meaning its buffer\nwas full, or zero otherwise.\n\nBut...\n\n/* Return values for print_line callback */\nenum print_line_t {\n        TRACE_TYPE_PARTIAL_LINE \u003d 0,    /* Retry after flushing the seq */\n        TRACE_TYPE_HANDLED      \u003d 1,\n        TRACE_TYPE_UNHANDLED    \u003d 2     /* Relay to other output functions */\n};\n\nIn other cases the return value was not being relayed at all.\n\nMost of the time it didn\u0027t hurt because the page wasn\u0027t get filled, but\nfor correctness sake, handle the return values everywhere.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ce70a0b472e06feae3a580ecb3fbef1e1e020a9b",
      "tree": "46e8a2ef0c91fae86a735ee08add6cd6519ee74f",
      "parents": [
        "939b366977d29b5c0d53d1ea3b0b8cefb1e76202",
        "79fb0768fbd371f3b94d909f51f587b3a24ab272",
        "229c4ef8ae56d69f8dec64533bf1c7f8070c1a4a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 04 20:45:41 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 04 20:45:41 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/blktrace\u0027, \u0027tracing/ftrace\u0027, \u0027tracing/urgent\u0027 and \u0027linus\u0027 into tracing/core\n"
    },
    {
      "commit": "229c4ef8ae56d69f8dec64533bf1c7f8070c1a4a",
      "tree": "e13a9ef3602f945ae51b73b592c8ae4d29e67ca3",
      "parents": [
        "b1792e367053968f2ddb48bc911d314143ce6242"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Feb 03 20:39:04 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 03 22:50:58 2009 +0100"
      },
      "message": "ftrace: do_each_pid_task() needs rcu lock\n\n\"ftrace: use struct pid\" commit 978f3a45d9499c7a447ca7615455cefb63d44165\nconverted ftrace_pid_trace to \"struct pid*\".\n\nBut we can\u0027t use do_each_pid_task() without rcu_read_lock() even if\nwe know the pid itself can\u0027t go away (it was pinned in ftrace_pid_write).\nThe exiting task can detach itself from this pid at any moment.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2c9b238eb325895d3312dad64e2685783575e474",
      "tree": "1c64910c6084c53b9d9a458a34568ccb083419e8",
      "parents": [
        "c4a8e8be2d43cc22b371e8e9c05c253409759d94"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Feb 02 20:30:12 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 03 14:03:52 2009 +0100"
      },
      "message": "trace: Change struct trace_event callbacks parameter list\n\nImpact: API change\n\nThe trace_seq and trace_entry are in trace_iterator, where there are\nmore fields that may be needed by tracers, so just pass the\ntracer_iterator as is already the case for struct tracer-\u003eprint_line.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c4a8e8be2d43cc22b371e8e9c05c253409759d94",
      "tree": "274962a78a082a11550d07c6cc088817d6558db5",
      "parents": [
        "dc573f9b20c8710105ac35c08ed0fe1da5160ecd"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Feb 02 20:29:21 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 03 14:03:52 2009 +0100"
      },
      "message": "trace: better manage the context info for events\n\nImpact: make trace_event more convenient for tracers\n\nAll tracers (for the moment) that use the struct trace_event want to\nhave the context info printed before their own output: the pid/cmdline,\ncpu, and timestamp.\n\nBut some other tracers that want to implement their trace_event\ncallbacks will not necessary need these information or they may want to\nformat them as they want.\n\nThis patch adds a new default-enabled trace option:\nTRACE_ITER_CONTEXT_INFO When disabled through:\n\necho nocontext-info \u003e /debugfs/tracing/trace_options\n\nThe pid, cpu and timestamps headers will not be printed.\n\nIE with the sched_switch tracer with context-info (default):\n\n     bash-2935 [001] 100.356561: 2935:120:S \u003d\u003d\u003e [001]  0:140:R \u003cidle\u003e\n   \u003cidle\u003e-0    [000] 100.412804:    0:140:R   + [000] 11:115:S events/0\n   \u003cidle\u003e-0    [000] 100.412816:    0:140:R \u003d\u003d\u003e [000] 11:115:R events/0\n events/0-11   [000] 100.412829:   11:115:S \u003d\u003d\u003e [000]  0:140:R \u003cidle\u003e\n\nWithout context-info:\n\n 2935:120:S \u003d\u003d\u003e [001]  0:140:R \u003cidle\u003e\n    0:140:R   + [000] 11:115:S events/0\n    0:140:R \u003d\u003d\u003e [000] 11:115:R events/0\n   11:115:S \u003d\u003d\u003e [000]  0:140:R \u003cidle\u003e\n\nA tracer can disable it at runtime by clearing the bit\nTRACE_ITER_CONTEXT_INFO in trace_flags.\n\nThe print routines were renamed to trace_print_context and\ntrace_print_lat_context, so that they can be used by tracers if they\nwant to use them for one of the trace_event callbacks.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "79fb0768fbd371f3b94d909f51f587b3a24ab272",
      "tree": "f8a891fcfae6eb9eeef10e9f8b343b813371789c",
      "parents": [
        "b2821ae68b14480bfc85ea1629537163310bc5cd"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 02 21:38:33 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 03 06:26:12 2009 +0100"
      },
      "message": "trace: let boot trace be chosen by command line\n\nNow that we have a working ftrace\u003d\u003ctracer\u003e function, make the boot\ntracer get activated by it. This way we can turn it on or off without\nrecompiling the kernel, as well as keeping the selftests on. The\nselftests are disabled whenever a default tracer starts running.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b2821ae68b14480bfc85ea1629537163310bc5cd",
      "tree": "6d4d2e9501be502f765b8615225f5d1fdb22ab9f",
      "parents": [
        "dc573f9b20c8710105ac35c08ed0fe1da5160ecd"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 02 21:38:32 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 03 06:26:12 2009 +0100"
      },
      "message": "trace: fix default boot up tracer\n\nPeter Zijlstra started the functionality to start up a default\ntracing at bootup. This patch finishes the work.\n\nNow if you add \u0027ftrace\u003d\u003ctracer\u003e\u0027 to the command line, when that tracer\nis registered on bootup, that tracer is selected and starts tracing.\n\nNote, all selftests for tracers that are registered after this tracer\nis disabled. This prevents the selftests from disturbing the running\ntracer, or the running tracer from disturbing the selftest.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dc573f9b20c8710105ac35c08ed0fe1da5160ecd",
      "tree": "24db0a0f6364b78f9c74e62541d26155e785b8f9",
      "parents": [
        "b3a8c34886d0e3dd3a24a5b614ee025181da2f41",
        "ecf441b593ac41cb8cd8cd3695110167c42e098c",
        "b1792e367053968f2ddb48bc911d314143ce6242"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 03 06:25:38 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 03 06:25:38 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027, \u0027tracing/kmemtrace\u0027 and \u0027linus\u0027 into tracing/core\n"
    },
    {
      "commit": "ecf441b593ac41cb8cd8cd3695110167c42e098c",
      "tree": "2f724acde14fc2256a94f15b06d9fe625c453b3e",
      "parents": [
        "cc2f6d90e950b69ad31d483c19cc1d121bb25c16"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu Jan 29 13:49:45 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 30 16:12:33 2009 +0100"
      },
      "message": "kmemtrace: fix printk formats, fix\n\nGeert Uytterhoeven wrote:\n\n\u003e %4zu?\n\nReported-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b3a8c34886d0e3dd3a24a5b614ee025181da2f41",
      "tree": "37ea1119e35b7bdcfe30d3f3968328f84bbccd9e",
      "parents": [
        "f04109bf1be7449e27d38ae1bb8465013374bd49"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Jan 28 13:08:37 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 29 14:31:03 2009 +0100"
      },
      "message": "trace_sched_wakeup: Remove unused variable\n\nImpact: cleanup\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f04109bf1be7449e27d38ae1bb8465013374bd49",
      "tree": "60c320ee6393a522910252f5e3c7294e3a739bfd",
      "parents": [
        "700a3dcb9036d17d3a67d0a7ceee9d4373fbb570"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Jan 28 13:02:12 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 29 14:28:31 2009 +0100"
      },
      "message": "trace: Use tracing_reset_online_cpus in more places\n\nImpact: cleanup\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nAcked-by: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4a66a82be78e1b6f9f83074423bf42a52251414c",
      "tree": "027030444e79c5ae55feeb8410a5e73b17612d84",
      "parents": [
        "32c0bd9624115041cfec31c0436995418083090a",
        "cc2f6d90e950b69ad31d483c19cc1d121bb25c16",
        "ba2607fe9c1f2d4ad5a3d4c4ae9117c5bfdca826"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 27 14:30:57 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 27 14:30:57 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/blktrace\u0027, \u0027tracing/kmemtrace\u0027 and \u0027tracing/urgent\u0027 into tracing/core\n"
    },
    {
      "commit": "c71a896154119f4ca9e89d6078f5f63ad60ef199",
      "tree": "0018ea80af12d6385fd0aa5295dddefdb284eebe",
      "parents": [
        "9011262a37cb438f0fa9394b5e83840db8f9680a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Jan 23 12:06:27 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 26 14:40:53 2009 +0100"
      },
      "message": "blktrace: add ftrace plugin\n\nImpact: New way of using the blktrace infrastructure\n\nThis drops the requirement of userspace utilities to use the blktrace\nfacility.\n\nConfiguration is done thru sysfs, adding a \"trace\" directory to the\npartition directory where blktrace can be enabled for the associated\nrequest_queue.\n\nThe same filters present in the IOCTL interface are present as sysfs\ndevice attributes.\n\nThe /sys/block/sdX/sdXN/trace/enable file allows tracing without any\nfilters.\n\nThe other files in this directory: pid, act_mask, start_lba and end_lba\ncan be used with the same meaning as with the IOCTL interface.\n\nUsing the sysfs interface will only setup the request_queue-\u003eblk_trace\nfields, tracing will only take place when the \"blk\" tracer is selected\nvia the ftrace interface, as in the following example:\n\nTo see the trace, one can use the /d/tracing/trace file or the\n/d/tracign/trace_pipe file, with semantics defined in the ftrace\ndocumentation in Documentation/ftrace.txt.\n\n[root@f10-1 ~]# cat /t/trace\n       kjournald-305   [000]  3046.491224:   8,1    A WBS 6367 + 8 \u003c- (8,1) 6304\n       kjournald-305   [000]  3046.491227:   8,1    Q   R 6367 + 8 [kjournald]\n       kjournald-305   [000]  3046.491236:   8,1    G  RB 6367 + 8 [kjournald]\n       kjournald-305   [000]  3046.491239:   8,1    P  NS [kjournald]\n       kjournald-305   [000]  3046.491242:   8,1    I RBS 6367 + 8 [kjournald]\n       kjournald-305   [000]  3046.491251:   8,1    D  WB 6367 + 8 [kjournald]\n       kjournald-305   [000]  3046.491610:   8,1    U  WS [kjournald] 1\n          \u003cidle\u003e-0     [000]  3046.511914:   8,1    C  RS 6367 + 8 [6367]\n[root@f10-1 ~]#\n\nThe default line context (prefix) format is the one described in the ftrace\ndocumentation, with the blktrace specific bits using its existing format,\ndescribed in blkparse(8).\n\nIf one wants to have the classic blktrace formatting, this is possible by\nusing:\n\n[root@f10-1 ~]# echo blk_classic \u003e /t/trace_options\n[root@f10-1 ~]# cat /t/trace\n  8,1    0  3046.491224   305  A WBS 6367 + 8 \u003c- (8,1) 6304\n  8,1    0  3046.491227   305  Q   R 6367 + 8 [kjournald]\n  8,1    0  3046.491236   305  G  RB 6367 + 8 [kjournald]\n  8,1    0  3046.491239   305  P  NS [kjournald]\n  8,1    0  3046.491242   305  I RBS 6367 + 8 [kjournald]\n  8,1    0  3046.491251   305  D  WB 6367 + 8 [kjournald]\n  8,1    0  3046.491610   305  U  WS [kjournald] 1\n  8,1    0  3046.511914     0  C  RS 6367 + 8 [6367]\n[root@f10-1 ~]#\n\nUsing the ftrace standard format allows more flexibility, such\nas the ability of asking for backtraces via trace_options:\n\n[root@f10-1 ~]# echo noblk_classic \u003e /t/trace_options\n[root@f10-1 ~]# echo stacktrace \u003e /t/trace_options\n\n[root@f10-1 ~]# cat /t/trace\n       kjournald-305   [000]  3318.826779:   8,1    A WBS 6375 + 8 \u003c- (8,1) 6312\n       kjournald-305   [000]  3318.826782:\n \u003c\u003d submit_bio\n \u003c\u003d submit_bh\n \u003c\u003d sync_dirty_buffer\n \u003c\u003d journal_commit_transaction\n \u003c\u003d kjournald\n \u003c\u003d kthread\n \u003c\u003d child_rip\n       kjournald-305   [000]  3318.826836:   8,1    Q   R 6375 + 8 [kjournald]\n       kjournald-305   [000]  3318.826837:\n \u003c\u003d generic_make_request\n \u003c\u003d submit_bio\n \u003c\u003d submit_bh\n \u003c\u003d sync_dirty_buffer\n \u003c\u003d journal_commit_transaction\n \u003c\u003d kjournald\n \u003c\u003d kthread\n\nPlease read the ftrace documentation to use aditional, standardized\ntracing filters such as /d/tracing/trace_cpumask, etc.\n\nSee also /d/tracing/trace_mark to add comments in the trace stream,\nthat is equivalent to the /d/block/sdaN/msg interface.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9011262a37cb438f0fa9394b5e83840db8f9680a",
      "tree": "e79b5e6ff2499047f95fd99d7f9e90b62c6ae2cf",
      "parents": [
        "5ce1b1ed27d4ab1d81b8543a96f488bba2071576"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Jan 23 12:06:23 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 26 14:40:53 2009 +0100"
      },
      "message": "ftrace: add ftrace_vprintk\n\nImpact: new helper function\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cc2f6d90e950b69ad31d483c19cc1d121bb25c16",
      "tree": "002de8aa52c3b1495a8b70278bd819779f827be6",
      "parents": [
        "5ce1b1ed27d4ab1d81b8543a96f488bba2071576"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Fri Jan 23 13:03:37 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 26 14:03:51 2009 +0100"
      },
      "message": "kmemtrace: fix printk format warnings\n\nFix kmemtrace printk warnings:\n\n  kernel/trace/kmemtrace.c:142: warning: format \u0027%4ld\u0027 expects type \u0027long int\u0027, but argument 3 has type \u0027size_t\u0027\n  kernel/trace/kmemtrace.c:147: warning: format \u0027%4ld\u0027 expects type \u0027long int\u0027, but argument 3 has type \u0027size_t\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5ce1b1ed27d4ab1d81b8543a96f488bba2071576",
      "tree": "6124a034fce0277570e5f10699337e20b564cbd1",
      "parents": [
        "7e49fcce1bdadd723ae6a0b3b324c4daced61563",
        "9005f3ebebfcfe9ccd731d16c468907a35ac1f9a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 26 14:01:52 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 26 14:01:52 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027 and \u0027tracing/function-graph-tracer\u0027 into tracing/core\n"
    }
  ],
  "next": "9005f3ebebfcfe9ccd731d16c468907a35ac1f9a"
}
