)]}'
{
  "log": [
    {
      "commit": "2fbcdb35aca614f9529a0e7d340146cf0b71684f",
      "tree": "02b717134d9d82b1f9a7cebd4e3daccde542cf5c",
      "parents": [
        "5ef841f6f32dce0b752a4fa0622781ee67a0e874"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 13:24:42 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 15:58:38 2009 -0400"
      },
      "message": "function-graph: calculate function depth within function graph tracer\n\nCurrently, the function graph tracer depends on the trace_printk\nto record the depth. All the information is already there in the trace\nto calculate function depth, with the exception of having the printk\nbe the first item. But as soon as a entry or exit is reached, then\nwe know the depth.\n\nThis patch changes the iter-\u003eprivate data from recording a per cpu\nlast_pid, to a structure that holds both the last_pid and the current\ndepth. This data is used to determine the function depth for the\nprintks.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "5ef841f6f32dce0b752a4fa0622781ee67a0e874",
      "tree": "12c1ac0552f12b93662e2676137fb1286b50d4ee",
      "parents": [
        "ac5f6c96859e9a664ac05b04bc96ed1caad5fe29"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 12:20:38 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 15:57:55 2009 -0400"
      },
      "message": "tracing: make print_(b)printk_msg_only global\n\nThis patch makes print_printk_msg_only and print_bprintk_msg_only\nglobal for other functions to use. It also renames them by adding\na \"trace_\" to the beginning to avoid namespace collisions.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "ac5f6c96859e9a664ac05b04bc96ed1caad5fe29",
      "tree": "0795e1695c645e3e8b5a4d6631f086373b241e1d",
      "parents": [
        "e9d9df44736d116726f4596f7e2f9ce2764ffc0a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 11:29:23 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 19 11:29:23 2009 -0400"
      },
      "message": "function-graph: consolidate prologues for output\n\nImpact: clean up\n\nThe prologue of the function graph entry, return and comments all\nstart out pretty much the same. Each of these duplicate code and\ndo so slightly differently.\n\nThis patch consolidates the printing of the pid, absolute time,\ncpu and proc (and for entry, the interrupt).\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "4acd4d00f716873e27e7b60ae292cbdbfae674dd",
      "tree": "6728bed8b0cf8cc47ead79261c0fc8d2e9e5c093",
      "parents": [
        "490362003457f8d387f6f6e73e3a7efbf56c3314"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 18 10:40:24 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 18 10:52:47 2009 -0400"
      },
      "message": "tracing: give easy way to clear trace buffer\n\nThere is currently no easy way to clear the trace buffer. Currently\nthe only way is to change the current tracer.\n\nThis patch lets the user clear the trace buffer by simply writing\ninto the trace files.\n\n echo \u003e /debug/tracing/trace\n\nor to clear a single cpu (i.e. for CPU 1):\n\n echo \u003e /debug/tracing/per_cpu/cpu1/trace\n\nRequested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "490362003457f8d387f6f6e73e3a7efbf56c3314",
      "tree": "b2976ec33eac69243d564661fcbc52d0fd573cdb",
      "parents": [
        "327019b01e068d66dada6a8b2571180ab3674d20"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Mar 17 22:38:58 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 18 10:12:38 2009 +0100"
      },
      "message": "tracing/ftrace: stop {irqs, preempt}soff tracers when tracing is stopped\n\nImpact: fix a selftest warning\n\nIn some cases, it\u0027s possible to see the following warning on irqsoff\ntracer selftest:\n\n[    4.640003] Testing tracer irqsoff: \u003c4\u003e------------[ cut here ]------------\n[    4.653562] WARNING: at kernel/trace/trace.c:458 update_max_tr_single+0x9a/0xc4()\n[    4.660000] Hardware name: System Product Name\n[    4.660000] Modules linked in:\n[    4.660000] Pid: 301, comm: kstop/1 Not tainted 2.6.29-rc8-tip #35837\n[    4.660000] Call Trace:\n[    4.660000]  [\u003c4014b588\u003e] warn_slowpath+0x79/0x8f\n[    4.660000]  [\u003c402d6949\u003e] ? put_dec+0x64/0x6b\n[    4.660000]  [\u003c40162b56\u003e] ? getnstimeofday+0x58/0xdd\n[    4.660000]  [\u003c40162210\u003e] ? clocksource_read+0x3/0xf\n[    4.660000]  [\u003c4015eb44\u003e] ? ktime_set+0x8/0x34\n[    4.660000]  [\u003c4014101a\u003e] ? balance_runtime+0x8/0x56\n[    4.660000]  [\u003c405f6f11\u003e] ? _spin_lock+0x3/0x10\n[    4.660000]  [\u003c4011f643\u003e] ? ftrace_call+0x5/0x8\n[    4.660000]  [\u003c4015d0f1\u003e] ? task_cputime_zero+0x3/0x27\n[    4.660000]  [\u003c40190ee7\u003e] ? cpupri_set+0x90/0xcb\n[    4.660000]  [\u003c405f7208\u003e] ? _spin_lock_irqsave+0x22/0x34\n[    4.660000]  [\u003c40190f12\u003e] ? cpupri_set+0xbb/0xcb\n[    4.660000]  [\u003c405f7151\u003e] ? _spin_unlock_irqrestore+0x23/0x35\n[    4.660000]  [\u003c4018493f\u003e] ? ring_buffer_reset_cpu+0x27/0x51\n[    4.660000]  [\u003c405f7208\u003e] ? _spin_lock_irqsave+0x22/0x34\n[    4.660000]  [\u003c40184962\u003e] ? ring_buffer_reset_cpu+0x4a/0x51\n[    4.660000]  [\u003c405f7151\u003e] ? _spin_unlock_irqrestore+0x23/0x35\n[    4.660000]  [\u003c4018cc29\u003e] ? trace_hardirqs_off+0x1a/0x1c\n[    4.660000]  [\u003c405f7151\u003e] ? _spin_unlock_irqrestore+0x23/0x35\n[    4.660000]  [\u003c40184962\u003e] ? ring_buffer_reset_cpu+0x4a/0x51\n[    4.660000]  [\u003c401850f3\u003e] ? cpumask_next+0x15/0x18\n[    4.660000]  [\u003c4018a41f\u003e] update_max_tr_single+0x9a/0xc4\n[    4.660000]  [\u003c4014e5fe\u003e] ? exit_notify+0x16/0xf2\n[    4.660000]  [\u003c4018cd13\u003e] check_critical_timing+0xcc/0x11e\n[    4.660000]  [\u003c4014e5fe\u003e] ? exit_notify+0x16/0xf2\n[    4.660000]  [\u003c4014e5fe\u003e] ? exit_notify+0x16/0xf2\n[    4.660000]  [\u003c4018cdf1\u003e] stop_critical_timing+0x8c/0x9f\n[    4.660000]  [\u003c4014e5c4\u003e] ? forget_original_parent+0xac/0xd0\n[    4.660000]  [\u003c4018ce3a\u003e] trace_hardirqs_on+0x1a/0x1c\n[    4.660000]  [\u003c4014e5c4\u003e] forget_original_parent+0xac/0xd0\n[    4.660000]  [\u003c4014e5fe\u003e] exit_notify+0x16/0xf2\n[    4.660000]  [\u003c4014e8a5\u003e] do_exit+0x1cb/0x225\n[    4.660000]  [\u003c4015c72b\u003e] ? kthread+0x0/0x69\n[    4.660000]  [\u003c4011f61d\u003e] kernel_thread_helper+0xd/0x10\n[    4.660000] ---[ end trace a7919e7f17c0a725 ]---\n[    4.660164] .. no entries found ..FAILED!\n\nDuring the selftest of irqsoff tracer, we do that:\n\n\t/* disable interrupts for a bit */\n\tlocal_irq_disable();\n\tudelay(100);\n\tlocal_irq_enable();\n\t/* stop the tracing. */\n\ttracing_stop();\n\t/* check both trace buffers */\n\tret \u003d trace_test_buffer(tr, NULL);\n\nIf a callsite performs a new max delay with irqs off just after\ntracing_stop, update_max_tr_single() -\u003e ring_buffer_swap_cpu()\nwill be called with the buffers disabled by tracing_stop(), hence\nthe warning, then ring_buffer_swap_cpu() return -EAGAIN and\nupdate_max_tr_single() complains.\n\nFix it by also stopping the tracer before stopping the tracing globally.\nA similar situation can happen with preemptoff and preemptirqsoff tracers\nwhere we apply the same fix.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1237325938-5240-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "327019b01e068d66dada6a8b2571180ab3674d20",
      "tree": "c81354a509d6962f6878145fcf3cdbe50a000a89",
      "parents": [
        "03418c7efaa429dc7647ac93e3862e3fe1816873",
        "62524d55e5b9ffe36e3bf3dd7a594114f150b449"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 18 06:59:56 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 18 06:59:56 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "62524d55e5b9ffe36e3bf3dd7a594114f150b449",
      "tree": "4e38825d35950ea962bbc44bdc78aea9ef909458",
      "parents": [
        "5fec6ddcb43a91aa9a254c8ecf174c803de6f07e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 20:58:00 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 23:12:11 2009 -0400"
      },
      "message": "tracing: make power tracer start/stop methods lighter weight\n\nThe start/stop methods of a tracer should be able to be executed\nin all contexts. This patch converts the power tracer to do so.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "5fec6ddcb43a91aa9a254c8ecf174c803de6f07e",
      "tree": "6c8e3c0d719022e7c82d87894c9eb28492035aa5",
      "parents": [
        "97e7e4f391cac2b00417b581b432533d245d4fd0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 19:59:53 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 23:10:45 2009 -0400"
      },
      "message": "tracing: make sched_switch stop/start light weight\n\nThe stopping and starting of a tracer should be light weight and\nbe able to be called in all contexts. The sched_switch grabbed\nmutexes in the start/stop functions. This patch changes it to a\nsimple variable, on/off.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "af4617bdba34aa556272b34c3986b0a4d588f568",
      "tree": "c46a6b695724ee27c0113f6affcebeffcefbcf23",
      "parents": [
        "37886f6a9f62d22530ffee8d3f9215c8345b6969"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 18:09:55 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 23:10:35 2009 -0400"
      },
      "message": "tracing: add global-clock option to provide cross CPU clock to traces\n\nImpact: feature to allow better serialized clock\n\nThis patch adds an option called \"global-clock\" that will allow\nthe tracer to switch to a slower but more accurate (across CPUs)\nclock.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "37886f6a9f62d22530ffee8d3f9215c8345b6969",
      "tree": "046c9086682145fd2808af7197af669f08be6d0a",
      "parents": [
        "6adaad14d7d4d3ef31b4e2dc992b18b5da7c4eb3"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 17:22:06 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 17 23:06:31 2009 -0400"
      },
      "message": "ring-buffer: add api to allow a tracer to change clock source\n\nThis patch adds a new function called ring_buffer_set_clock that\nallows a tracer to assign its own clock source to the buffer.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "4176935b58eeb636917e65a2c388e4607e36cce6",
      "tree": "dac4e0005cda5a3a5a313dde35bbac2877d9bd93",
      "parents": [
        "c269fc8c537d761f36cb98e637ae934d9331a9d5",
        "6adaad14d7d4d3ef31b4e2dc992b18b5da7c4eb3"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 17 10:37:37 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 17 10:37:37 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "c269fc8c537d761f36cb98e637ae934d9331a9d5",
      "tree": "f354c1ea46d796d553e239cf6365dd92c2200182",
      "parents": [
        "e4106133341121aeaad732d4613de06d9033b5ac"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Tue Mar 17 01:20:59 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 17 08:38:23 2009 +0100"
      },
      "message": "tracing: fix leak in event_format_read()\n\nImpact: fix memory leak\n\nIf event_format_read() exits early due to nonzero ppos, the\nprevious kmalloc doesn\u0027t get freed - might as well do the\ncheck before the kmalloc and avoid the problem.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \u003d?ISO-8859-1?Q?Fr\u003dE9d\u003dE9ric?\u003d Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237270859.8033.141.camel@charm-linux\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6adaad14d7d4d3ef31b4e2dc992b18b5da7c4eb3",
      "tree": "2c1a122a9a13c8b2cae8f0c27368a67e33804deb",
      "parents": [
        "4ca530852346be239b7c19e7bec5d2b78855bebe"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 16 21:57:17 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 16 23:31:15 2009 -0400"
      },
      "message": "tracing: stop comm recording on tracing off\n\nImpact: fix for losing comms in trace\n\nThe command lines of tasks are cached at sched switch to not need\nto record them at every trace point.  Disabling the tracing on stops\nthe recording of traces, but does not stop the caching of command lines.\nWhen the tracing is off the cache may overflow and cause the tracing\nto show incorrect tasks matching the PIDs.\n\nThis patch disables prevents updates to the comm cache when the ring buffer\nis off.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "4ca530852346be239b7c19e7bec5d2b78855bebe",
      "tree": "96e5252faaf362115a96ed6df7c4e4f698a027dc",
      "parents": [
        "03303549b1695dc024d4a653cc16bd79f78f9750"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 16 19:20:15 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 16 23:27:06 2009 -0400"
      },
      "message": "tracing: protect reader of cmdline output\n\nImpact: fix to one cause of incorrect comm outputs in trace\n\nThe spinlock only protected the creation of a comm \u003c\u003d\u003e pid pair.\nBut it was possible that a reader could look up a pid, and get the\nwrong comm because it had no locking.\n\nThis also required changing trace_find_cmdline to copy the comm cache\nand not just send back a pointer to it.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "03303549b1695dc024d4a653cc16bd79f78f9750",
      "tree": "aa731b33460908038a50fb72850b873638a768aa",
      "parents": [
        "b478b782e110fdb4135caa3062b6d687e989d994"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Mar 16 22:41:00 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 16 22:15:36 2009 -0400"
      },
      "message": "tracing/ftrace: fix the check on nopped sites\n\nImpact: fix a dynamic tracing failure\n\nRecently, the function and function graph tracers failed to use dynamic\ntracing after the following commit:\n\nfa9d13cf135efbd454453a53b6299976bea245a9\n(ftrace: don\u0027t try to __ftrace_replace_code on !FTRACE_FL_CONVERTED rec)\n\nThe patch is right except a mistake on the check for the FTRACE_FL_CONVERTED\nflag. The code patching is aborted in case of successfully nopped sites.\nWhat we want is the opposite: ignore the callsites that haven\u0027t been nopped.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "2fc1dfbe17e7705c55b7a99da995fa565e26f151",
      "tree": "8d7ecb57fdefdfac5bdff6ee3a82485e2ea4340a",
      "parents": [
        "ac1d52d0b85854958c7e78c8006e39aadb6ce4b8"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Mar 16 01:45:03 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:13:18 2009 +0100"
      },
      "message": "tracing/core: fix early free of cpumasks\n\nImpact: fix crashes when tracing cpumasks\n\nWhile ring-buffer allocation, the cpumasks are allocated too,\nincluding the tracing cpumask and the per-cpu file mask handler.\nBut these cpumasks are freed accidentally just after.\nFix it.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237164303-11476-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ac1d52d0b85854958c7e78c8006e39aadb6ce4b8",
      "tree": "fc50818980e376a66d44f991b94e8a52c03e68fc",
      "parents": [
        "59f586db98919d7d9c43527b26c8de1cdf9ed912"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Mar 16 00:32:41 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:13:18 2009 +0100"
      },
      "message": "tracing/ftrace: fix double calls to tracing_start()\n\nImpact: fix a warning during preemptirqsoff selftests\n\nWhen the preemptirqsoff selftest fails, we see the following\nwarning:\n\n[    6.050000] Testing tracer preemptirqsoff: .. no entries found ..\n------------[ cut here ]------------\n[    6.060000] WARNING: at kernel/trace/trace.c:688 tracing_start+0x67/0xd3()\n[    6.060000] Modules linked in:\n[    6.060000] Pid: 1, comm: swapper Tainted: G\n[    6.060000] Call Trace:\n[    6.060000]  [\u003cffffffff802460ff\u003e] warn_slowpath+0xb1/0x100\n[    6.060000]  [\u003cffffffff802a8f5b\u003e] ? trace_preempt_on+0x35/0x4b\n[    6.060000]  [\u003cffffffff802a37fb\u003e] ? tracing_start+0x31/0xd3\n[    6.060000]  [\u003cffffffff802a37fb\u003e] ? tracing_start+0x31/0xd3\n[    6.060000]  [\u003cffffffff80271e0b\u003e] ? __lock_acquired+0xe6/0x1f2\n[    6.060000]  [\u003cffffffff802a37fb\u003e] ? tracing_start+0x31/0xd3\n[    6.060000]  [\u003cffffffff802a3831\u003e] tracing_start+0x67/0xd3\n[    6.060000]  [\u003cffffffff802a8ace\u003e] ? irqsoff_tracer_reset+0x2d/0x57\n[    6.060000]  [\u003cffffffff802a4d1c\u003e] trace_selftest_startup_preemptirqsoff+0x1c8/0x1f1\n[    6.060000]  [\u003cffffffff802a4798\u003e] register_tracer+0x12f/0x241\n[    6.060000]  [\u003cffffffff810250d0\u003e] ? init_irqsoff_tracer+0x0/0x53\n[    6.060000]  [\u003cffffffff8102510b\u003e] init_irqsoff_tracer+0x3b/0x53\n\nThis is because in fail case, the preemptirqsoff tracer selftest calls twice\nthe tracing_start() function:\n\nint\ntrace_selftest_startup_preemptirqsoff(struct tracer *trace, struct trace_array *tr)\n{\n        if (!ret \u0026\u0026 !count) {\n                printk(KERN_CONT \".. no entries found ..\");\n                ret \u003d -1;\n                tracing_start(); \u003c-----\n                goto out;\n        }\n        [...]\nout:\n        trace-\u003ereset(tr);\n        tracing_start(); \u003c------\n        tracing_max_latency \u003d save_max;\n\n        return ret;\n}\n\nSince it is well handled in the out path, we don\u0027t need the conditional one.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237159961-7447-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "59f586db98919d7d9c43527b26c8de1cdf9ed912",
      "tree": "d77ae20815666a1c94dc177af974f88b8102fd38",
      "parents": [
        "0ea1c4156bf9e2eb370cc5c6fa6eb112bd844dec"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Mar 15 22:10:39 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:13:17 2009 +0100"
      },
      "message": "tracing/core: fix missing mutex unlock on tracing_set_tracer()\n\nImpact: fix possible locking imbalance\n\nIn case of ring buffer resize failure, tracing_set_tracer forgot to\nrelease trace_types_lock. Fix it.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237151439-6755-5-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0ea1c4156bf9e2eb370cc5c6fa6eb112bd844dec",
      "tree": "f07c37d42ca285f7cc88307c6b3586bc11e80090",
      "parents": [
        "5be71b61f17b0e3bc8ad0b1a1b7b53ab7d574ebb"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Mar 15 22:10:38 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:13:17 2009 +0100"
      },
      "message": "tracing/syscalls: select kallsysms\n\nSyscall tracing must select kallsysms.\n\nThe arch code builds a table to find the syscall metadata by syscall\nnumber. It needs the syscalls names resolution from the symbol table\nto know which name found on the syscalls metadatas match a function\npointer from the arch sys_call_table.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237151439-6755-4-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5be71b61f17b0e3bc8ad0b1a1b7b53ab7d574ebb",
      "tree": "7ab4c915871b464a08de974570900381b169e034",
      "parents": [
        "6404434525bb9f8f2239998f30fd7c93f2efa5b3"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Mar 15 22:10:37 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:13:16 2009 +0100"
      },
      "message": "tracing/syscalls: protect thread flag toggling from races\n\nImpact: fix syscall tracer enable/disable race\n\nThe current thread flag toggling is racy as shown in the following\nscenario:\n\n- task A is the last user of syscall tracing, it releases the\n  TIF_SYSCALL_FTRACE on each tasks\n\n- at the same time task B start syscall tracing. refcount \u003d\u003d 0 so\n  it sets up TIF_SYSCALL_FTRACE on each tasks.\n\nThe effect of the mixup is unpredictable.\nSo this fix adds a mutex on {start,stop}_syscall_tracing().\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLKML-Reference: \u003c1237151439-6755-3-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6404434525bb9f8f2239998f30fd7c93f2efa5b3",
      "tree": "9c761f4d724f73a4ca9792accb576289432e4fbb",
      "parents": [
        "ac99c58c9e56967037382e31f865b72b10127965"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Mar 15 22:10:36 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:13:16 2009 +0100"
      },
      "message": "tracing/syscalls: various cleanups\n\nImpact: cleanup\n\n- Drop unused cpu variable\n- Fix some errors on comments\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237151439-6755-2-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ac99c58c9e56967037382e31f865b72b10127965",
      "tree": "703c5f043cb8067cca699b6c3b6a481430912dd5",
      "parents": [
        "7243f2145a9b06e5cf9a49fc9b8b9a4fff6fb42e"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Mar 15 22:10:35 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:13:15 2009 +0100"
      },
      "message": "tracing/syscalls: fix missing release of tracing\n\nImpact: fix \u0027stuck\u0027 syscall tracer\n\nThe syscall tracer uses a refcounter to enable several users\nsimultaneously.\n\nBut the refcounter did not behave correctly and always restored\nits value to 0 after calling start_syscall_tracing(). Therefore,\nstop_syscall_tracing() couldn\u0027t release correctly the tasks from\ntracing.\n\nAlso the tracer forgot to reset the buffer when it is released.\n\nDrop the pointless refcount decrement on start_syscall_tracing()\nand reset the buffer when we release the tracer.\n\nThis fixes two reported issue:\n\n- when we switch from syscall tracer to another tracer, syscall\n  tracing continued.\n\n- incorrect use of the refcount.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1237151439-6755-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7243f2145a9b06e5cf9a49fc9b8b9a4fff6fb42e",
      "tree": "50b73e168e0e8b711d5e1ca8878389464d6c905c",
      "parents": [
        "b478b782e110fdb4135caa3062b6d687e989d994",
        "62395efdb0ef42e664ca81677901268c403a6286",
        "5bee17f18b595937e6beafeee5197868a3f74a06"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:12:42 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:12:42 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027, \u0027tracing/syscalls\u0027 and \u0027linus\u0027 into tracing/core\n\nConflicts:\n\tarch/parisc/kernel/irq.c\n"
    },
    {
      "commit": "bed1ffca022cc876fb83161d26670e9b5d3cf36b",
      "tree": "a896c79e9ea1af11f992826f1de7e2ece52fbe33",
      "parents": [
        "f58ba100678f421bdcb000a3c71793f432dfab93"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Mar 13 15:42:11 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 16:57:42 2009 +0100"
      },
      "message": "tracing/syscalls: core infrastructure for syscalls tracing, enhancements\n\nImpact: new feature\n\nThis adds the generic support for syscalls tracing. This is\ncurrently exploited through a devoted tracer but other tracing\nengines can use it. (They just have to play with\n{start,stop}_ftrace_syscalls() and use the display callbacks\nunless they want to override them.)\n\nThe syscalls prototypes definitions are abused here to steal\nsome metadata informations:\n\n- syscall name, param types, param names, number of params\n\nThe syscall addr is not directly saved during this definition\nbecause we don\u0027t know if its prototype is available in the\nnamespace. But we don\u0027t really need it. The arch has just to\nbuild a function able to resolve the syscall number to its\nmetadata struct.\n\nThe current tracer prints the syscall names, parameters names\nand values (and their types optionally). Currently the value is\na raw hex but higher level values diplaying is on my TODO list.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1236955332-10133-2-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e94142a67f8bad494c593f0a07c9fc2fbec98c0e",
      "tree": "75419622606aa186da5592302c91cb93471bec26",
      "parents": [
        "850a80cfaa5aec3e626eb3736eff890a80e4fa77"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 13 17:51:27 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 11:36:20 2009 +0100"
      },
      "message": "ftrace: remove struct list_head from struct dyn_ftrace\n\nImpact: save memory\n\nThe struct dyn_ftrace table is very large, this patch will save\nabout 50%.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nLKML-Reference: \u003c49BA2C9F.8020009@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "850a80cfaa5aec3e626eb3736eff890a80e4fa77",
      "tree": "777195c11a34eee8a63a5d2ccc3cf0ccd2855491",
      "parents": [
        "fa9d13cf135efbd454453a53b6299976bea245a9"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 13 17:47:23 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 11:35:31 2009 +0100"
      },
      "message": "ftrace: use seq_read\n\nImpact: cleanup\n\nVFS layer has tested the file mode, we do not need test it.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nLKML-Reference: \u003c49BA2BAB.6010608@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fa9d13cf135efbd454453a53b6299976bea245a9",
      "tree": "240d46a90984f3c84f336535269e97559e891104",
      "parents": [
        "b00f0b6dc1773b4c8f538503247da050b5ea631b"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Fri Mar 13 17:16:34 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 10:25:06 2009 +0100"
      },
      "message": "ftrace: don\u0027t try to __ftrace_replace_code on !FTRACE_FL_CONVERTED rec\n\nDo __ftrace_replace_code for !FTRACE_FL_CONVERTED rec will always\nfail, we should ignore this rec.\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: \"Steven Rostedt ;\" \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49BA2472.4060206@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b00f0b6dc1773b4c8f538503247da050b5ea631b",
      "tree": "94c81517cb3d1def0c0f9ccb33c48fb03c0f1c75",
      "parents": [
        "62a394eb77a1ddea73273f53ed8c3ccf6e04f2fb"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Fri Mar 13 17:14:01 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 10:25:06 2009 +0100"
      },
      "message": "ftrace: avoid double-free of dyn_ftrace\n\nIf dyn_ftrace is freed before ftrace_release(), ftrace_release()\nwill free it again and make ftrace_free_records wrong.\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: \"Steven Rostedt ;\" \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49BA23D9.1050900@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "62a394eb77a1ddea73273f53ed8c3ccf6e04f2fb",
      "tree": "ee72d87524b29eb9457b45e02a4587d8fbd9191d",
      "parents": [
        "d2e82546ae98eee353fae57e389f487586fe380d",
        "1b3fa2ce64363c289b3b14723cca7290bf91cfce"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 10:23:39 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 10:23:39 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027 and \u0027tracing/syscalls\u0027; commit \u0027v2.6.29-rc8\u0027 into tracing/core\n"
    },
    {
      "commit": "ee08c6eccb7d1295516f7cf420fddf7b14e9146f",
      "tree": "ec6d209e47bb1a8910d16c1c8b4ea65959850689",
      "parents": [
        "4c6ed8f496fe89ff81b3d6e617a531bedfb613e4"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Mar 07 05:52:59 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 06:25:43 2009 +0100"
      },
      "message": "tracing/ftrace: syscall tracing infrastructure, basics\n\nProvide basic callbacks to do syscall tracing.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c1236401580-5758-2-git-send-email-fweisbec@gmail.com\u003e\n[ simplified it to a trace_printk() for now. ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "899039e8746bb9a09b6487ddb8ab2275ce9d0256",
      "tree": "4bc6365d81796fb675c4fe0fde243e11fd9cb361",
      "parents": [
        "7f96f93f02b7637491a1637dee12dcdcd40b9802"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Mar 13 00:43:33 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Mar 13 00:43:33 2009 -0400"
      },
      "message": "softirq: no need to have SOFTIRQ in softirq name\n\nImpact: clean up\n\nIt is redundant to have \u0027SOFTIRQ\u0027 in the softirq names.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "7f96f93f02b7637491a1637dee12dcdcd40b9802",
      "tree": "4756faebe7ada4eabb4ca985b3b26e09ecbfec14",
      "parents": [
        "bdc067582b8b71c7771bab076bbc51569c594fb4"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Mar 13 00:37:42 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Mar 13 00:37:42 2009 -0400"
      },
      "message": "tracing: move binary buffers into per cpu directory\n\nThe binary_buffers directory in /debugfs/tracing held the files\nto read the trace buffers in a binary format. This held one file\nper CPU buffer. But we also have a per_cpu directory that holds\na way to read the pretty-print formats.\n\nThis patch moves the binary buffers into the per_cpu_directory:\n\n # ls /debug/tracing/per_cpu/cpu1/\ntrace  trace_pipe  trace_pipe_raw\n\nThe new name is called \"trace_pipe_raw\". The binary buffers always\nacted similar to trace_pipe, except that they produce raw data.\n\nRequested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "bdc067582b8b71c7771bab076bbc51569c594fb4",
      "tree": "a202353e4e365ae29c5bf95ca33eacd8eb4dfb54",
      "parents": [
        "eb1871f34358024acfa3523ef375ef14b7527173"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Mar 13 00:12:52 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Mar 13 00:15:46 2009 -0400"
      },
      "message": "tracing: add comment for use of double __builtin_consant_p\n\nImpact: documentation\n\nThe use of the double __builtin_contant_p checks in the event_trace_printk\ncan be confusing to developers and reviewers. This patch adds a comment\nto explain why it is there.\n\nRequested-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nLKML-Reference: \u003c20090313122235.43EB.A69D9226@jp.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "eb1871f34358024acfa3523ef375ef14b7527173",
      "tree": "b09887f47e77f5935ef54ff41c2707cd67bb9a7f",
      "parents": [
        "5cc985488845ec7227a2c5cfd2fd62cf57fb411a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Mar 13 00:00:58 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Mar 13 00:00:58 2009 -0400"
      },
      "message": "tracing: left align location header in stack_trace\n\nIngo Molnar suggested, instead of:\n\n        Depth    Size      Location    (27 entries)\n        -----    ----      --------\n  0)     2880      48   lock_timer_base+0x2b/0x4f\n  1)     2832      80   __mod_timer+0x33/0xe0\n  2)     2752      16   __ide_set_handler+0x63/0x65\n\nTo have it be:\n\n        Depth    Size   Location    (27 entries)\n        -----    ----   --------\n  0)     2880      48   lock_timer_base+0x2b/0x4f\n  1)     2832      80   __mod_timer+0x33/0xe0\n  2)     2752      16   __ide_set_handler+0x63/0x65\n\nRequested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "5cc985488845ec7227a2c5cfd2fd62cf57fb411a",
      "tree": "818517eb07b585e981ce81c200294a8ec7a8e992",
      "parents": [
        "f28e55765e40450c127e44d00ae65d0cd1a4efec"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 22:24:17 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 22:24:17 2009 -0400"
      },
      "message": "ring-buffer: document reader page design\n\nIn a private email conversation I explained how the ring buffer\npage worked by using silly ASCII art. Ingo suggested that I add\nthat to the comments of the code.\n\nHere it is.\n\nRequested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "f28e55765e40450c127e44d00ae65d0cd1a4efec",
      "tree": "31b8b0483fc8a5ddc0fc80ae8fee88e01f6f56d5",
      "parents": [
        "889a6c367283709a80dad9413488472596a1a1d2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 22:00:19 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 22:00:19 2009 -0400"
      },
      "message": "tracing: show event name in trace for TRACE_EVENT created events\n\nUnlike TRACE_FORMAT() macros, the TRACE_EVENT() macros do not show\nthe event name in the trace file. Knowing the event type in the trace\noutput is very useful.\n\nInstead of:\n\n   task swapper:0 [140] \u003d\u003d\u003e ntpd:3308 [120]\n\nWe now have:\n\n   sched_switch: task swapper:0 [140] \u003d\u003d\u003e ntpd:3308 [120]\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "889a6c367283709a80dad9413488472596a1a1d2",
      "tree": "fabe1614e30f9d6e306376159a05e91721b6cb60",
      "parents": [
        "39842323ceb368d2ea36ab7696aedbe296e13b61"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Fri Mar 13 09:03:04 2009 +0900"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:23:47 2009 -0400"
      },
      "message": "tracing: Don\u0027t use tracing_record_cmdline() in workqueue tracer fix\n\ncommit c3ffc7a40b7e94b094efe1c8ab4e24370a782b65\n\"Don\u0027t use tracing_record_cmdline() in workqueue tracer\"\nhas a race window.\n\nfind_task_by_vpid() requires task_list_lock().\n\nLKML-Reference: \u003c20090313090042.43CD.A69D9226@jp.fujitsu.com\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "39842323ceb368d2ea36ab7696aedbe296e13b61",
      "tree": "6050a0e282eaaf500f3809b1e53256b24b570d92",
      "parents": [
        "5d592b44b29a1d73e13d5c9e3426eed843bdc359"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Thu Mar 12 14:36:03 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:20:58 2009 -0400"
      },
      "message": "tracing: tracepoints for softirq entry/exit - tracepoints\n\nIntroduce softirq entry/exit tracepoints. These are useful for\naugmenting existing tracers, and to figure out softirq frequencies and\ntimings.\n\n[\n  s/irq_softirq_/softirq_/ for trace point names and\n  Fixed printf format in TRACE_FORMAT macro\n   - Steven Rostedt\n]\n\nLKML-Reference: \u003c20090312183603.GC3352@redhat.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "5d592b44b29a1d73e13d5c9e3426eed843bdc359",
      "tree": "e26ec625e6fb5efdbbf41d0bba940a2dbac19f50",
      "parents": [
        "e447e1df2e568cd43d1918963c9f09fae85aea57"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Thu Mar 12 14:33:36 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:15:02 2009 -0400"
      },
      "message": "tracing: tracepoints for softirq entry/exit - add softirq-to-name array\n\nCreate a \u0027softirq_to_name\u0027 array, which is indexed by softirq #, so\nthat we can easily convert between the softirq index # and its name, in\norder to get more meaningful output messages.\n\nLKML-Reference: \u003c20090312183336.GB3352@redhat.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "e447e1df2e568cd43d1918963c9f09fae85aea57",
      "tree": "a73edfcc1b603a921ed7e332ce614e1345385100",
      "parents": [
        "2da03ecee6308ea174e8a02b92a3c4ec92e886c8"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 19:42:29 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:15:01 2009 -0400"
      },
      "message": "tracing: explain why stack tracer is empty\n\nIf the stack tracing is disabled (by default) the stack_trace file\nwill only contain the header:\n\n # cat /debug/tracing/stack_trace\n        Depth    Size      Location    (0 entries)\n        -----    ----      --------\n\nThis can be frustrating to a developer that does not realize that the\nstack tracer is disabled. This patch adds the following text:\n\n  # cat /debug/tracing/stack_trace\n        Depth    Size      Location    (0 entries)\n        -----    ----      --------\n #\n #  Stack tracer disabled\n #\n # To enable the stack tracer, either add \u0027stacktrace\u0027 to the\n # kernel command line\n # or \u0027echo 1 \u003e /proc/sys/kernel/stack_tracer_enabled\u0027\n #\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "2da03ecee6308ea174e8a02b92a3c4ec92e886c8",
      "tree": "6e532a732a63f3a8385564aa450ada83d1a25ce7",
      "parents": [
        "7975a2be16dd42df2cab80c80cb6ece382edb6ec"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 18:57:51 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:15:01 2009 -0400"
      },
      "message": "tracing: fix stack tracer header\n\nThe stack tracer use to look like this:\n\n # cat /debug/tracing/stack_trace\n         Depth  Size      Location    (57 entries)\n         -----  ----      --------\n  0)     5088      16   mempool_alloc_slab+0x16/0x18\n  1)     5072     144   mempool_alloc+0x4d/0xfe\n  2)     4928      16   scsi_sg_alloc+0x48/0x4a [scsi_mod]\n\nNow it looks like this:\n\n # cat /debug/tracing/stack_trace\n\n        Depth    Size      Location    (57 entries)\n        -----    ----      --------\n  0)     5088      16   mempool_alloc_slab+0x16/0x18\n  1)     5072     144   mempool_alloc+0x4d/0xfe\n  2)     4928      16   scsi_sg_alloc+0x48/0x4a [scsi_mod]\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "7975a2be16dd42df2cab80c80cb6ece382edb6ec",
      "tree": "b9fdae6b0f3cd7c902beb8bf995efe2d827e02a2",
      "parents": [
        "e9fb2b6d5845e24f104713591286b6f39761c027"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 14:23:17 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:15:01 2009 -0400"
      },
      "message": "tracing: export trace formats to user space\n\nThe binary printk saves a pointer to the format string in the ring buffer.\nOn output, the format is processed. But if the user is reading the\nring buffer through a binary interface, the pointer is meaningless.\n\nThis patch creates a file called printk_formats that maps the pointers\nto the formats.\n\n # cat /debug/tracing/printk_formats\n0xffffffff80713d40 : \"irq_handler_entry: irq\u003d%d handler\u003d%s\\n\"\n0xffffffff80713d48 : \"lock_acquire: %s%s%s\\n\"\n0xffffffff80713d50 : \"lock_release: %s\\n\"\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "e9fb2b6d5845e24f104713591286b6f39761c027",
      "tree": "13239f3046b28b9b8b6166e438a4c509e57972c9",
      "parents": [
        "828275574e0161bdddb5817d4bd76a0265ef0470"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 14:19:25 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:15:00 2009 -0400"
      },
      "message": "tracing: have event_trace_printk use static tracer\n\nImpact: speed up on event tracing\n\nThe event_trace_printk is currently a wrapper function that calls\ntrace_vprintk. Because it uses a variable for the fmt it misses out\non the optimization of using the binary printk.\n\nThis patch makes event_trace_printk into a macro wrapper to use the\nfmt as the same as the trace_printks.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "828275574e0161bdddb5817d4bd76a0265ef0470",
      "tree": "191887ba1a47e161cf846fd8e078a0037f8a23f5",
      "parents": [
        "48ead02030f849d011259244bb4ea9b985479006"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 14:14:31 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:15:00 2009 -0400"
      },
      "message": "tracing: make bprint event use the proper event id\n\nThe bprint record is using TRACE_PRINT when it should be TRACE_BPRINT.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "48ead02030f849d011259244bb4ea9b985479006",
      "tree": "4500f27dc7eb6567ca79dd03fa94fe9e56fbc316",
      "parents": [
        "db526ca329f855510e8ce672332eba3304aed590"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Mar 12 18:24:49 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:15:00 2009 -0400"
      },
      "message": "tracing/core: bring back raw trace_printk for dynamic formats strings\n\nImpact: fix callsites with dynamic format strings\n\nSince its new binary implementation, trace_printk() internally uses static\ncontainers for the format strings on each callsites. But the value is\nassigned once at build time, which means that it can\u0027t take dynamic\nformats.\n\nSo this patch unearthes the raw trace_printk implementation for the callers\nthat will need trace_printk to be able to carry these dynamic format\nstrings. The trace_printk() macro will use the appropriate implementation\nfor each callsite. Most of the time however, the binary implementation will\nstill be used.\n\nThe other impact of this patch is that mmiotrace_printk() will use the old\nimplementation because it calls the low level trace_vprintk and we can\u0027t\nguess here whether the format passed in it is dynamic or not.\n\nSome parts of this patch have been written by Steven Rostedt (most notably\nthe part that chooses the appropriate implementation for each callsites).\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "db526ca329f855510e8ce672332eba3304aed590",
      "tree": "d6bdd3384a063d7c58ae807a310ecc80cb91773b",
      "parents": [
        "8aabee573dff131a085c63de7667eacd94ba4ccb"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 13:53:25 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:14:59 2009 -0400"
      },
      "message": "tracing: show that buffer size is not expanded\n\nImpact: do not confuse user on small trace buffer sizes\n\nWhen the system boots up, the trace buffer is small to conserve memory.\nIt is only two pages per online CPU. When the tracer is used, it expands\nto the default value.\n\nThis can confuse the user if they look at the buffer size and see only\n7, but then later they see 1408.\n\n # cat /debug/tracing/buffer_size_kb\n7\n\n # echo sched_switch \u003e /debug/tracing/current_tracer\n\n # cat /debug/tracing/buffer_size_kb\n1408\n\nThis patch tries to help remove this confustion by showing that the\nbuffer has not been expanded.\n\n # cat /debug/tracing/buffer_size_kb\n7 (expanded: 1408)\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "8aabee573dff131a085c63de7667eacd94ba4ccb",
      "tree": "923c02126de3e55148df132a89a7d2151df855b7",
      "parents": [
        "59222efe2d184956464abe5b637bc842ff053b93"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 13:13:49 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:14:59 2009 -0400"
      },
      "message": "ring-buffer: remove unneeded get_online_cpus\n\nImpact: speed up and remove possible races\n\nThe get_online_cpus was added to the ring buffer because the original\ndesign would free the ring buffer on a CPU that was being taken\noff line. The final design kept the ring buffer around even when the\nCPU was taken off line. This is to allow a user to still read the\ninformation on that ring buffer.\n\nMost of the get_online_cpus are no longer needed since the ring buffer will\nnot disappear from the use cases.\n\nReported-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "59222efe2d184956464abe5b637bc842ff053b93",
      "tree": "210300f7e0442ca342c3b8ecf6ee76207b7e3b2f",
      "parents": [
        "1027fcb206a0fb8348e63aff078c74bdee1c2698"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 11:46:03 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:14:59 2009 -0400"
      },
      "message": "ring-buffer: use CONFIG_HOTPLUG_CPU not CONFIG_HOTPLUG\n\nThe hotplug code in the ring buffers is for use with CPU hotplug,\nnot generic hotplug.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "1027fcb206a0fb8348e63aff078c74bdee1c2698",
      "tree": "05e858e410fdb30865a11c78e2bb9bb0a12f55ba",
      "parents": [
        "a123c52b46a1f84bcec3dc963351896c6d6afaf7"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 11:33:20 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:14:58 2009 -0400"
      },
      "message": "tracing: protect ring_buffer_expanded with trace_types_lock\n\nImpact: prevent races with ring_buffer_expanded\n\nThis patch places the expanding of the tracing buffer under the\nprotection of the trace_types_lock mutex. It is highly unlikely\nthat there would be any contention, but better safe than sorry.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "a123c52b46a1f84bcec3dc963351896c6d6afaf7",
      "tree": "bbfea12d2234930fd67644fa281d11c8ab850460",
      "parents": [
        "51b643b404827d8fde60d7953773a42d46ca87e0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 11:21:08 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:14:58 2009 -0400"
      },
      "message": "tracing: fix comments about trace buffer resizing\n\nImpact: cleanup\n\nSome of the comments about the trace buffer resizing is gobbledygook.\nAnd I wonder why people question if I\u0027m a native English speaker.\n\nThis patch makes the comments make a bit more sense.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "51b643b404827d8fde60d7953773a42d46ca87e0",
      "tree": "ae71fcbd8b3640b68fc11e1dca620a8ee96bac5f",
      "parents": [
        "554f786e284a6ce859d51f62240d615603944c8e",
        "480c93df5b99699390f93a7024c9f60d09da0e96"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:12:46 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:12:46 2009 -0400"
      },
      "message": "Merge branch \u0027tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip into trace/tip/tracing/ftrace-merge\n"
    },
    {
      "commit": "480c93df5b99699390f93a7024c9f60d09da0e96",
      "tree": "b93b6c8c71c5f2e716dd05b126e01ef4e20ff0af",
      "parents": [
        "aecfcde920da8d32949f6cbbc1fc051b4ef9e7be",
        "d820ac4c2fa881079e6b689d2098adce337558ae"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 01:33:21 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 01:33:21 2009 +0100"
      },
      "message": "Merge branch \u0027core/locking\u0027 into tracing/ftrace\n"
    },
    {
      "commit": "d820ac4c2fa881079e6b689d2098adce337558ae",
      "tree": "39e4e989d22271cd401f6974c9ae7accc571d500",
      "parents": [
        "3c1f67d60e2b4f4455563928999fd41cc653645d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 01:30:40 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 01:32:36 2009 +0100"
      },
      "message": "locking: rename trace_softirq_[enter|exit] \u003d\u003e lockdep_softirq_[enter|exit]\n\nImpact: cleanup\n\nThe naming clashes with upcoming softirq tracepoints, so rename the\nAPIs to lockdep_*().\n\nRequested-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3c1f67d60e2b4f4455563928999fd41cc653645d",
      "tree": "0d58c145a05fb09167f1ab6882b474eccb1f3563",
      "parents": [
        "03d78913f01e8f6599823f00357ed17b32747d3d",
        "9ead64974b05501bbac0d63a47c99fa786d064ba"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 01:29:17 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 01:29:17 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into core/locking\n"
    },
    {
      "commit": "554f786e284a6ce859d51f62240d615603944c8e",
      "tree": "d3710f97dac93861b3ff1f389276e643798f9b2e",
      "parents": [
        "9aba60fe6eb20453de53a572143bef22fa929fba"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 11 22:00:13 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 11 22:15:27 2009 -0400"
      },
      "message": "ring-buffer: only allocate buffers for online cpus\n\nImpact: save on memory\n\nCurrently, a ring buffer was allocated for each \"possible_cpus\". On\nsome systems, this is the same as NR_CPUS. Thus, if a system defined\nNR_CPUS \u003d 64 but it only had 1 CPU, we could have possibly 63 useless\nring buffers taking up space. With a default buffer of 3 megs, this\ncould be quite drastic.\n\nThis patch changes the ring buffer code to only allocate ring buffers\nfor online CPUs.  If a CPU goes off line, we do not free the buffer.\nThis is because the user may still have trace data in that buffer\nthat they would like to look at.\n\nPerhaps in the future we could add code to delete a ring buffer if\nthe CPU is offline and the ring buffer becomes empty.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "9aba60fe6eb20453de53a572143bef22fa929fba",
      "tree": "97df44bc298fe40719d6f08000d96532d3ecf27e",
      "parents": [
        "1852fcce181faa237c010a3dbedb473cf9d4555f"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 11 19:52:30 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 11 22:15:25 2009 -0400"
      },
      "message": "tracing: fix trace_wait to know to wait on all cpus or just one\n\nImpact: fix to task live locking on reading trace_pipe on one CPU\n\nThe same code is used for both trace_pipe (all CPUS) and the per_cpu\ntrace_pipe file. When there is no data to read, it will check for\nsignals and wait on the trace wait queue.\n\nThe problem happens with the per_cpu wait. The trace_wait code checks\nall CPUs. Thus, if there\u0027s data in another CPU buffer, then it will\nexit the wait, without checking for signals or waiting on the wait queue.\n\nIt would then try to read the empty buffer, and since that will just\nreturn nothing, then it will try to wait again. Unfortunately, that will\nagain fail due to there still being data in the other buffers. This\nends up with a live lock for the task.\n\nThis patch fixes the trace_wait to be aware that the iterator may only\nbe waiting on a single buffer.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "1852fcce181faa237c010a3dbedb473cf9d4555f",
      "tree": "863cd12b573fd36436e7fb042f9bd96a73a9f725",
      "parents": [
        "73c5162aa362a543793f4a957c6c536dcbaa89ce"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 11 14:33:00 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 11 22:15:24 2009 -0400"
      },
      "message": "tracing: expand the ring buffers when an event is activated\n\nTo save memory, the tracer ring buffers are set to a minimum.\nThe activating of a trace expands the ring buffer size. This patch\nadds this expanding, when an event is activated.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "73c5162aa362a543793f4a957c6c536dcbaa89ce",
      "tree": "ca318ef3da72aac3f809583967185c0b34998c94",
      "parents": [
        "80370cb758e7ca2692cd9fb5e413d970b1f4b2b2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 11 13:42:01 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 11 22:15:22 2009 -0400"
      },
      "message": "tracing: keep ring buffer to minimum size till used\n\nImpact: less memory impact on systems not using tracer\n\nWhen the kernel boots up that has tracing configured, it allocates\nthe default size of the ring buffer. This currently happens to be\n1.4Megs per possible CPU. This is quite a bit of wasted memory if\nthe system is never using the tracer.\n\nThe current solution is to keep the ring buffers to a minimum size\nuntil the user uses them. Once a tracer is piped into the current_tracer\nthe ring buffer will be expanded to the default size. If the user\nchanges the size of the ring buffer, it will take the size given\nby the user immediately.\n\nIf the user adds a \"ftrace\u003d\" to the kernel command line, then the ring\nbuffers will be set to the default size on initialization.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "aecfcde920da8d32949f6cbbc1fc051b4ef9e7be",
      "tree": "c332ce67ef065978b07a889109394fda421c0581",
      "parents": [
        "e2b8b2808538a91444e78c7db5a30519cadd09b2",
        "80370cb758e7ca2692cd9fb5e413d970b1f4b2b2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 11 20:47:23 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 11 20:47:23 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": "be50b8342dead8cacf57d4839240106b225d31f5",
      "tree": "a5f40b583e4c008313b090426fa785d178348e76",
      "parents": [
        "d58ab5cf09679d8cb4824e22cae900c0eab5ab31"
      ],
      "author": {
        "name": "Dhaval Giani",
        "email": "dhaval@linux.vnet.ibm.com",
        "time": "Tue Mar 10 12:55:56 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:11 2009 -0700"
      },
      "message": "kernel/user.c: fix a memory leak when freeing up non-init usernamespaces users\n\nWe were returning early in the sysfs directory cleanup function if the\nuser belonged to a non init usernamespace.  Due to this a lot of the\ncleanup was not done and we were left with a leak.  Fix the leak.\n\nReported-by: Serge Hallyn \u003cserue@linux.vnet.ibm.com\u003e\nSigned-off-by: Dhaval Giani \u003cdhaval@linux.vnet.ibm.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nTested-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e2b8b2808538a91444e78c7db5a30519cadd09b2",
      "tree": "60c45581817db746bd61670f5c95b19c2661daa0",
      "parents": [
        "4dd163a0512eb91bbcf4e66d2f65b8e4042561b3",
        "ef18012b248b47ec9a12c3a83ca5e99782d39c5d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 22:55:31 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 22:55:31 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": "4dd163a0512eb91bbcf4e66d2f65b8e4042561b3",
      "tree": "88f8f450ef038c36f3620c79635b2e22e3b0528a",
      "parents": [
        "6cc3c6e12bb039047974ad2e7e2d46d15a1b762f",
        "7cf49427042400d40bdc80b5c3399b6b5945afa8",
        "99adcd9d67aaf04e28f5ae96df280f236bde4b66"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 22:54:23 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 22:54:23 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027, \u0027tracing/textedit\u0027 and \u0027linus\u0027 into tracing/core\n"
    },
    {
      "commit": "80370cb758e7ca2692cd9fb5e413d970b1f4b2b2",
      "tree": "2c1451f4a374d8b7a515fe39b4bb24bb6a323db9",
      "parents": [
        "ef18012b248b47ec9a12c3a83ca5e99782d39c5d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 17:16:35 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 17:16:35 2009 -0400"
      },
      "message": "tracing: use raw spinlocks for trace_vprintk\n\nImpact: prevent locking up by lockdep tracer\n\nThe lockdep tracer uses trace_vprintk and thus trace_vprintk can not\ncall back into lockdep without locking up.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "6cc3c6e12bb039047974ad2e7e2d46d15a1b762f",
      "tree": "1c3ff8b51757674ead536a3220c0da14608ee267",
      "parents": [
        "2395037e5dd6841a6fa23afbb31e79d92e549cd1"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Mar 10 19:03:43 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 20:03:01 2009 +0100"
      },
      "message": "trace_clock: fix preemption bug\n\nUsing the function_graph tracer in recent kernels generates a spew of\npreemption BUGs. Fix this by not requiring trace_clock_local() users\nto disable preemption themselves.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ef18012b248b47ec9a12c3a83ca5e99782d39c5d",
      "tree": "8103b4d14c6b81a6a5ec39cd43e4ca7ffb51625d",
      "parents": [
        "0e3d0f0566f3fcf664782f597070bbc669d78454"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 14:10:56 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 14:13:14 2009 -0400"
      },
      "message": "tracing: remove funky whitespace in the trace code\n\nImpact: clean up\n\nThere existed a lot of \u003cspace\u003e\u003ctab\u003e\u0027s in the tracing code. This\npatch removes them.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "0e3d0f0566f3fcf664782f597070bbc669d78454",
      "tree": "11ce48020cc45e8e168c7bd89a88b55a6bbefaed",
      "parents": [
        "823f9124fb2e33eeb624d139978a52089f8a02ae"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 13:12:58 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 13:12:58 2009 -0400"
      },
      "message": "tracing: update comments to match event code macros\n\nImpact: clean up / comments\n\nThe comments that described the ftrace macros to manipulate the\nTRACE_EVENT and TRACE_FORMAT macros no longer match the code.\nThis patch updates them.\n\nReported-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "30a8fecc2d34f086df34fe2f2b926f080e002600",
      "tree": "a6959a40a6a3065b61ddcf4954861dfd8892a843",
      "parents": [
        "2314c4ae1461c9e8b26cf8b9a851f280bc5769e1"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 12:41:38 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 12:41:38 2009 -0400"
      },
      "message": "tracing: flip the TP_printk and TP_fast_assign in the TRACE_EVENT macro\n\nImpact: clean up\n\nIn trying to stay consistant with the C style format in the TRACE_EVENT\nmacro, it makes more sense to do the printk after the assigning of\nthe variables.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "2314c4ae1461c9e8b26cf8b9a851f280bc5769e1",
      "tree": "c6f55179012c6997f77fa523f542efdfd1104c24",
      "parents": [
        "40e26815fafd3b8c4aced17b1f22e68ef33eb8db"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 12:04:02 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 12:04:02 2009 -0400"
      },
      "message": "tracing: add back the available_events file\n\nThe event directory files type and available_types were no longer\nneeded with the new TRACE_EVENT_FORMAT macros, they were deleted.\nBut by accident the available_events file was also removed.\nThis patch brings it back.\n\nReported-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "40e26815fafd3b8c4aced17b1f22e68ef33eb8db",
      "tree": "ace92f7335ad97144d57ef91af0b82da88db4335",
      "parents": [
        "ce8eb2bf05042452107e489782105d2e235cbdd0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 11:32:40 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 11:32:40 2009 -0400"
      },
      "message": "tracing: do not allow modifying the ftrace events via the event files\n\nImpact: fix to prevent crash on calling NULL function pointer\n\nThe ftrace internal records have their format exported via the event\nsystem under the ftrace subsystem. These are only for exporting the\nformat to allow binary readers to be able to parse them in a binary\noutput.\n\nThe ftrace subsystem events can only be enabled via the ftrace tracers\nand do not have a registering function. The event files expect the\nevent record to have registering function and will call it directly.\nPassing in a ftrace subsystem event will cause the kernel to crash\nbecause it will execute a NULL pointer.\n\nThis patch prevents the ftrace subsystem from being viewable to the\nevent enabling files.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "ce8eb2bf05042452107e489782105d2e235cbdd0",
      "tree": "f90790e543c221e3b0bac963bd8afa96e79a06ed",
      "parents": [
        "157587d7ac555458da9f682e3250135e468470a6"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 10:14:35 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 10:14:35 2009 -0400"
      },
      "message": "tracing: fix printk format specifier\n\nImpact: clean up\n\nThe offsetof and sizeof are of type size_t, and instead of typecasting\nthem to unsigned int for printk formatting, one could just use %zu.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "bbcd3063597a3824357cd83c501c2a2aa21ef37b",
      "tree": "4da63cbe8e3740fd9645fbbf6aeeed5d21ac6437",
      "parents": [
        "8293dd6f86e759068ce918aa10ca9c5d6d711cd0"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue Mar 10 10:49:53 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 10:20:30 2009 +0100"
      },
      "message": "tracing: Don\u0027t assume possible cpu list have continuous numbers\n\n\"for (++cpu ; cpu \u003c num_possible_cpus(); cpu++)\" statement assumes\npossible cpus have continuous number - but that\u0027s a wrong assumption.\n\nInsted, cpumask_next() should be used.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20090310104437.A480.A69D9226@jp.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8293dd6f86e759068ce918aa10ca9c5d6d711cd0",
      "tree": "de366d69078bf2b98c6765fa4ec1cc652f3d3173",
      "parents": [
        "631595fbf4aeac260e664a8a002897e4db6a50dd",
        "467c88fee51e2ae862e9485245687da0730e29aa"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 10:16:17 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 10:17:48 2009 +0100"
      },
      "message": "Merge branch \u0027x86/core\u0027 into tracing/ftrace\n\nSemantic merge:\n\n  kernel/trace/trace_functions_graph.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9a1043d19c4edc4ff1d80081a39809a506a62e4d",
      "tree": "a8ba7bdb2ebe8e486f018d55969727abf14e7e33",
      "parents": [
        "12e87e36e0141c08dbc8b2177c93c75fb18ad7e5",
        "157587d7ac555458da9f682e3250135e468470a6"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 09:57:16 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 09:57:16 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": "12e87e36e0141c08dbc8b2177c93c75fb18ad7e5",
      "tree": "a82ac66b372ddc7ee97fe095222232875b6737d4",
      "parents": [
        "42b40b3d55f5782b00b74d9105c3565fbfa5cb80",
        "c3ffc7a40b7e94b094efe1c8ab4e24370a782b65",
        "7bffc23e56e92c14b787bf4d95249a32085bfed5",
        "7a203f3b089be4410fe065dd9927027eade94557"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 09:56:25 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 09:56:25 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/doc\u0027, \u0027tracing/ftrace\u0027, \u0027tracing/printk\u0027 and \u0027linus\u0027 into tracing/core\n"
    },
    {
      "commit": "467c88fee51e2ae862e9485245687da0730e29aa",
      "tree": "244aa2469e31cb53d7e04ec0768b506ccad71932",
      "parents": [
        "1f442d70c84aa798e243e721eba728a98434cd86",
        "7ab152470e8416ef2a44c800fdc157e2192f2974",
        "8827247ffcc9e880cbe4705655065cf011265157",
        "d1a8e7792047f7dca7eb5759250e2c12800bf262",
        "0feca851c1b3cb4ebfa3149144b3d5de0879ebaa",
        "d0fc63f7bd07cb779a06dc1cdd0c5a14e7f5d562",
        "7a203f3b089be4410fe065dd9927027eade94557",
        "3a450de1365d20afde406f0d9b2931a5e4a4fd6a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 09:26:38 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 09:26:38 2009 +0100"
      },
      "message": "Merge branches \u0027x86/apic\u0027, \u0027x86/asm\u0027, \u0027x86/fixmap\u0027, \u0027x86/memtest\u0027, \u0027x86/mm\u0027, \u0027x86/urgent\u0027, \u0027linus\u0027 and \u0027core/percpu\u0027 into x86/core\n"
    },
    {
      "commit": "157587d7ac555458da9f682e3250135e468470a6",
      "tree": "81033336672eb821f3833a1667bedfc646a3a6f5",
      "parents": [
        "d6e2ca4c05be6a5ab16030a9f227301bd6acc9f0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 00:15:34 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 00:35:12 2009 -0400"
      },
      "message": "tracing: remove obsolete TRACE_EVENT_FORMAT macro\n\nImpact: clean up\n\nThe TRACE_EVENT_FORMAT macro is no longer used by trace points\nand only the DECLARE_TRACE, TRACE_FORMAT or TRACE_EVENT macros should\nbe used by them. Although the TRACE_EVENT_FORMAT macro is still used\nby the internal tracing utility, it should not be used in core\nkernel code.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "da4d03020c2af32f73e8bfbab0a66620d85bb9bb",
      "tree": "3ee6d7d69754df7910454315a6011c14d8664d01",
      "parents": [
        "9cc26a261d43e5898287a1f5808132f8f05ceb1c"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 09 17:14:30 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 00:35:07 2009 -0400"
      },
      "message": "tracing: new format for specialized trace points\n\nImpact: clean up and enhancement\n\nThe TRACE_EVENT_FORMAT macro looks quite ugly and is limited in its\nability to save data as well as to print the record out. Working with\nIngo Molnar, we came up with a new format that is much more pleasing to\nthe eye of C developers. This new macro is more C style than the old\nmacro, and is more obvious to what it does.\n\nHere\u0027s the example. The only updated macro in this patch is the\nsched_switch trace point.\n\nThe old method looked like this:\n\n TRACE_EVENT_FORMAT(sched_switch,\n        TP_PROTO(struct rq *rq, struct task_struct *prev,\n                struct task_struct *next),\n        TP_ARGS(rq, prev, next),\n        TP_FMT(\"task %s:%d \u003d\u003d\u003e %s:%d\",\n              prev-\u003ecomm, prev-\u003epid, next-\u003ecomm, next-\u003epid),\n        TRACE_STRUCT(\n                TRACE_FIELD(pid_t, prev_pid, prev-\u003epid)\n                TRACE_FIELD(int, prev_prio, prev-\u003eprio)\n                TRACE_FIELD_SPECIAL(char next_comm[TASK_COMM_LEN],\n                                    next_comm,\n                                    TP_CMD(memcpy(TRACE_ENTRY-\u003enext_comm,\n                                                 next-\u003ecomm,\n                                                 TASK_COMM_LEN)))\n                TRACE_FIELD(pid_t, next_pid, next-\u003epid)\n                TRACE_FIELD(int, next_prio, next-\u003eprio)\n        ),\n        TP_RAW_FMT(\"prev %d:%d \u003d\u003d\u003e next %s:%d:%d\")\n        );\n\nThe above method is hard to read and requires two format fields.\n\nThe new method:\n\n /*\n  * Tracepoint for task switches, performed by the scheduler:\n  *\n  * (NOTE: the \u0027rq\u0027 argument is not used by generic trace events,\n  *        but used by the latency tracer plugin. )\n  */\n TRACE_EVENT(sched_switch,\n\n\tTP_PROTO(struct rq *rq, struct task_struct *prev,\n\t\t struct task_struct *next),\n\n\tTP_ARGS(rq, prev, next),\n\n\tTP_STRUCT__entry(\n\t\t__array(\tchar,\tprev_comm,\tTASK_COMM_LEN\t)\n\t\t__field(\tpid_t,\tprev_pid\t\t\t)\n\t\t__field(\tint,\tprev_prio\t\t\t)\n\t\t__array(\tchar,\tnext_comm,\tTASK_COMM_LEN\t)\n\t\t__field(\tpid_t,\tnext_pid\t\t\t)\n\t\t__field(\tint,\tnext_prio\t\t\t)\n\t),\n\n\tTP_printk(\"task %s:%d [%d] \u003d\u003d\u003e %s:%d [%d]\",\n\t\t__entry-\u003eprev_comm, __entry-\u003eprev_pid, __entry-\u003eprev_prio,\n\t\t__entry-\u003enext_comm, __entry-\u003enext_pid, __entry-\u003enext_prio),\n\n\tTP_fast_assign(\n\t\tmemcpy(__entry-\u003enext_comm, next-\u003ecomm, TASK_COMM_LEN);\n\t\t__entry-\u003eprev_pid\t\u003d prev-\u003epid;\n\t\t__entry-\u003eprev_prio\t\u003d prev-\u003eprio;\n\t\tmemcpy(__entry-\u003eprev_comm, prev-\u003ecomm, TASK_COMM_LEN);\n\t\t__entry-\u003enext_pid\t\u003d next-\u003epid;\n\t\t__entry-\u003enext_prio\t\u003d next-\u003eprio;\n\t)\n );\n\nThis macro is called TRACE_EVENT, it is broken up into 5 parts:\n\n TP_PROTO:        the proto type of the trace point\n TP_ARGS:         the arguments of the trace point\n TP_STRUCT_entry: the structure layout of the entry in the ring buffer\n TP_printk:       the printk format\n TP_fast_assign:  the method used to write the entry into the ring buffer\n\nThe structure is the definition of how the event will be saved in the\nring buffer. The printk is used by the internal tracing in case of\nan oops, and the kernel needs to print out the format of the record\nto the console. This the TP_printk gives a means to show the records\nin a human readable format. It is also used to print out the data\nfrom the trace file.\n\nThe TP_fast_assign is executed directly. It is basically like a C function,\nwhere the __entry is the handle to the record.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "9cc26a261d43e5898287a1f5808132f8f05ceb1c",
      "tree": "cf00e838e7f026d20500d8f90191230ed3f41078",
      "parents": [
        "2939b0469d04ba9ac791aca9a81625d7eb50662b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 09 16:00:22 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 00:35:05 2009 -0400"
      },
      "message": "tracing: use generic __stringify\n\nImpact: clean up\n\nThis removes the custom made STR(x) macros in the tracer and uses\nthe generic __stringify macro instead.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "2939b0469d04ba9ac791aca9a81625d7eb50662b",
      "tree": "573f10c39f34c670fdc6832415642738c5afb3f9",
      "parents": [
        "156b5f172a64103bcb13b6d26288388b9019caa3"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 09 15:47:18 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 00:35:04 2009 -0400"
      },
      "message": "tracing: replace TP\u003cvar\u003e with TP_\u003cvar\u003e\n\nImpact: clean up\n\nThe macros TPPROTO, TPARGS, TPFMT, TPRAWFMT, and TPCMD all look a bit\nugly. This patch adds an underscore to their names.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "156b5f172a64103bcb13b6d26288388b9019caa3",
      "tree": "e29141720bd9d0e4c722dd3c7dc8c62d5113db43",
      "parents": [
        "7bffc23e56e92c14b787bf4d95249a32085bfed5"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Mar 06 10:50:53 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 00:34:03 2009 -0400"
      },
      "message": "tracing: typecast sizeof and offsetof to unsigned int\n\nImpact: fix compiler warnings\n\nOn x86_64 sizeof and offsetof are treated as long, where as on x86_32\nthey are int. This patch typecasts them to unsigned int to avoid\none arch giving warnings while the other does not.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "2d5516cbb9daf7d0e342a2e3b0fc6f8c39a81205",
      "tree": "7f3fa06b708a508f4cc0fa6ef7894ede14101c87",
      "parents": [
        "df0b4a5080ca668636831b641a6356500fb5c637"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Mar 02 22:58:45 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 13:23:25 2009 -0700"
      },
      "message": "copy_process: fix CLONE_PARENT \u0026\u0026 parent_exec_id interaction\n\nCLONE_PARENT can fool the -\u003eself_exec_id/parent_exec_id logic. If we\nre-use the old parent, we must also re-use -\u003eparent_exec_id to make\nsure exit_notify() sees the right -\u003exxx_exec_id\u0027s when the CLONE_PARENT\u0027ed\ntask exits.\n\nAlso, move down the \"p-\u003eparent_exec_id \u003d p-\u003eself_exec_id\" thing, to place\ntwo different cases together.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Serge E. Hallyn \u003cserge@hallyn.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6d5b5acca9e566515ef3f1ed617e7295c4f94345",
      "tree": "cad7d2487a95bacbf18ca06be3cef96d4dcf87c9",
      "parents": [
        "7a203f3b089be4410fe065dd9927027eade94557"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Mar 09 13:31:59 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 08:13:35 2009 -0700"
      },
      "message": "Fix fixpoint divide exception in acct_update_integrals\n\nFrans Pop reported the crash below when running an s390 kernel under Hercules:\n\n  Kernel BUG at 000738b4  verbose debug info unavailable!\n  fixpoint divide exception: 0009  #1! SMP\n  Modules linked in: nfs lockd nfs_acl sunrpc ctcm fsm tape_34xx\n     cu3088 tape ccwgroup tape_class ext3 jbd mbcache dm_mirror dm_log dm_snapshot\n     dm_mod dasd_eckd_mod dasd_mod\n  CPU: 0 Not tainted 2.6.27.19 #13\n  Process awk (pid: 2069, task: 0f9ed9b8, ksp: 0f4f7d18)\n  Krnl PSW : 070c1000 800738b4 (acct_update_integrals+0x4c/0x118)\n             R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:0 CC:1 PM:0\n  Krnl GPRS: 00000000 000007d0 7fffffff fffff830\n             00000000 ffffffff 00000002 0f9ed9b8\n             00000000 00008ca0 00000000 0f9ed9b8\n             0f9edda4 8007386e 0f4f7ec8 0f4f7e98\n  Krnl Code: 800738aa: a71807d0         lhi     %r1,2000\n             800738ae: 8c200001         srdl    %r2,1\n             800738b2: 1d21             dr      %r2,%r1\n            \u003e800738b4: 5810d10e         l       %r1,270(%r13)\n             800738b8: 1823             lr      %r2,%r3\n             800738ba: 4130f060         la      %r3,96(%r15)\n             800738be: 0de1             basr    %r14,%r1\n             800738c0: 5800f060         l       %r0,96(%r15)\n  Call Trace:\n  ( \u003c000000000004fdea\u003e! blocking_notifier_call_chain+0x1e/0x2c)\n    \u003c0000000000038502\u003e! do_exit+0x106/0x7c0\n    \u003c0000000000038c36\u003e! do_group_exit+0x7a/0xb4\n    \u003c0000000000038c8e\u003e! SyS_exit_group+0x1e/0x30\n    \u003c0000000000021c28\u003e! sysc_do_restart+0x12/0x16\n    \u003c0000000077e7e924\u003e! 0x77e7e924\n\nReason for this is that cpu time accounting usually only happens from\ninterrupt context, but acct_update_integrals gets also called from\nprocess context with interrupts enabled.\n\nSo in acct_update_integrals we may end up with the following scenario:\n\nBetween reading tsk-\u003estime/tsk-\u003eutime and tsk-\u003eacct_timexpd an interrupt\nhappens which updates accouting values.  This causes acct_timexpd to be\ngreater than the former stime + utime.  The subsequent calculation of\n\n\tdtime \u003d cputime_sub(time, tsk-\u003eacct_timexpd);\n\nwill be negative and the division performed by\n\n\tcputime_to_jiffies(dtime)\n\nwill generate an exception since the result won\u0027t fit into a 32 bit\nregister.\n\nIn order to fix this just always disable interrupts while accessing any\nof the accounting values.\n\nReported by: Frans Pop \u003celendil@planet.nl\u003e\nTested by: Frans Pop \u003celendil@planet.nl\u003e\nCc: stable@kernel.org\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c3ffc7a40b7e94b094efe1c8ab4e24370a782b65",
      "tree": "13e2831b866f1ee2ff1bc395400c87e2980225eb",
      "parents": [
        "888b55dc314d26239d84c3b187dae555a81c1605"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Mar 09 18:15:34 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 09 10:26:13 2009 +0100"
      },
      "message": "tracing: Don\u0027t use tracing_record_cmdline() in workqueue tracer\n\nImpact: improve workqueue tracer output\n\nCurrently, /sys/kernel/debug/tracing/trace_stat/workqueues can display\nwrong and strange thread names.\n\nWhy?\n\nCurrently, ftrace has tracing_record_cmdline()/trace_find_cmdline()\nconvenience function that implements a task-\u003ecomm string cache.\n\nThis can avoid unnecessary memcpy overhead and the workqueue tracer\nuses it.\n\nHowever, in general, any trace statistics feature shouldn\u0027t use\ntracing_record_cmdline() because trace statistics can display\nvery old process. Then comm cache can return wrong string because\nrecent process overrides the cache.\n\nFortunately, workqueue trace guarantees that displayed processes\nare live. Thus we can search comm string from PID at display time.\n\n\u003cbefore\u003e\n\n% cat workqueues\n # CPU  INSERTED  EXECUTED   NAME\n # |      |         |          |\n\n   7 431913     431913       kondemand/7\n   7      0          0       tail\n   7     21         21       git\n   7      0          0       ls\n   7      9          9       cat\n   7 832632     832632       unix_chkpwd\n   7 236292     236292       ls\n\nNote: tail, git, ls, cat unix_chkpwd are obiously not workqueue thread.\n\n\u003cafter\u003e\n\n% cat workqueues\n # CPU  INSERTED  EXECUTED   NAME\n # |      |         |          |\n\n   7    510        510       kondemand/7\n   7      0          0       kmpathd/7\n   7     15         15       ata/7\n   7      0          0       aio/7\n   7     11         11       kblockd/7\n   7   1063       1063       work_on_cpu/7\n   7    167        167       events/7\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "888b55dc314d26239d84c3b187dae555a81c1605",
      "tree": "bdf22d17648cf01f89009d37b9bbcdb1521fc636",
      "parents": [
        "dba58e39ced7af63f2748d12bbb2b4ac83c72391"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Sun Mar 08 13:12:43 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 08 16:57:22 2009 +0100"
      },
      "message": "ftrace: tracing header should put \u0027#\u0027 at the beginning of a line\n\nIn a recent discussion, Andrew Morton pointed out that tracing header\nshould put \u0027#\u0027 at the beginning of a line.\n\nThen, we can easily filtered the header by following grep usage:\n\n  cat trace | grep -v \u0027^#\u0027\n\nWakeup trace also has the same header problem.\n\nComparison of headers displayed:\n\nbefore this patch:\n\n # tracer: wakeup\n #\n wakeup latency trace v1.1.5 on 2.6.29-rc7-tip-tip\n --------------------------------------------------------------------\n  latency: 19059 us, #21277/21277, CPU#1 | (M:desktop VP:0, KP:0, SP:0 HP:0 #P:4)\n     -----------------\n     | task: kondemand/1-1644 (uid:0 nice:-5 policy:0 rt_prio:0)\n     -----------------\n\n #                  _------\u003d\u003e CPU#\n #                 / _-----\u003d\u003e irqs-off\n #                | / _----\u003d\u003e need-resched\n #                || / _---\u003d\u003e hardirq/softirq\n #                ||| / _--\u003d\u003e preempt-depth\n #                |||| /\n #                |||||     delay\n #  cmd     pid   ||||| time  |   caller\n #     \\   /      |||||   \\   |   /\n irqbalan-1887    1d.s.    0us :   1887:120:R   + [001]  1644:115:S kondemand/1\n irqbalan-1887    1d.s.    1us : default_wake_function \u003c-autoremove_wake_function\n irqbalan-1887    1d.s.    2us : check_preempt_wakeup \u003c-try_to_wake_up\n\nafter this patch:\n\n # tracer: wakeup\n #\n # wakeup latency trace v1.1.5 on 2.6.29-rc7-tip-tip\n # --------------------------------------------------------------------\n # latency: 529 us, #530/530, CPU#0 | (M:desktop VP:0, KP:0, SP:0 HP:0 #P:4)\n #    -----------------\n #    | task: kondemand/0-1641 (uid:0 nice:-5 policy:0 rt_prio:0)\n #    -----------------\n #\n #                  _------\u003d\u003e CPU#\n #                 / _-----\u003d\u003e irqs-off\n #                | / _----\u003d\u003e need-resched\n #                || / _---\u003d\u003e hardirq/softirq\n #                ||| / _--\u003d\u003e preempt-depth\n #                |||| /\n #                |||||     delay\n #  cmd     pid   ||||| time  |   caller\n #     \\   /      |||||   \\   |   /\n     sshd-2496    0d.s.    0us :   2496:120:R   + [000]  1641:115:S kondemand/0\n     sshd-2496    0d.s.    1us : default_wake_function \u003c-autoremove_wake_function\n     sshd-2496    0d.s.    1us : check_preempt_wakeup \u003c-try_to_wake_up\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLKML-Reference: \u003c20090308124421.23C3.A69D9226@jp.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dba58e39ced7af63f2748d12bbb2b4ac83c72391",
      "tree": "ee15a5e7667b51d0d0f7e8cb39064652f7c84c28",
      "parents": [
        "9de36825b321fe9fe9cf73260554251af579f4ca",
        "78ff7fae04554b49d29226ed12536268c2500d1f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 08 16:48:51 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 08 16:48:51 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/doc\u0027, \u0027tracing/ftrace\u0027, \u0027tracing/printk\u0027 and \u0027tracing/textedit\u0027 into tracing/core\n"
    },
    {
      "commit": "9de36825b321fe9fe9cf73260554251af579f4ca",
      "tree": "0bde90baa93cb7a1ac09c6ae73d6ec1d67ac2f44",
      "parents": [
        "769b0441f438c4bb4872cb8560eb6fe51bcc09ee"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 17:52:03 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 17:59:12 2009 +0100"
      },
      "message": "tracing: trace_bprintk() cleanups\n\nImpact: cleanup\n\nRemove a few leftovers and clean up the code a bit.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1236356510-8381-5-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "769b0441f438c4bb4872cb8560eb6fe51bcc09ee",
      "tree": "9908682dfd89e97c3097a7c3adcae35d821e1895",
      "parents": [
        "1ba28e02a18cbdbea123836f6c98efb09cbf59ec"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Mar 06 17:21:49 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 17:59:12 2009 +0100"
      },
      "message": "tracing/core: drop the old trace_printk() implementation in favour of trace_bprintk()\n\nImpact: faster and lighter tracing\n\nNow that we have trace_bprintk() which is faster and consume lesser\nmemory than trace_printk() and has the same purpose, we can now drop\nthe old implementation in favour of the binary one from trace_bprintk(),\nwhich means we move all the implementation of trace_bprintk() to\ntrace_printk(), so the Api doesn\u0027t change except that we must now use\ntrace_seq_bprintk() to print the TRACE_PRINT entries.\n\nSome changes result of this:\n\n- Previously, trace_bprintk depended of a single tracer and couldn\u0027t\n  work without. This tracer has been dropped and the whole implementation\n  of trace_printk() (like the module formats management) is now integrated\n  in the tracing core (comes with CONFIG_TRACING), though we keep the file\n  trace_printk (previously trace_bprintk.c) where we can find the module\n  management. Thus we don\u0027t overflow trace.c\n\n- changes some parts to use trace_seq_bprintk() to print TRACE_PRINT entries.\n\n- change a bit trace_printk/trace_vprintk macros to support non-builtin formats\n  constants, and fix \u0027const\u0027 qualifiers warnings. But this is all transparent for\n  developers.\n\n- etc...\n\nV2:\n\n- Rebase against last changes\n- Fix mispell on the changelog\n\nV3:\n\n- Rebase against last changes (moving trace_printk() to kernel.h)\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1236356510-8381-5-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1ba28e02a18cbdbea123836f6c98efb09cbf59ec",
      "tree": "41df06a06c702152902ffd7250f284a6efe9b0da",
      "parents": [
        "1427cdf0592368bdec57276edaf714040ee8744f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 06 17:21:48 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 17:59:11 2009 +0100"
      },
      "message": "tracing: add trace_bprintk()\n\nImpact: add a generic printk() for tracing, like trace_printk()\n\ntrace_bprintk() uses the infrastructure to record events on ring_buffer.\n\n[ fweisbec@gmail.com: ported to latest -tip, made it work if\n  !CONFIG_MODULES, never free the format strings from modules\n  because we can\u0027t keep track of them and conditionnaly create\n  the ftrace format strings section (reported by Steven Rostedt) ]\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1236356510-8381-4-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1427cdf0592368bdec57276edaf714040ee8744f",
      "tree": "4b214ee49643db383328cf53a31959eb0627a167",
      "parents": [
        "546e5354a6e4ec760ac03ef1148e9a4762abb5f5"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 06 17:21:47 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 17:59:11 2009 +0100"
      },
      "message": "tracing: infrastructure for supporting binary record\n\nImpact: save on memory for tracing\n\nCurrent tracers are typically using a struct(like struct ftrace_entry,\nstruct ctx_switch_entry, struct special_entr etc...)to record a binary\nevent. These structs can only record a their own kind of events.\nA new kind of tracer need a new struct and a lot of code too handle it.\n\nSo we need a generic binary record for events. This infrastructure\nis for this purpose.\n\n[fweisbec@gmail.com: rebase against latest -tip, make it safe while sched\ntracing as reported by Steven Rostedt]\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1236356510-8381-3-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4460fdad85becd569f11501ad5b91814814335ff",
      "tree": "7c781d0131f6130498ee2a346c7e95eb9b9b869f",
      "parents": [
        "0e39ac444636ff5be39b26f1cb56d79594654dda"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Fri Mar 06 10:36:38 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 16:49:00 2009 +0100"
      },
      "message": "tracing, Text Edit Lock - kprobes architecture independent support\n\nUse the mutual exclusion provided by the text edit lock in the kprobes code. It\nallows coherent manipulation of the kernel code by other subsystems.\n\nChangelog:\n\nMove the kernel_text_lock/unlock out of the for loops.\nUse text_mutex directly instead of a function.\nRemove whitespace modifications.\n\n(note : kprobes_mutex is always taken outside of text_mutex)\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nAcked-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nLKML-Reference: \u003c49B14306.2080202@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f0ef03985130287c6c84ebe69416cf790e6cc00e",
      "tree": "3ecb04cc4d82e5fc3ae5f1747e6da172ae8cbcb7",
      "parents": [
        "16097439703bcd38e9fe5608c12add6dacb825ea",
        "31bbed527e7039203920c51c9fb48c27aed0820c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 16:44:14 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 16:45:01 2009 +0100"
      },
      "message": "Merge branch \u0027x86/core\u0027 into tracing/textedit\n\nConflicts:\n\tarch/x86/Kconfig\n\tblock/blktrace.c\n\tkernel/irq/handle.c\n\nSemantic conflict:\n\tkernel/trace/blktrace.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "10dd3ebe213c31bff14b4dae3c5d32a76b1fad7c",
      "tree": "251609d532ccbb4c157a2c5c3d7a5b8176eeab8c",
      "parents": [
        "422d3c7a577b15e1384c9d4e72a9540896b685fa"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Fri Mar 06 15:29:04 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 12:07:38 2009 +0100"
      },
      "message": "tracing: fix deadlock when setting set_ftrace_pid\n\nImpact: fix deadlock while using set_ftrace_pid\n\nReproducer:\n\n\t# cd /sys/kernel/debug/tracing\n\t# echo $$ \u003e set_ftrace_pid\n\n\tthen, console becomes hung.\n\nDetails:\n\nwhen writing set_ftracepid, kernel callstack is following\n\n\tftrace_pid_write()\n\t\tmutex_lock(\u0026ftrace_lock);\n\t\tftrace_update_pid_func()\n\t\t\tmutex_lock(\u0026ftrace_lock);\n\t\t\tmutex_unlock(\u0026ftrace_lock);\n\t\tmutex_unlock(\u0026ftrace_lock);\n\nthen, system always deadlocks when ftrace_pid_write() is called.\n\nIn past days, ftrace_pid_write() used ftrace_start_lock, but\ncommit e6ea44e9b4c12325337cd1c06103cd515a1c02b2 consolidated\nftrace_start_lock to ftrace_lock.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nLKML-Reference: \u003c20090306151155.0778.A69D9226@jp.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "422d3c7a577b15e1384c9d4e72a9540896b685fa",
      "tree": "8852c53347ec55c53bea321bd9b9f07cd9cc9d66",
      "parents": [
        "bc722f508a5bcbb65a7bb0c7ce8e3934f5763a1a"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Fri Mar 06 10:40:53 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 11:56:42 2009 +0100"
      },
      "message": "tracing: current tip/master can\u0027t enable ftrace\n\nAfter commit 40ada30f9621fbd831ac2437b9a2a399aad34b00,\n\"make menuconfig\" doesn\u0027t display \"Tracer\" item.\n\nFollowing modification restores it.\n"
    },
    {
      "commit": "bc722f508a5bcbb65a7bb0c7ce8e3934f5763a1a",
      "tree": "d6494e409a671669614e7a08a5328e8def277225",
      "parents": [
        "16097439703bcd38e9fe5608c12add6dacb825ea",
        "770cb24345c0f6e0d47bd2b94aa6d67bea6f8b54"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 11:40:37 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 11:40:37 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "16097439703bcd38e9fe5608c12add6dacb825ea",
      "tree": "9f6572fefdeb3e7c61f701ed9a86979d5525ccd8",
      "parents": [
        "40ada30f9621fbd831ac2437b9a2a399aad34b00",
        "0012693ad4f636c720fed3802027f9427962f540"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 11:39:18 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 11:39:18 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027 and \u0027tracing/function-graph-tracer\u0027 into tracing/core\n"
    },
    {
      "commit": "edcb463997ed7b2ffa3bac76e3e75957318f2e01",
      "tree": "d1eefb78736404993b0de4a049392f9af578e29e",
      "parents": [
        "3e24aa58907c62bc79d1094e941a374568f62522"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Mar 06 14:33:59 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Mar 06 14:33:59 2009 +0900"
      },
      "message": "percpu, module: implement reserved allocation and use it for module percpu variables\n\nImpact: add reserved allocation functionality and use it for module\n\tpercpu variables\n\nThis patch implements reserved allocation from the first chunk.  When\nsetting up the first chunk, arch can ask to set aside certain number\nof bytes right after the core static area which is available only\nthrough a separate reserved allocator.  This will be used primarily\nfor module static percpu variables on architectures with limited\nrelocation range to ensure that the module perpcu symbols are inside\nthe relocatable range.\n\nIf reserved area is requested, the first chunk becomes reserved and\nisn\u0027t available for regular allocation.  If the first chunk also\nincludes piggy-back dynamic allocation area, a separate chunk mapping\nthe same region is created to serve dynamic allocation.  The first one\nis called static first chunk and the second dynamic first chunk.\nAlthough they share the page map, their different area map\ninitializations guarantee they serve disjoint areas according to their\npurposes.\n\nIf arch doesn\u0027t setup reserved area, reserved allocation is handled\nlike any other allocation.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "770cb24345c0f6e0d47bd2b94aa6d67bea6f8b54",
      "tree": "ec76651c686c02249c1455446801cf2b9d823879",
      "parents": [
        "33b0c229e3abeae00493ed1d6f0b07191977a0a2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 05 21:35:29 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 05 21:46:44 2009 -0500"
      },
      "message": "tracing: add format files for ftrace default entries\n\nImpact: allow user apps to read binary format of basic ftrace entries\n\nCurrently, only defined raw events export their formats so a binary\nreader can parse them. There\u0027s no reason that the default ftrace entries\ncan\u0027t export their formats.\n\nThis patch adds a subsystem called \"ftrace\" in the events directory\nthat includes the ftrace entries for basic ftrace recorded items.\n\nThese only have three files in the events directory:\n\n type             : printf\n available_types  : printf\n format           : format for the event entry\n\nFor example:\n\n # cat /debug/tracing/events/ftrace/wakeup/format\nname: wakeup\nID: 3\nformat:\n        field:unsigned char type;       offset:0;       size:1;\n        field:unsigned char flags;      offset:1;       size:1;\n        field:unsigned char preempt_count;      offset:2;       size:1;\n        field:int pid;  offset:4;       size:4;\n        field:int tgid; offset:8;       size:4;\n\n        field:unsigned int prev_pid;    offset:12;      size:4;\n        field:unsigned char prev_prio;  offset:16;      size:1;\n        field:unsigned char prev_state; offset:17;      size:1;\n        field:unsigned int next_pid;    offset:20;      size:4;\n        field:unsigned char next_prio;  offset:24;      size:1;\n        field:unsigned char next_state; offset:25;      size:1;\n        field:unsigned int next_cpu;    offset:28;      size:4;\n\nprint fmt: \"%u:%u:%u  \u003d\u003d+ %u:%u:%u [%03u]\"\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "33b0c229e3abeae00493ed1d6f0b07191977a0a2",
      "tree": "f11127408c678be82545f8c949f49f499c3b6f95",
      "parents": [
        "5e2336a0d47c9661a40cc5ef85135ce1406af6e8"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 05 11:45:43 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 05 21:46:42 2009 -0500"
      },
      "message": "tracing: move print of event format to separate file\n\nImpact: clean up\n\nMove the macro that creates the event format file to a separate header.\nThis will allow the default ftrace events to use this same macro\nto create the formats to read those events.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "5e2336a0d47c9661a40cc5ef85135ce1406af6e8",
      "tree": "6d977e4471f8e31245602a26e939368689d2383a",
      "parents": [
        "2002c258faaa8f89543df284fdbaa9e4b171547f"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 05 21:44:55 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 05 21:46:40 2009 -0500"
      },
      "message": "tracing: make all file_operations const\n\nImpact: cleanup\n\nAll file_operations structures should be constant. No one is going to\nchange them.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "40ada30f9621fbd831ac2437b9a2a399aad34b00",
      "tree": "47df1abc756d9ce33feec3eb5bb601edafbcf14c",
      "parents": [
        "526211bc58c4b3265352801c5a7f469af5c34711"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 05 21:19:55 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 05 21:53:25 2009 +0100"
      },
      "message": "tracing: clean up menu\n\nClean up menu structure, introduce TRACING_SUPPORT switch that signals\nwhether an architecture supports various instrumentation mechanisms.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ],
  "next": "a1413c89ae6a4b7a9a43f7768934a81ffb5c629a"
}
