)]}'
{
  "log": [
    {
      "commit": "7e40798f406fe73f9bac496a390daabd8768a8f7",
      "tree": "c75eee47b3d324218c53bf4f6af5b2fa9780d1db",
      "parents": [
        "78c89ba121221d9224a5747803d7fffe51cd6e44"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Oct 19 10:56:19 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Oct 19 10:56:19 2010 -0400"
      },
      "message": "tracing: Fix compile issue for trace_sched_wakeup.c\n\nThe function start_func_tracer() was incorrectly added in the\n #ifdef CONFIG_FUNCTION_TRACER condition, but is still used even\nwhen function tracing is not enabled.\n\nThe calls to register_ftrace_function() and register_ftrace_graph()\nbecome nops (and their arguments are even ignored), thus there is\nno reason to hide start_func_tracer() when function tracing is\nnot enabled.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "78c89ba121221d9224a5747803d7fffe51cd6e44",
      "tree": "08f529d73a27513014a15c0a21dfa2d106a68368",
      "parents": [
        "5e6d2b9cfa3a6e7fe62fc0135bc1bd778f5db564"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Oct 05 23:22:19 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 18 10:53:38 2010 -0400"
      },
      "message": "tracing: Remove parent recording in latency tracer graph options\n\nEven though the parent is recorded with the normal function tracing\nof the latency tracers (irqsoff and wakeup), the function graph\nrecording is bogus.\n\nThis is due to the function graph messing with the return stack.\nThe latency tracers pass in as the parent CALLER_ADDR0, which\nworks fine for plain function tracing. But this causes bogus output\nwith the graph tracer:\n\n 3)    \u003cidle\u003e-0    |  d.s3.  0.000 us    |  return_to_handler();\n 3)    \u003cidle\u003e-0    |  d.s3.  0.000 us    |  _raw_spin_unlock_irqrestore();\n 3)    \u003cidle\u003e-0    |  d.s3.  0.000 us    |  return_to_handler();\n 3)    \u003cidle\u003e-0    |  d.s3.  0.000 us    |  trace_hardirqs_on();\n\nThe \"return_to_handle()\" call is the trampoline of the\nfunction graph tracer, and is meaningless in this context.\n\nCc: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "5e6d2b9cfa3a6e7fe62fc0135bc1bd778f5db564",
      "tree": "5ef2d83c172b0e22dea1532d33e491471a1cc6e7",
      "parents": [
        "542181d3769d001c59cd17573dd4381e87d215f2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Oct 05 19:41:43 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 18 10:53:36 2010 -0400"
      },
      "message": "tracing: Use one prologue for the preempt irqs off tracer function tracers\n\nThe preempt and irqsoff tracers have three types of function tracers.\nNormal function tracer, function graph entry, and function graph return.\nEach of these use a complex dance to prevent recursion and whether\nto trace the data or not (depending if interrupts are enabled or not).\n\nThis patch moves the duplicate code into a single routine, to\nprevent future mistakes with modifying duplicate complex code.\n\nCc: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "542181d3769d001c59cd17573dd4381e87d215f2",
      "tree": "ffb13617cd0fee70cdd1a9eb869daca272b07454",
      "parents": [
        "7495a5beaa22f190f4888aa8cbe4827c16575d0a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Oct 05 16:38:49 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 18 10:53:33 2010 -0400"
      },
      "message": "tracing: Use one prologue for the wakeup tracer function tracers\n\nThe wakeup tracer has three types of function tracers. Normal\nfunction tracer, function graph entry, and function graph return.\nEach of these use a complex dance to prevent recursion and whether\nto trace the data or not (depending on the wake_task variable).\n\nThis patch moves the duplicate code into a single routine, to\nprevent future mistakes with modifying duplicate complex code.\n\nCc: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "7495a5beaa22f190f4888aa8cbe4827c16575d0a",
      "tree": "8e094689aba97c6739450f32ee2ca6fe0c58d319",
      "parents": [
        "0a772620a2e21fb55a02f70fe38d4b5c3a5fbbbf"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Thu Sep 23 14:00:53 2010 +0200"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 18 10:53:30 2010 -0400"
      },
      "message": "tracing: Graph support for wakeup tracer\n\nAdd function graph support for wakeup latency tracer.\nThe graph output is enabled by setting the \u0027display-graph\u0027\ntrace option.\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nLKML-Reference: \u003c1285243253-7372-4-git-send-email-jolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0a772620a2e21fb55a02f70fe38d4b5c3a5fbbbf",
      "tree": "f868daa13783b0dc99f43c53c2a53c2dfa92b85e",
      "parents": [
        "a9d61173dc1cb63e660ae89e874e51ba4fd2f991"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Thu Sep 23 14:00:52 2010 +0200"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 18 10:53:28 2010 -0400"
      },
      "message": "tracing: Make graph related irqs/preemptsoff functions global\n\nMove trace_graph_function() and print_graph_headers_flags() functions\nto the trace_function_graph.c to be globaly available.\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nLKML-Reference: \u003c1285243253-7372-3-git-send-email-jolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a9d61173dc1cb63e660ae89e874e51ba4fd2f991",
      "tree": "e1ca3badfc9604199670d049e26871bd69d8932f",
      "parents": [
        "907f27840985fe6a0c62e43cd4702c6e04b4bcc7"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Fri Sep 24 17:41:02 2010 +0200"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 18 10:53:25 2010 -0400"
      },
      "message": "tracing: Add proper check for irq_depth routines\n\nThe check_irq_entry and check_irq_return could be called\nfrom graph event context. In such case there\u0027s no graph\nprivate data allocated. Adding checks to handle this case.\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nLKML-Reference: \u003c20100924154102.GB1818@jolsa.brq.redhat.com\u003e\n\n[ Fixed some grammar in the comments ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "907f27840985fe6a0c62e43cd4702c6e04b4bcc7",
      "tree": "1023e32295a25e0602aef4bab14f41b97975f6bd",
      "parents": [
        "f92f6e6ee35d2779aa62e70f78ad8e1cd417eb52"
      ],
      "author": {
        "name": "matt mooney",
        "email": "mfm@muteddisk.com",
        "time": "Mon Sep 27 19:04:53 2010 -0700"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Oct 18 10:53:22 2010 -0400"
      },
      "message": "tracing/trivial: Remove cast from void*\n\nUnnecessary cast from void* in assignment.\n\nSigned-off-by: matt mooney \u003cmfm@muteddisk.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0fdf13606b67f830559abdaad15980c7f4f05ec4",
      "tree": "dd69bf50a6d27cd15f1876657584e4e2b526d9d8",
      "parents": [
        "d9d572a9c0195486e3baf0d8d6a710196a707335",
        "cf4db2597ae93b60efc0a7a4ec08690b75d629b1"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 15 06:12:28 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 15 06:12:28 2010 +0200"
      },
      "message": "Merge branch \u0027tip/perf/recordmcount-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "cf4db2597ae93b60efc0a7a4ec08690b75d629b1",
      "tree": "12ee3585d7a65291032b3258000523d6386c7d2e",
      "parents": [
        "c28d5077f8d79bfce1e3f88db2e261cf2b6473dc"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Oct 14 23:32:44 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Oct 14 23:32:44 2010 -0400"
      },
      "message": "ftrace: Rename config option HAVE_C_MCOUNT_RECORD to HAVE_C_RECORDMCOUNT\n\nThe config option used by archs to let the build system know that\nthe C version of the recordmcount works for said arch is currently\ncalled HAVE_C_MCOUNT_RECORD which enables BUILD_C_RECORDMCOUNT. To\nbe more consistent with the name that all archs may use, it has been\nrenamed to HAVE_C_RECORDMCOUNT. This will be less confusing since\nwe are building a C recordmcount and not a mcount_record.\n\nSuggested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: Michal Marek \u003cmmarek@suse.cz\u003e\nCc: linux-kbuild@vger.kernel.org\nCc: John Reiser \u003cjreiser@bitwagon.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "72441cb1fd77d092f09ddfac748955703884c9a7",
      "tree": "3b02aecebf718f1cb6e9752b809e825b237527da",
      "parents": [
        "81d3858d3131a589cade0d8b57f95cc1fc699b89"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Oct 13 17:12:30 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Oct 14 16:52:41 2010 -0400"
      },
      "message": "ftrace/x86: Add support for C version of recordmcount\n\nThis patch adds the support for the C version of recordmcount and\ncompile times show ~ 12% improvement.\n\nAfter verifying this works, other archs can add:\n\n HAVE_C_MCOUNT_RECORD\n\nin its Kconfig and it will use the C version of recordmcount\ninstead of the perl version.\n\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: Michal Marek \u003cmmarek@suse.cz\u003e\nCc: linux-kbuild@vger.kernel.org\nCc: John Reiser \u003cjreiser@bitwagon.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "14cae9bd2faf6d0d75702c2e107e75207bcdfec1",
      "tree": "78b3d25ee41713ae5324c6f19e149817605780ac",
      "parents": [
        "7cd2541cf2395962daf98ec32a141aba3398a9b2"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "bp@alien8.de",
        "time": "Wed Sep 29 10:08:23 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Oct 13 17:47:53 2010 +0200"
      },
      "message": "tracing: Fix function-graph build warning on 32-bit\n\nFix\n\nkernel/trace/trace_functions_graph.c: In function ‘trace_print_graph_duration’:\nkernel/trace/trace_functions_graph.c:652: warning: comparison of distinct pointer types lacks a cast\n\nwhen building 36-rc6 on a 32-bit due to the strict type check failing\nin the min() macro.\n\nSigned-off-by: Borislav Petkov \u003cbp@alien8.de\u003e\nCc: Chase Douglas \u003cchase.douglas@canonical.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nLKML-Reference: \u003c20100929080823.GA13595@liondog.tnic\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "e0cf0cd49632552f063fb3ae58691946da45fb2e",
      "tree": "69bf197142ba0ceb0b10d792ef76b9a61c891912",
      "parents": [
        "bf5438fca2950b03c21ad868090cc1a8fcd49536"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Fri Sep 17 11:09:04 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Sep 22 16:30:03 2010 -0400"
      },
      "message": "jump label: Initialize workqueue tracepoints *before* they are registered\n\nInitialize the workqueue data structures *before* they are registered\nso that they are ready for callbacks.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nLKML-Reference: \u003ce3a3383fc370ac7086625bebe89d9480d7caf372.1284733808.git.jbaron@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "3aabae7d9dfaed60effe93662f02c19bafc18537",
      "tree": "af94cdd69add07601d9f3f5988dfc1dc255e3886",
      "parents": [
        "79e406d7b00ab2b261ae32a59f266fd3b7af6f29",
        "57c072c7113f54f9512624d6c665db6184448782"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Sep 15 10:27:31 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Sep 15 10:27:31 2010 +0200"
      },
      "message": "Merge branch \u0027tip/perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "79e406d7b00ab2b261ae32a59f266fd3b7af6f29",
      "tree": "e1f635e807691cb634fd63478861938592f226fa",
      "parents": [
        "b304d0441a4118fadd4c3f16e4dc600c271030b5"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Sep 14 22:19:46 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Sep 14 22:19:46 2010 -0400"
      },
      "message": "tracing: Remove leftover FTRACE_ENABLE/DISABLE_MCOUNT enums\n\nThe enums for FTRACE_ENABLE_MCOUNT and FTRACE_DISABLE_MCOUNT were\nused as commands to ftrace_run_update_code(). But these commands\nwere used by the old nasty ftrace daemon that has long been slain.\n\nThis is a clean up patch to remove the references to these enums\nand simplify the code a little.\n\nReported-by: Wu Zhangjin \u003cwuzhangjin@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b304d0441a4118fadd4c3f16e4dc600c271030b5",
      "tree": "ed477c965cf6eaf852f69f7dd855c0ea83f8e36d",
      "parents": [
        "2bd16212b8eb86f9574e78d6605a5ba9e9aa8c4e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Sep 14 18:58:33 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Sep 14 20:18:07 2010 -0400"
      },
      "message": "tracing: Do not trace in irq when funcgraph-irq option is zero\n\nWhen the function graph tracer funcgraph-irq option is zero, disable\ntracing in IRQs. This makes the option have two effects.\n\n1) When reading the trace file, do not display the functions that\n   happen in interrupt context (when detected)\n\n2) [*new*] When recording a trace, skip those that are detected\n   to be in interrupt by the \u0027in_irq()\u0027 function\n\nNote, in_irq() is updated at irq_enter() and irq_exit(). There are\nstill functions that are recorded by the function graph tracer that\nis in interrupt context but outside the irq_enter/exit() routines.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "2bd16212b8eb86f9574e78d6605a5ba9e9aa8c4e",
      "tree": "dc26de82f9830265eef31d9eebffce22f0ef632c",
      "parents": [
        "469917ce8717b9f8c5298bf279fa138859baab8d"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Tue Sep 07 16:53:44 2010 +0200"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Sep 14 20:18:07 2010 -0400"
      },
      "message": "tracing: Add funcgraph-irq option for function graph tracer.\n\nIt\u0027s handy to be able to disable the irq related output\nand not to have to jump over each irq related code, when\nyou have no interrest in it.\n\nThe option is by default enabled, so there\u0027s no change to\ncurrent behaviour. It affects only the final output, so all\nthe irq related data stay in the ring buffer.\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nLKML-Reference: \u003c20100907145344.GC1912@jolsa.brq.redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "57c072c7113f54f9512624d6c665db6184448782",
      "tree": "c005a9325d308763bd1763853395c7b13010b5e3",
      "parents": [
        "98c4fd046f07156ca6055677e8f03d4280be16c1"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Sep 14 11:21:11 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Sep 14 15:14:20 2010 -0400"
      },
      "message": "tracing: Fix reading of set_ftrace_filter across lists\n\nIf we do:\n\n # cd /sys/kernel/debug\n # echo \u0027do_IRQ:traceon schedule:traceon sys_write:traceon\u0027 \u003e \\\n    set_ftrace_filter\n # cat set_ftrace_filter\n\nWe get the following output:\n\n #### all functions enabled ####\n sys_write:traceon:unlimited\n schedule:traceon:unlimited\n do_IRQ:traceon:unlimited\n\nThis outputs two lists. One is the fact that all functions are\ncurrently enabled for function tracing, the other has three probed\nfunctions, which happen to have \u0027traceon\u0027 as their commands.\n\nCurrently, when reading the first list (functions enabled) the\nseq_file code will receive a \"NULL\" from the t_next() function\ncausing it to exit early. This makes \"read()\" from userspace stop\nreading the code at this boarder. Although read is allowed to do this,\nsome (broken) applications might consider this an end of file and\nstop early.\n\nThis patch adds the start of the second list to t_next() when it\nfinishes the first list. It is a simple change and gives the\nset_ftrace_filter file nicer reading ability.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "98c4fd046f07156ca6055677e8f03d4280be16c1",
      "tree": "bf461479713dbbaf79b0bf1a50a3ba0f30a2f17c",
      "parents": [
        "4aeb69672d011fac5c8df671f3ca89f7987c104e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Sep 10 11:47:43 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Sep 14 14:46:01 2010 -0400"
      },
      "message": "tracing: Keep track of set_ftrace_filter position and allow lseek again\n\nThis patch keeps track of the index within the elements of\nset_ftrace_filter and if the position goes backwards, it nicely\nresets and starts from the beginning again.\n\nThis allows for lseek and pread to work properly now.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "4aeb69672d011fac5c8df671f3ca89f7987c104e",
      "tree": "d2a96af23b9d6ac742725bb17aafe3d4b377cb6a",
      "parents": [
        "2bccfffd1538f3523847583213567e2f7ce00926"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Sep 09 10:00:28 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Sep 14 11:42:30 2010 -0400"
      },
      "message": "tracing: Replace typecasted void pointer in set_ftrace_filter code\n\nThe set_ftrace_filter uses seq_file and reads from two lists. The\npointer returned by t_next() can either be of type struct dyn_ftrace\nor struct ftrace_func_probe. If there is a bug (there was one)\nthe wrong pointer may be used and the reference can cause an oops.\n\nThis patch makes t_next() and friends only return the iterator structure\nwhich now has a pointer of type struct dyn_ftrace and struct\nftrace_func_probe. The t_show() can now test if the pointer is NULL or\nnot and if the pointer exists, it is guaranteed to be of the correct type.\n\nNow if there\u0027s a bug, only wrong data will be shown but not an oops.\n\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "2bccfffd1538f3523847583213567e2f7ce00926",
      "tree": "7062e0bfc46f66efa2ec3231a6c718a901a0a80c",
      "parents": [
        "bfa88ea7ee9e6b4fd673e45a8cc0a8e0b7ef4761"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Sep 09 08:43:22 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Sep 14 11:42:29 2010 -0400"
      },
      "message": "tracing: Do not reset *pos in set_ftrace_filter\n\nAfter the filtered functions are read, the probed functions are read\nfrom the hash in set_ftrace_filter. When the hashed probed functions\nare read, the *pos passed in is reset. Instead of modifying the pos\ngiven to the read function, just record the pos where the filtered\nfunctions ended and subtract from that.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f2955b490b249ca56e465fd32cc355f84aedf8bd",
      "tree": "401faf98c61f4a0a65703644277521a10da98eec",
      "parents": [
        "3d96406c7da1ed5811ea52a3b0905f4f0e295376",
        "9efdda310cb26bdc28429cb831c3ec5fa270feb7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 10 07:31:24 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 10 07:31:24 2010 -0700"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: t_start: reset FTRACE_ITER_HASH in case of seek/pread\n  perf symbols: Fix multiple initialization of symbol system\n  perf: Fix CPU hotplug\n  perf, trace: Fix module leak\n  tracing/kprobe: Fix handling of C-unlike argument names\n  tracing/kprobes: Fix handling of argument names\n  perf probe: Fix handling of arguments names\n  perf probe: Fix return probe support\n  tracing/kprobe: Fix a memory leak in error case\n  tracing: Do not allow llseek to set_ftrace_filter\n"
    },
    {
      "commit": "df09162550fbb53354f0c88e85b5d0e6129ee9cc",
      "tree": "e8ba6014c442cf72d587948733f8c29e0d330925",
      "parents": [
        "5e11637e2c929e34dcc0fbbfb48bdb638937701a"
      ],
      "author": {
        "name": "Chris Wright",
        "email": "chrisw@sous-sol.org",
        "time": "Thu Sep 09 16:34:59 2010 -0700"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Sep 09 22:43:49 2010 -0400"
      },
      "message": "tracing: t_start: reset FTRACE_ITER_HASH in case of seek/pread\n\nBe sure to avoid entering t_show() with FTRACE_ITER_HASH set without\nhaving properly started the iterator to iterate the hash.  This case is\ndegenerate and, as discovered by Robert Swiecki, can cause t_hash_show()\nto misuse a pointer.  This causes a NULL ptr deref with possible security\nimplications.  Tracked as CVE-2010-3079.\n\nCc: Robert Swiecki \u003cswiecki@google.com\u003e\nCc: Eugene Teo \u003ceugene@redhat.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a4eaf7f14675cb512d69f0c928055e73d0c6d252",
      "tree": "e8a0f631fc28d4bd9becd2e9e2c71743c64ee3ec",
      "parents": [
        "fa407f35e0298d841e4088f95a7f9cf6e725c6d5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Jun 16 14:37:10 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Sep 09 20:46:30 2010 +0200"
      },
      "message": "perf: Rework the PMU methods\n\nReplace pmu::{enable,disable,start,stop,unthrottle} with\npmu::{add,del,start,stop}, all of which take a flags argument.\n\nThe new interface extends the capability to stop a counter while\nkeeping it scheduled on the PMU. We replace the throttled state with\nthe generic stopped state.\n\nThis also allows us to efficiently stop/start counters over certain\ncode paths (like IRQ handlers).\n\nIt also allows scheduling a counter without it starting, allowing for\na generic frozen state (useful for rotating stopped counters).\n\nThe stopped state is implemented in two different ways, depending on\nhow the architecture implemented the throttled state:\n\n 1) We disable the counter:\n    a) the pmu has per-counter enable bits, we flip that\n    b) we program a NOP event, preserving the counter state\n\n 2) We store the counter state and ignore all read/overflow events\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: paulus \u003cpaulus@samba.org\u003e\nCc: stephane eranian \u003ceranian@googlemail.com\u003e\nCc: Robert Richter \u003crobert.richter@amd.com\u003e\nCc: Will Deacon \u003cwill.deacon@arm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@gmail.com\u003e\nCc: Lin Ming \u003cming.m.lin@intel.com\u003e\nCc: Yanmin \u003cyanmin_zhang@linux.intel.com\u003e\nCc: Deng-Cheng Zhu \u003cdengcheng.zhu@gmail.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Michael Cree \u003cmcree@orcon.net.nz\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2aa61274efb9f532deaebc9812675a27af1994cb",
      "tree": "c2f70525dc152e0ddce60f1a3021473cc6a3f298",
      "parents": [
        "359d5106a2ff4ffa2ba129ec8f54743c341dabfc",
        "5e11637e2c929e34dcc0fbbfb48bdb638937701a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Sep 09 20:40:06 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Sep 09 20:40:08 2010 +0200"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: Pick up pending fixes before applying dependent new changes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9cb627d5f38830ca19aa0dca52d1d3a633018bf7",
      "tree": "38138b59d5b54c09314a01172586aa653cc3b528",
      "parents": [
        "da34634fd39958725310d2c30c9b4543945f968b"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Sep 01 12:58:43 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Sep 09 20:38:51 2010 +0200"
      },
      "message": "perf, trace: Fix module leak\n\nCommit 1c024eca (perf, trace: Optimize tracepoints by using\nper-tracepoint-per-cpu hlist to track events) caused a module\nrefcount leak.\n\nReported-And-Tested-by: Avi Kivity \u003cavi@redhat.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c4C7E1F12.8030304@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "79637a41e466bbe7dfe394bac3c9d86a92fd55b1",
      "tree": "0ee720d20572a3e1f901f78331b57612984f1e2e",
      "parents": [
        "899edae615c806f78880077bd46f04d7f23ae6e6",
        "b3bd3de66f60df4c9a2076e2886a622458929056"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 08 11:13:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 08 11:13:42 2010 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  gcc-4.6: kernel/*: Fix unused but set warnings\n  mutex: Fix annotations to include it in kernel-locking docbook\n  pid: make setpgid() system call use RCU read-side critical section\n  MAINTAINERS: Add RCU\u0027s public git tree\n"
    },
    {
      "commit": "da34634fd39958725310d2c30c9b4543945f968b",
      "tree": "034fa85a0f8ca36fe0e3caa8803b4a6fbe3b9319",
      "parents": [
        "aba91595cfcebd193425e20aabc407531526a1c5"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "masami.hiramatsu.pt@hitachi.com",
        "time": "Fri Aug 27 20:39:12 2010 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Sep 08 11:47:19 2010 -0300"
      },
      "message": "tracing/kprobe: Fix handling of C-unlike argument names\n\nCheck the argument name whether it is invalid (not C-like symbol name). This\nmakes event format simple.\n\nReported-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nLKML-Reference: \u003c20100827113912.22882.62313.stgit@ltc236.sdl.hitachi.co.jp\u003e\nSigned-off-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "aba91595cfcebd193425e20aabc407531526a1c5",
      "tree": "5473ed5aebc93bb0aea03a17d7ed968ca0e95dce",
      "parents": [
        "367e94c10092469c896a226a77ef13cf6da757e4"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "masami.hiramatsu.pt@hitachi.com",
        "time": "Fri Aug 27 20:39:06 2010 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Sep 08 11:47:19 2010 -0300"
      },
      "message": "tracing/kprobes: Fix handling of argument names\n\nSet \"argN\" name for each argument automatically if it has no specified name.\nSince dynamic trace event(kprobe_events) accepts special characters for its\nargument, its format can show those special characters (e.g. \u0027$\u0027, \u0027%\u0027, \u0027+\u0027).\nHowever, perf can\u0027t parse those format because of the character (especially\n\u0027%\u0027) mess up the format.  This sets \"argX\" name for those arguments if user\nomitted the argument names.\n\nE.g.\n # echo \u0027p do_fork %ax IP\u003d%ip $stack\u0027 \u003e tracing/kprobe_events\n # cat tracing/kprobe_events\n p:kprobes/p_do_fork_0 do_fork arg1\u003d%ax IP\u003d%ip arg3\u003d$stack\n\nReported-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nLKML-Reference: \u003c20100827113906.22882.59312.stgit@ltc236.sdl.hitachi.co.jp\u003e\nSigned-off-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "61a527362234ac3352a91ac67c50c6f7cd248eb1",
      "tree": "6d3ed6390f61d7819c11b459d86d5dac76ca7f0c",
      "parents": [
        "9c55cb12c1c172e2d51e85fbb5a4796ca86b77e7"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "masami.hiramatsu.pt@hitachi.com",
        "time": "Fri Aug 27 20:38:46 2010 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Sep 08 11:47:18 2010 -0300"
      },
      "message": "tracing/kprobe: Fix a memory leak in error case\n\nFix a memory leak which happens when a field name conflicts with others. In\nerror case, free_trace_probe() will free all arguments until nr_args, so this\nincrements nr_args the begining of the loop instead of the end.\n\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nLKML-Reference: \u003c20100827113846.22882.12670.stgit@ltc236.sdl.hitachi.co.jp\u003e\nSigned-off-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "9c55cb12c1c172e2d51e85fbb5a4796ca86b77e7",
      "tree": "0f86d1e27fbfc31cba108e71643d686315468db9",
      "parents": [
        "4177c42a6301a34c20038ec2771a33dcc30bb338"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Sep 08 11:20:37 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Sep 08 12:08:01 2010 -0400"
      },
      "message": "tracing: Do not allow llseek to set_ftrace_filter\n\nReading the file set_ftrace_filter does three things.\n\n1) shows whether or not filters are set for the function tracer\n2) shows what functions are set for the function tracer\n3) shows what triggers are set on any functions\n\n3 is independent from 1 and 2.\n\nThe way this file currently works is that it is a state machine,\nand as you read it, it may change state. But this assumption breaks\nwhen you use lseek() on the file. The state machine gets out of sync\nand the t_show() may use the wrong pointer and cause a kernel oops.\n\nLuckily, this will only kill the app that does the lseek, but the app\ndies while holding a mutex. This prevents anyone else from using the\nset_ftrace_filter file (or any other function tracing file for that matter).\n\nA real fix for this is to rewrite the code, but that is too much for\na -rc release or stable. This patch simply disables llseek on the\nset_ftrace_filter() file for now, and we can do the proper fix for the\nnext major release.\n\nReported-by: Robert Swiecki \u003cswiecki@google.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Tavis Ormandy \u003ctaviso@google.com\u003e\nCc: Eugene Teo \u003ceugene@redhat.com\u003e\nCc: vendor-sec@lst.de\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b3bd3de66f60df4c9a2076e2886a622458929056",
      "tree": "d0b1fa885acfa96536cf74f487acb28d63442b83",
      "parents": [
        "ef5dc121d5a0bb1fa477c5395277259f07d318a3"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Aug 10 14:17:51 2010 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Sep 05 14:36:58 2010 +0200"
      },
      "message": "gcc-4.6: kernel/*: Fix unused but set warnings\n\nNo real bugs I believe, just some dead code.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: andi@firstfloor.org\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f6195aa09e618d712f52bf4fa33b5293820eb93d",
      "tree": "a41ef0dce7ebb3e670b6e1a7214a4f558110178e",
      "parents": [
        "c9cf4a019cff198ee5638323e3b0ee18886467e8"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Sep 01 12:23:12 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Sep 01 12:23:12 2010 -0400"
      },
      "message": "ring-buffer: Place duplicate expression into a single function\n\nWhile discussing the strictness of the 80 character limit on the\nKernel Summit Discussion mailing list, I showed examples that I\nbroke that limit slightly with some algorithms. In discussing with\nJohn Linville, what looked better, I realized that two of the\n80 char breaking culprits were an identical expression.\n\nAs a clean up, this patch moves the identical expression into its\nown helper function and that is used instead. As a side effect,\nthe offending code is now under the 80 character limit. :-)\n\nThis clean up code also changes the expression from\n\n\t(A - B) - C  to  A - (B + C)\n\nThis makes the code look a little nicer too.\n\nCc: John W. Linville \u003clinville@tuxdriver.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "3aaba20f26f58843e8f20611e5c0b1c06954310f",
      "tree": "ad15d7aa21af465ddf6091eb490d84312089f245",
      "parents": [
        "fa66f07aa1f0950e1dc78b7ab39728b3f8aa77a1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Aug 23 16:50:12 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Aug 31 16:46:23 2010 -0400"
      },
      "message": "tracing: Fix a race in function profile\n\nWhile we are reading trace_stat/functionX and someone just\ndisabled function_profile at that time, we can trigger this:\n\n\tdivide error: 0000 [#1] PREEMPT SMP\n\t...\n\tEIP is at function_stat_show+0x90/0x230\n\t...\n\nThis fix just takes the ftrace_profile_lock and checks if\nrec-\u003ecounter is 0. If it\u0027s 0, we know the profile buffer\nhas been reset.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: stable@kernel.org\nLKML-Reference: \u003c4C723644.4040708@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "98ee74a75ca0f047e75400afa712f7bf08268b8e",
      "tree": "c87b267f1e279173696f2294b3930940f1a5b570",
      "parents": [
        "7de5d895b2020260190db0021de646f3f22f755e",
        "5225c45899e872383ca39f5533d28ec63c54b39e"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Aug 27 02:28:40 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Aug 27 02:30:07 2010 +0200"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nConflicts:\n\ttools/perf/util/callchain.h\n\nMerge reason:\n\tFix a non-trivial conflict with latest fixes\n"
    },
    {
      "commit": "151772dbfad4dbe81721e40f9b3d588ea77bb7aa",
      "tree": "fea47f977d73063843d0e91e2a139c4f3fb71d6c",
      "parents": [
        "502adf5778f4151dcba3f64dd6ed322151f3712c"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Wed Aug 25 11:32:38 2010 +1000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Aug 25 13:08:48 2010 +0200"
      },
      "message": "tracing/trace_stack: Fix stack trace on ppc64\n\nsave_stack_trace() stores the instruction pointer, not the\nfunction descriptor. On ppc64 the trace stack code currently\ndereferences the instruction pointer and shows 8 bytes of\ninstructions in our backtraces:\n\n # cat /sys/kernel/debug/tracing/stack_trace\n        Depth    Size   Location    (26 entries)\n        -----    ----   --------\n  0)     5424     112   0x6000000048000004\n  1)     5312     160   0x60000000ebad01b0\n  2)     5152     160   0x2c23000041c20030\n  3)     4992     240   0x600000007c781b79\n  4)     4752     160   0xe84100284800000c\n  5)     4592     192   0x600000002fa30000\n  6)     4400     256   0x7f1800347b7407e0\n  7)     4144     208   0xe89f0108f87f0070\n  8)     3936     272   0xe84100282fa30000\n\nSince we aren\u0027t dealing with function descriptors, use %pS\ninstead of %pF to fix it:\n\n # cat /sys/kernel/debug/tracing/stack_trace\n        Depth    Size   Location    (26 entries)\n        -----    ----   --------\n  0)     5424     112   ftrace_call+0x4/0x8\n  1)     5312     160   .current_io_context+0x28/0x74\n  2)     5152     160   .get_io_context+0x48/0xa0\n  3)     4992     240   .cfq_set_request+0x94/0x4c4\n  4)     4752     160   .elv_set_request+0x60/0x84\n  5)     4592     192   .get_request+0x2d4/0x468\n  6)     4400     256   .get_request_wait+0x7c/0x258\n  7)     4144     208   .__make_request+0x49c/0x610\n  8)     3936     272   .generic_make_request+0x390/0x434\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nCc: rostedt@goodmis.org\nCc: fweisbec@gmail.com\nLKML-Reference: \u003c20100825013238.GE28360@kryten\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c8710ad38900153af7a3e6762e99c062cfa46443",
      "tree": "a0c0632274c4eb72f51e99a5861f71cffe65ea60",
      "parents": [
        "6016ee13db518ab1cd0cbf43fc2ad5712021e338",
        "86397dc3ccfc0e17b7550d05eaf15fe91f6498dd"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 19 12:48:09 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 19 12:48:09 2010 +0200"
      },
      "message": "Merge branch \u0027tip/perf/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "6016ee13db518ab1cd0cbf43fc2ad5712021e338",
      "tree": "317d1ed2b103db13fef6bb692a73235de41d764b",
      "parents": [
        "7ae07ea3a48d30689ee037cb136bc21f0b37d8ae"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Wed Aug 11 12:47:59 2010 +0900"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Aug 19 01:33:05 2010 +0200"
      },
      "message": "perf, tracing: add missing __percpu markups\n\nftrace_event_call-\u003eperf_events, perf_trace_buf,\nfgraph_data-\u003ecpu_data and some local variables are percpu pointers\nmissing __percpu markups. Add them.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLKML-Reference: \u003c1281498479-28551-1-git-send-email-namhyung@gmail.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "7ae07ea3a48d30689ee037cb136bc21f0b37d8ae",
      "tree": "2cb895a0794bcb2e45a4f48ef7e93302c1f6332c",
      "parents": [
        "927c7a9e92c4f69097a6e9e086d11fc2f8a5b40b"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Aug 14 20:45:13 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Aug 19 01:32:53 2010 +0200"
      },
      "message": "perf: Humanize the number of contexts\n\nInstead of hardcoding the number of contexts for the recursions\nbarriers, define a cpp constant to make the code more\nself-explanatory.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\n"
    },
    {
      "commit": "86397dc3ccfc0e17b7550d05eaf15fe91f6498dd",
      "tree": "219d5c76e1e8e1e40033071b885cc827afe7bb3b",
      "parents": [
        "351af0725e5222e35741011d1ea62215c1ed06db"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Aug 17 13:53:06 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Aug 18 11:09:14 2010 -0400"
      },
      "message": "tracing: Clean up seqfile code for format file\n\nRemove the nasty hack that marks a pointer\u0027s LSB to distinguish common\nfields from event fields. Replace it with a more sane approach.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4C6A23C2.9020606@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d244b6bd41e09ecbb09c738cc2c108be227398c8",
      "tree": "848c6a8a0d6f83929daf43d63e241dc8072066ac",
      "parents": [
        "da5cabf80e2433131bf0ed8993abc0f7ea618c73",
        "1aa54bca6ee0d07ebcafb8ca8074b624d80724aa"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Aug 16 11:17:30 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Aug 16 11:17:30 2010 -0400"
      },
      "message": "Merge branch \u0027tip/perf/urgent-3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into trace/tip/perf/urgent-4\n\nConflicts:\n\tkernel/trace/trace_events.c\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "1aa54bca6ee0d07ebcafb8ca8074b624d80724aa",
      "tree": "815f3c1d184b61958ee48eb868ed28b1e5aab278",
      "parents": [
        "2a37a3df57c44e947271758a1aa4bea7bff9feab"
      ],
      "author": {
        "name": "Marcin Slusarz",
        "email": "marcin.slusarz@gmail.com",
        "time": "Wed Jul 28 01:18:01 2010 +0200"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Aug 13 15:23:16 2010 -0400"
      },
      "message": "tracing: Sanitize value returned from write(trace_marker, \"...\", len)\n\nWhen userspace code writes non-new-line-terminated string to trace_marker\nfile, write handler appends new-line and returns number of bytes written\nto trace buffer, so\nwrite(fd, \"abc\", 3) will return 4\n\nThat\u0027s unexpected and unfortunately it confuses glibc\u0027s fprintf function.\n\nExample:\nint main() {\n  fprintf(stderr, \"abc\");\n  return 0;\n}\n\n$ gcc test.c -o test\n$ echo mmiotrace \u003e /sys/kernel/debug/tracing/current_tracer\n$ ./test 2\u003e/sys/kernel/debug/tracing/trace_marker\n\nresults in infinite loop:\nwrite(fd, \"abc\", 3) \u003d 4\nwrite(fd, \"\", 1) \u003d 0\nwrite(fd, \"\", 1) \u003d 0\nwrite(fd, \"\", 1) \u003d 0\nwrite(fd, \"\", 1) \u003d 0\nwrite(fd, \"\", 1) \u003d 0\nwrite(fd, \"\", 1) \u003d 0\nwrite(fd, \"\", 1) \u003d 0\n(...)\n\n...and kernel trace buffer full of empty markers.\n\nFix it by sanitizing write return value.\n\nSigned-off-by: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nLKML-Reference: \u003c20100727231801.GB2826@joi.lan\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "2a37a3df57c44e947271758a1aa4bea7bff9feab",
      "tree": "89d3e35a1c29f021d7ca0c468a391ec35f0db34b",
      "parents": [
        "465c6cca2668a2db2a4ffce3dca5714017873f2b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jun 03 15:21:34 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Aug 12 16:59:29 2010 -0400"
      },
      "message": "tracing/events: Convert format output to seq_file\n\nTwo new events were added that broke the current format output.\n\nBoth from the SCSI system: scsi_dispatch_cmd_done and scsi_dispatch_cmd_timeout\n\nThe reason is that their print_fmt exceeded a page size. Since the output\nof the format used simple_read_from_buffer and trace_seq, it was limited\nto a page size in output.\n\nThis patch converts the printing of the format of an event into seq_file,\nwhich allows greater than a page size to be shown.\n\nI diffed all event formats comparing the output with and without this\npatch. All matched except for the above two, which showed just:\n\n  FORMAT TOO BIG\n\nwithout this patch, but now properly displays the output with this patch.\n\nv2: Remove updating *pos in seq start function.\n   [ Thanks to Li Zefan for pointing that out ]\n\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nCc: Kei Tokunaga \u003ctokunaga.keiich@jp.fujitsu.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@suse.de\u003e\nCc: Tomohiro Kusumi \u003ckusumi.tomohiro@jp.fujitsu.com\u003e\nCc: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "8d57a98ccd0b4489003473979da8f5a1363ba7a3",
      "tree": "2982997ce66bb6a92c020b7189966c3097095fd7",
      "parents": [
        "93caf8e69eac763f6a20cf253ace8e7fc1ab7953"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "adrian.hunter@nokia.com",
        "time": "Wed Aug 11 14:17:49 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 12 08:43:30 2010 -0700"
      },
      "message": "block: add secure discard\n\nSecure discard is the same as discard except that all copies of the\ndiscarded sectors (perhaps created by garbage collection) must also be\nerased.\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\nAcked-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Kyungmin Park \u003ckmpark@infradead.org\u003e\nCc: Madhusudhan Chikkature \u003cmadhu.cr@ti.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Ben Gardiner \u003cbengardiner@nanometrics.ca\u003e\nCc: \u003clinux-mmc@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2f9e825d3e0e2b407ae8f082de5c00afcf7378fb",
      "tree": "f8b3ee40674ce4acd5508a0a0bf52a30904caf6c",
      "parents": [
        "7ae0dea900b027cd90e8a3e14deca9a19e17638b",
        "de75d60d5ea235e6e09f4962ab22541ce0fe176a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 15:22:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 15:22:42 2010 -0700"
      },
      "message": "Merge branch \u0027for-2.6.36\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.36\u0027 of git://git.kernel.dk/linux-2.6-block: (149 commits)\n  block: make sure that REQ_* types are seen even with CONFIG_BLOCK\u003dn\n  xen-blkfront: fix missing out label\n  blkdev: fix blkdev_issue_zeroout return value\n  block: update request stacking methods to support discards\n  block: fix missing export of blk_types.h\n  writeback: fix bad _bh spinlock nesting\n  drbd: revert \"delay probes\", feature is being re-implemented differently\n  drbd: Initialize all members of sync_conf to their defaults [Bugz 315]\n  drbd: Disable delay probes for the upcomming release\n  writeback: cleanup bdi_register\n  writeback: add new tracepoints\n  writeback: remove unnecessary init_timer call\n  writeback: optimize periodic bdi thread wakeups\n  writeback: prevent unnecessary bdi threads wakeups\n  writeback: move bdi threads exiting logic to the forker thread\n  writeback: restructure bdi forker loop a little\n  writeback: move last_active to bdi\n  writeback: do not remove bdi from bdi_list\n  writeback: simplify bdi code a little\n  writeback: do not lose wake-ups in bdi threads\n  ...\n\nFixed up pretty trivial conflicts in drivers/block/virtio_blk.c and\ndrivers/scsi/scsi_error.c as per Jens.\n"
    },
    {
      "commit": "78417334b5cb6e1f915b8fdcc4fce3f1a1b4420c",
      "tree": "8e3fce9f27fd058904c0a3247a5c5ebb8df9fbe8",
      "parents": [
        "cd816a0d84377c4e87f55cbe934a23417f9f5743",
        "5f202bd5ca64132cdd7f186656bc0221f257733d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 17:06:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 17:06:54 2010 -0700"
      },
      "message": "Merge branch \u0027bkl/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing\n\n* \u0027bkl/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing:\n  do_coredump: Do not take BKL\n  init: Remove the BKL from startup code\n"
    },
    {
      "commit": "3b7433b8a8a83c87972065b1852b7dcae691e464",
      "tree": "93fa2c003f8baef5ab0733b53bac77961ed5240c",
      "parents": [
        "4a386c3e177ca2fbc70c9283d0b46537844763a0",
        "6ee0578b4daaea01c96b172c6aacca43fd9807a6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:42:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:42:58 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (55 commits)\n  workqueue: mark init_workqueues() as early_initcall()\n  workqueue: explain for_each_*cwq_cpu() iterators\n  fscache: fix build on !CONFIG_SYSCTL\n  slow-work: kill it\n  gfs2: use workqueue instead of slow-work\n  drm: use workqueue instead of slow-work\n  cifs: use workqueue instead of slow-work\n  fscache: drop references to slow-work\n  fscache: convert operation to use workqueue instead of slow-work\n  fscache: convert object to use workqueue instead of slow-work\n  workqueue: fix how cpu number is stored in work-\u003edata\n  workqueue: fix mayday_mask handling on UP\n  workqueue: fix build problem on !CONFIG_SMP\n  workqueue: fix locking in retry path of maybe_create_worker()\n  async: use workqueue for worker pool\n  workqueue: remove WQ_SINGLE_CPU and use WQ_UNBOUND instead\n  workqueue: implement unbound workqueue\n  workqueue: prepare for WQ_UNBOUND implementation\n  libata: take advantage of cmwq and remove concurrency limitations\n  workqueue: fix worker management invocation without pending works\n  ...\n\nFixed up conflicts in fs/cifs/* as per Tejun. Other trivial conflicts in\ninclude/linux/workqueue.h, kernel/trace/Kconfig and kernel/workqueue.c\n"
    },
    {
      "commit": "62c2a7d969f30163f733c81158254b3095b23e72",
      "tree": "3e5dd79d874b996757814562b874a18415599a61",
      "parents": [
        "6e9624b8caec290d28b4c6d9ec75749df6372b87"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Jul 07 16:51:26 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:26:08 2010 +0200"
      },
      "message": "block: push BKL into blktrace ioctls\n\nThe blktrace driver currently needs the BKL, but\nwe should not need to take that in the block layer,\nso just push it down into the driver itself.\n\nIt is quite likely that the BKL is not actually\nrequired in blktrace code and could be removed\nin a follow-on patch.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "7b6d91daee5cac6402186ff224c3af39d79f4a0e",
      "tree": "b1518cf0b6c301178e0a320f80610cd5b3aa7625",
      "parents": [
        "33659ebbae262228eef4e0fe990f393d1f0ed941"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sat Aug 07 18:20:39 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:20:39 2010 +0200"
      },
      "message": "block: unify flags for struct bio and struct request\n\nRemove the current bio flags and reuse the request flags for the bio, too.\nThis allows to more easily trace the type of I/O from the filesystem\ndown to the block driver.  There were two flags in the bio that were\nmissing in the requests:  BIO_RW_UNPLUG and BIO_RW_AHEAD.  Also I\u0027ve\nrenamed two request flags that had a superflous RW in them.\n\nNote that the flags are in bio.h despite having the REQ_ name - as\nblkdev.h includes bio.h that is the only way to go for now.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "33659ebbae262228eef4e0fe990f393d1f0ed941",
      "tree": "fcb537f09359c8dad3a6f6e16dc4319562dc42cc",
      "parents": [
        "7e005f79791dcd58436c88ded4a7f5aed1b82147"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sat Aug 07 18:17:56 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:17:56 2010 +0200"
      },
      "message": "block: remove wrappers for request type/flags\n\nRemove all the trivial wrappers for the cmd_type and cmd_flags fields in\nstruct requests.  This allows much easier grepping for different request\ntypes instead of unwinding through macros.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "b62ad9ab181a67207a4c8c373461b587c4861a68",
      "tree": "ace1572964d81f5f9bbc10b7960c1f742832d744",
      "parents": [
        "af390084359a5de20046c901529b2b6a50b941cb",
        "b29230769e3482bbd62a07d6d9485371ee66a18f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 13:18:29 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 13:18:29 2010 -0700"
      },
      "message": "Merge branch \u0027timers-timekeeping-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-timekeeping-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  um: Fix read_persistent_clock fallout\n  kgdb: Do not access xtime directly\n  powerpc: Clean up obsolete code relating to decrementer and timebase\n  powerpc: Rework VDSO gettimeofday to prevent time going backwards\n  clocksource: Add __clocksource_updatefreq_hz/khz methods\n  x86: Convert common clocksources to use clocksource_register_hz/khz\n  timekeeping: Make xtime and wall_to_monotonic static\n  hrtimer: Cleanup direct access to wall_to_monotonic\n  um: Convert to use read_persistent_clock\n  timkeeping: Fix update_vsyscall to provide wall_to_monotonic offset\n  powerpc: Cleanup xtime usage\n  powerpc: Simplify update_vsyscall\n  time: Kill off CONFIG_GENERIC_TIME\n  time: Implement timespec_add\n  x86: Fix vtime/file timestamp inconsistencies\n\nTrivial conflicts in Documentation/feature-removal-schedule.txt\n\nMuch less trivial conflicts in arch/powerpc/kernel/time.c resolved as\nper Thomas\u0027 earlier merge commit 47916be4e28c (\"Merge branch\n\u0027powerpc.cherry-picks\u0027 into timers/clocksource\")\n"
    },
    {
      "commit": "18fab912d4fa70133df164d2dcf3310be0c38c34",
      "tree": "a577bc5d5465f67da5dd4b705059562ad55ed76e",
      "parents": [
        "575570f02761bd680ba5731c1dfd4701062e7fb2"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Wed Jul 28 14:14:01 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Aug 06 14:34:45 2010 -0400"
      },
      "message": "tracing: Fix ring_buffer_read_page reading out of page boundary\n\nWith the configuration: CONFIG_DEBUG_PAGEALLOC\u003dy and Shaohua\u0027s patch:\n\n[PATCH]x86: make spurious_fault check correct pte bit\n\nFunction call graph trace with the following will trigger a page fault.\n\n# cd /sys/kernel/debug/tracing/\n# echo function_graph \u003e current_tracer\n# cat per_cpu/cpu1/trace_pipe_raw \u003e /dev/null\n\nBUG: unable to handle kernel paging request at ffff880006e99000\nIP: [\u003cffffffff81085572\u003e] rb_event_length+0x1/0x3f\nPGD 1b19063 PUD 1b1d063 PMD 3f067 PTE 6e99160\nOops: 0000 [#1] SMP DEBUG_PAGEALLOC\nlast sysfs file: /sys/devices/virtual/net/lo/operstate\nCPU 1\nModules linked in:\n\nPid: 1982, comm: cat Not tainted 2.6.35-rc6-aes+ #300 /Bochs\nRIP: 0010:[\u003cffffffff81085572\u003e]  [\u003cffffffff81085572\u003e] rb_event_length+0x1/0x3f\nRSP: 0018:ffff880006475e38  EFLAGS: 00010006\nRAX: 0000000000000ff0 RBX: ffff88000786c630 RCX: 000000000000001d\nRDX: ffff880006e98000 RSI: 0000000000000ff0 RDI: ffff880006e99000\nRBP: ffff880006475eb8 R08: 000000145d7008bd R09: 0000000000000000\nR10: 0000000000008000 R11: ffffffff815d9336 R12: ffff880006d08000\nR13: ffff880006e605d8 R14: 0000000000000000 R15: 0000000000000018\nFS:  00007f2b83e456f0(0000) GS:ffff880002100000(0000) knlGS:0000000000000000\nCS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\nCR2: ffff880006e99000 CR3: 00000000064a8000 CR4: 00000000000006e0\nDR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\nDR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\nProcess cat (pid: 1982, threadinfo ffff880006474000, task ffff880006e40770)\nStack:\n ffff880006475eb8 ffffffff8108730f 0000000000000ff0 000000145d7008bd\n\u003c0\u003e ffff880006e98010 ffff880006d08010 0000000000000296 ffff88000786c640\n\u003c0\u003e ffffffff81002956 0000000000000000 ffff8800071f4680 ffff8800071f4680\nCall Trace:\n [\u003cffffffff8108730f\u003e] ? ring_buffer_read_page+0x15a/0x24a\n [\u003cffffffff81002956\u003e] ? return_to_handler+0x15/0x2f\n [\u003cffffffff8108a575\u003e] tracing_buffers_read+0xb9/0x164\n [\u003cffffffff810debfe\u003e] vfs_read+0xaf/0x150\n [\u003cffffffff81002941\u003e] return_to_handler+0x0/0x2f\n [\u003cffffffff810248b0\u003e] __bad_area_nosemaphore+0x17e/0x1a1\n [\u003cffffffff81002941\u003e] return_to_handler+0x0/0x2f\n [\u003cffffffff810248e6\u003e] bad_area_nosemaphore+0x13/0x15\nCode: 80 25 b2 16 b3 00 fe c9 c3 55 48 89 e5 f0 80 0d a4 16 b3 00 02 c9 c3 55 31 c0 48 89 e5 48 83 3d 94 16 b3 00 01 c9 0f 94 c0 c3 55 \u003c8a\u003e 0f 48 89 e5 83 e1 1f b8 08 00 00 00 0f b6 d1 83 fa 1e 74 27\nRIP  [\u003cffffffff81085572\u003e] rb_event_length+0x1/0x3f\n RSP \u003cffff880006475e38\u003e\nCR2: ffff880006e99000\n---[ end trace a6877bb92ccb36bb ]---\n\nThe root cause is that ring_buffer_read_page() may read out of page\nboundary, because the boundary checking is done after reading. This is\nfixed via doing boundary checking before reading.\n\nReported-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nLKML-Reference: \u003c1280297641.2771.307.camel@yhuang-dev\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c4efd6b569b2646e1346a08a4c40286f8bcb5f11",
      "tree": "bf33e8594ac4e628cc95f2ef25513788b8273601",
      "parents": [
        "4aed2fd8e3181fea7c09ba79cf64e7e3f4413bf9",
        "0bcfe75807944106a3aa655a54bb610d62f3a7f5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:39:22 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:39:22 2010 -0700"
      },
      "message": "Merge branch \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (27 commits)\n  sched: Use correct macro to display sched_child_runs_first in /proc/sched_debug\n  sched: No need for bootmem special cases\n  sched: Revert nohz_ratelimit() for now\n  sched: Reduce update_group_power() calls\n  sched: Update rq-\u003eclock for nohz balanced cpus\n  sched: Fix spelling of sibling\n  sched, cpuset: Drop __cpuexit from cpu hotplug callbacks\n  sched: Fix the racy usage of thread_group_cputimer() in fastpath_timer_check()\n  sched: run_posix_cpu_timers: Don\u0027t check -\u003eexit_state, use lock_task_sighand()\n  sched: thread_group_cputime: Simplify, document the \"alive\" check\n  sched: Remove the obsolete exit_state/signal hacks\n  sched: task_tick_rt: Remove the obsolete -\u003esignal !\u003d NULL check\n  sched: __sched_setscheduler: Read the RLIMIT_RTPRIO value lockless\n  sched: Fix comments to make them DocBook happy\n  sched: Fix fix_small_capacity\n  powerpc: Exclude arch_sd_sibiling_asym_packing() on UP\n  powerpc: Enable asymmetric SMT scheduling on POWER7\n  sched: Add asymmetric group packing option for sibling domain\n  sched: Fix capacity calculations for SMT4\n  sched: Change nohz idle load balancing logic to push model\n  ...\n"
    },
    {
      "commit": "4aed2fd8e3181fea7c09ba79cf64e7e3f4413bf9",
      "tree": "1f69733e5daab4915a76a41de0e4d1dc61e12cfb",
      "parents": [
        "3a3527b6461b1298cc53ce72f336346739297ac8",
        "fc9ea5a1e53ee54f681e226d735008e2a6f8f470"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:30:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 06 09:30:52 2010 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (162 commits)\n  tracing/kprobes: unregister_trace_probe needs to be called under mutex\n  perf: expose event__process function\n  perf events: Fix mmap offset determination\n  perf, powerpc: fsl_emb: Restore setting perf_sample_data.period\n  perf, powerpc: Convert the FSL driver to use local64_t\n  perf tools: Don\u0027t keep unreferenced maps when unmaps are detected\n  perf session: Invalidate last_match when removing threads from rb_tree\n  perf session: Free the ref_reloc_sym memory at the right place\n  x86,mmiotrace: Add support for tracing STOS instruction\n  perf, sched migration: Librarize task states and event headers helpers\n  perf, sched migration: Librarize the GUI class\n  perf, sched migration: Make the GUI class client agnostic\n  perf, sched migration: Make it vertically scrollable\n  perf, sched migration: Parameterize cpu height and spacing\n  perf, sched migration: Fix key bindings\n  perf, sched migration: Ignore unhandled task states\n  perf, sched migration: Handle ignored migrate out events\n  perf: New migration tool overview\n  tracing: Drop cpparg() macro\n  perf: Use tracepoint_synchronize_unregister() to flush any pending tracepoint call\n  ...\n\nFix up trivial conflicts in Makefile and drivers/cpufreq/cpufreq.c\n"
    },
    {
      "commit": "575570f02761bd680ba5731c1dfd4701062e7fb2",
      "tree": "7789ba121ae95af2705fe9053fa1ae9e9fb04a5b",
      "parents": [
        "8a4fd31e0e8dc33f00b8949a12ac56310bac57bc"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Tue Jul 27 16:06:34 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Aug 06 12:19:15 2010 -0400"
      },
      "message": "tracing: Fix an unallocated memory access in function_graph\n\nWith CONFIG_DEBUG_PAGEALLOC, I observed an unallocated memory access in\nfunction_graph trace. It appears we find a small size entry in ring buffer,\nbut we access it as a big size entry. The access overflows the page size\nand touches an unallocated page.\n\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nLKML-Reference: \u003c1280217994.32400.76.camel@sli10-desk.sh.intel.com\u003e\n[ Added a comment to explain the problem - SDR ]\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "19063c776fe745fab11216422cf56489ee83b452",
      "tree": "a08994bd7badecc81ac04f4b6c4732986dea8588",
      "parents": [
        "955b61e597984745fb7d34c75708f6503b6aaeab"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Aug 05 09:22:23 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Aug 05 09:22:23 2010 -0500"
      },
      "message": "ftrace,kdb: Allow dumping a specific cpu\u0027s buffer with ftdump\n\nIn systems with more than one processor it is desirable to look at the\nper cpu trace buffers.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCC: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "955b61e597984745fb7d34c75708f6503b6aaeab",
      "tree": "c928ca54a8231b0432e729d8b675e473a5db9104",
      "parents": [
        "3f0a55e3579a500ce9f5cdab70a5741f99769118"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Aug 05 09:22:23 2010 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Aug 05 09:22:23 2010 -0500"
      },
      "message": "ftrace,kdb: Extend kdb to be able to dump the ftrace buffer\n\nAdd in a helper function to allow the kdb shell to dump the ftrace\nbuffer.\n\nModify trace.c to expose the capability to iterate over the ftrace\nbuffer in a read only capacity.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCC: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "9da79ab83ee33ddc1fdd0858fd3d70925a1bde99",
      "tree": "116f9d3c256a91ede964ebbfd3779949cc5953d4",
      "parents": [
        "b83f920e179101a54721e5ab1d6c3edfb9d4bcbb"
      ],
      "author": {
        "name": "Srikar Dronamraju",
        "email": "srikar@linux.vnet.ibm.com",
        "time": "Wed Jun 30 14:15:48 2010 +0530"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Aug 04 12:41:23 2010 -0300"
      },
      "message": "tracing/kprobes: unregister_trace_probe needs to be called under mutex\n\nComment in unregister_trace_probe() says probe_lock will be held when it\ngets called. However there is a case where it might called without the\nprobe_lock being held. Also since we are traversing the probe_list and\ndeleting an element from the probe_list, probe_lock should be held.\n\nThis was first pointed in uprobes traceevent review by Frederic\nWeisbecker here.  (http://lkml.org/lkml/2010/5/12/106)\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nAcked-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c20100630084548.GA10325@linux.vnet.ibm.com\u003e\nSigned-off-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "669336e4cf3e1cb95800f3f5924558a76d723c21",
      "tree": "b2254ef3ca3dfa2cf102bb992275138e694a67bd",
      "parents": [
        "3a01736e70a7d629140695ba46a901266b4460cc"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jul 20 17:29:54 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Aug 02 01:30:56 2010 +0200"
      },
      "message": "perf: Use tracepoint_synchronize_unregister() to flush any pending tracepoint call\n\nWe use synchronize_sched() to ensure a tracepoint won\u0027t be called\nwhile/after we release the perf buffers it references.\n\nBut the tracepoint API has its own API for that:\ntracepoint_synchronize_unregister(). Use it instead as it\u0027s\nself-explanatory and eases maintainance.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\n"
    },
    {
      "commit": "592913ecb87a9e06f98ddb55b298f1a66bf94c6b",
      "tree": "0f63f5535fe517faf418e0f7e69800fcf1e4d8db",
      "parents": [
        "ce3bf7ab22527183634a76512d9854a38615e4d5"
      ],
      "author": {
        "name": "John Stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Tue Jul 13 17:56:20 2010 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jul 27 12:40:54 2010 +0200"
      },
      "message": "time: Kill off CONFIG_GENERIC_TIME\n\nNow that all arches have been converted over to use generic time via\nclocksources or arch_gettimeoffset(), we can remove the GENERIC_TIME\nconfig option and simplify the generic code.\n\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nLKML-Reference: \u003c1279068988-21864-4-git-send-email-johnstul@us.ibm.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "3a01736e70a7d629140695ba46a901266b4460cc",
      "tree": "49ff8ce1e7c6a267f0ce84b5daddbe6666bc4253",
      "parents": [
        "4c21adf26f8fcf86a755b9b9f55c2e9fd241e1fb",
        "24a461d537f49f9da6533d83100999ea08c6c755"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 23 09:10:29 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 23 09:10:29 2010 +0200"
      },
      "message": "Merge branch \u0027tip/perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "24a461d537f49f9da6533d83100999ea08c6c755",
      "tree": "b7aa6258df988a64d802eff0b15e92c394742a2e",
      "parents": [
        "a484e54fae891703cbe1c9ec1b536605f11f5482"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Sat Jul 10 12:06:44 2010 +0200"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jul 22 14:56:41 2010 -0400"
      },
      "message": "trace: strlen() return doesn\u0027t account for the NULL\n\nWe need to add one to the strlen() return because of the NULL\ncharacter.  The type-\u003ename here generally comes from the kernel and I\ndon\u0027t think any of them come close to being MAX_TRACER_SIZE (100)\ncharacters long so this is basically a cleanup.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nLKML-Reference: \u003c20100710100644.GV19184@bicker\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "dca45ad8af54963c005393a484ad117b8ba6150f",
      "tree": "7c9a6966283a6bb12b54e5680a67d203be292930",
      "parents": [
        "68c38fc3cb4e5a60f502ee9c45f3dfe70e5165ad",
        "cd5b8f8755a89a57fc8c408d284b8b613f090345"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 21 21:45:02 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 21 21:45:08 2010 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into sched/core\n\nMerge reason: Move from the -rc3 to the almost-rc6 base.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ef710e100c1068d3dd5774d2b34c5485219e06ce",
      "tree": "ed295053a31de472d4ed4338679c00ac8e8437c7",
      "parents": [
        "bc289ae98b75d93228d24f521ef02a076e506e94"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Thu Jul 01 14:34:35 2010 +0900"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jul 21 10:20:17 2010 -0400"
      },
      "message": "tracing: Shrink max latency ringbuffer if unnecessary\n\nDocumentation/trace/ftrace.txt says\n\n  buffer_size_kb:\n\n        This sets or displays the number of kilobytes each CPU\n        buffer can hold. The tracer buffers are the same size\n        for each CPU. The displayed number is the size of the\n        CPU buffer and not total size of all buffers. The\n        trace buffers are allocated in pages (blocks of memory\n        that the kernel uses for allocation, usually 4 KB in size).\n        If the last page allocated has room for more bytes\n        than requested, the rest of the page will be used,\n        making the actual allocation bigger than requested.\n        ( Note, the size may not be a multiple of the page size\n          due to buffer management overhead. )\n\n        This can only be updated when the current_tracer\n        is set to \"nop\".\n\nBut it\u0027s incorrect. currently total memory consumption is\n\u0027buffer_size_kb x CPUs x 2\u0027.\n\nWhy two times difference is there? because ftrace implicitly allocate\nthe buffer for max latency too.\n\nThat makes sad result when admin want to use large buffer. (If admin\nwant full logging and makes detail analysis). example, If admin\nhave 24 CPUs machine and write 200MB to buffer_size_kb, the system\nconsume ~10GB memory (200MB x 24 x 2). umm.. 5GB memory waste is\nusually unacceptable.\n\nFortunatelly, almost all users don\u0027t use max latency feature.\nThe max latency buffer can be disabled easily.\n\nThis patch shrink buffer size of the max latency buffer if\nunnecessary.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nLKML-Reference: \u003c20100701104554.DA2D.A69D9226@jp.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "bc289ae98b75d93228d24f521ef02a076e506e94",
      "tree": "50d151d0fbde1b106932c0f80a2639839d261ca3",
      "parents": [
        "985023dee6e212493831431ba2e3ce8918f001b2"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Thu Jun 03 18:26:24 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jul 20 22:05:34 2010 -0400"
      },
      "message": "tracing: Reduce latency and remove percpu trace_seq\n\n__print_flags() and __print_symbolic() use percpu trace_seq:\n\n1) Its memory is allocated at compile time, it wastes memory if we don\u0027t use tracing.\n2) It is percpu data and it wastes more memory for multi-cpus system.\n3) It disables preemption when it executes its core routine\n   \"trace_seq_printf(s, \"%s: \", #call);\" and introduces latency.\n\nSo we move this trace_seq to struct trace_iterator.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4C078350.7090106@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "985023dee6e212493831431ba2e3ce8918f001b2",
      "tree": "7b8afee8eed100ff3ab1069504598445e644fe05",
      "parents": [
        "e870e9a1240bcef1157ffaaf71dac63362e71904"
      ],
      "author": {
        "name": "Richard Kennedy",
        "email": "richard@rsk.demon.co.uk",
        "time": "Thu Mar 25 11:27:36 2010 +0000"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jul 20 21:58:44 2010 -0400"
      },
      "message": "trace: Reorder struct ring_buffer_per_cpu to remove padding on 64bit\n\nReorder structure to remove 8 bytes of padding on 64 bit builds.\nThis shrinks the size to 128 bytes so allowing allocation from a smaller\nslab \u0026 needed one fewer cache lines.\n\nSigned-off-by: Richard Kennedy \u003crichard@rsk.demon.co.uk\u003e\nLKML-Reference: \u003c1269516456.2054.8.camel@localhost\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "e870e9a1240bcef1157ffaaf71dac63362e71904",
      "tree": "b8f57a68ff45b35dab8cdfa474e17622d275bdc6",
      "parents": [
        "cc5edb0eb9ce892b530e34a5d110382483587942"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Jul 02 11:07:32 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jul 20 21:52:33 2010 -0400"
      },
      "message": "tracing: Allow to disable cmdline recording\n\nWe found that even enabling a single trace event that will rarely be\ntriggered can add big overhead to context switch.\n\n(lmbench context switch test)\n -------------------------------------------------\n 2p/0K 2p/16K 2p/64K 8p/16K 8p/64K 16p/16K 16p/64K\n ctxsw  ctxsw  ctxsw ctxsw  ctxsw   ctxsw   ctxsw\n------ ------ ------ ------ ------ ------- -------\n  2.19   2.3   2.21   2.56   2.13     2.54    2.07\n  2.39   2.51  2.35   2.75   2.27     2.81    2.24\n\nThe overhead is 6% ~ 11%.\n\nIt\u0027s because when a trace event is enabled 3 tracepoints (sched_switch,\nsched_wakeup, sched_wakeup_new) will be activated to map pid to cmdname.\n\nWe\u0027d like to avoid this overhead, so add a trace option \u0027(no)record-cmd\u0027\nto allow to disable cmdline recording.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4C2D57F4.2050204@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b444786f1a797a7f84e2561346a670649f9c7b3c",
      "tree": "42260d0930addbe623d952fff75e0fba7f63d6c6",
      "parents": [
        "eb7beb5c09af75494234ea6acd09d0a647cf7338"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Jul 07 23:40:11 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jul 20 14:31:24 2010 +0200"
      },
      "message": "tracing: Use generic_file_llseek for debugfs\n\nThe default for llseek will change to no_llseek,\nso the tracing debugfs files need to add explicit\n.llseek assignments. Since we\u0027re dealing with regular\nfiles from a VFS perspective, use generic_file_llseek.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: John Kacur \u003cjkacur@redhat.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c1278538820-1392-10-git-send-email-arnd@arndb.de\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "eb7beb5c09af75494234ea6acd09d0a647cf7338",
      "tree": "ab76cb3a6c1f1ea9befbbc72d0f997c03423dd57",
      "parents": [
        "f376bf5ffbad863d4bc3b2586b7e34cdf756ad17"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jul 16 00:50:03 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jul 20 14:31:07 2010 +0200"
      },
      "message": "tracing: Remove special traces\n\nSpecial traces type was only used by sysprof. Lets remove it now\nthat sysprof ftrace plugin has been dropped.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Soeren Sandmann \u003csandmann@daimi.au.dk\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\n"
    },
    {
      "commit": "f376bf5ffbad863d4bc3b2586b7e34cdf756ad17",
      "tree": "712a78b2b455995ceb4e12b5ae02df76dc07f01e",
      "parents": [
        "cc5edb0eb9ce892b530e34a5d110382483587942"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jul 16 00:26:26 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jul 20 14:29:46 2010 +0200"
      },
      "message": "tracing: Remove sysprof ftrace plugin\n\nThe sysprof ftrace plugin doesn\u0027t seem to be seriously used\nsomewhere. There is a branch in the sysprof tree that makes\nan interface to it, but the real sysprof tool uses either its\nown module or perf events.\n\nDrop the sysprof ftrace plugin then, as it\u0027s mostly useless.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Soeren Sandmann \u003csandmann@daimi.au.dk\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\n"
    },
    {
      "commit": "5d550467b9770042e9699690907babc32104a8d4",
      "tree": "eda923f5976f5d6f881719998207696147cffa41",
      "parents": [
        "86a8c63f75a4582c44465e2bf71bc2df175cee77"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Jul 15 23:27:35 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Jul 15 23:59:33 2010 +0200"
      },
      "message": "tracing: Remove ksym tracer\n\nThe ksym (breakpoint) ftrace plugin has been superseded by perf\ntools that are much more poweful to use the cpu breakpoints.\nThis tracer doesn\u0027t bring more feature. It has been deprecated\nfor a while now, lets remove it.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5e3d20a68f63fc5a310687d81956c3b96e488b84",
      "tree": "576da563442772fe7a492589c1e08c422ff02b1c",
      "parents": [
        "815c4163b6c8ebf8152f42b0a5fd015cfdcedc78"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Jul 04 00:02:26 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jul 09 15:40:32 2010 +0200"
      },
      "message": "init: Remove the BKL from startup code\n\nI have shown by code review that no driver takes\nthe BKL at init time any more, so whatever the\ninit code was locking against is no longer there\nand it is now safe to remove the BKL there.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "e09c8614b32915c16f68e039ac7040e602d73e35",
      "tree": "725c768b1d2fbd569e447e7d4a2044dc0aa7a1d5",
      "parents": [
        "167a58f10d9cd1bdf6a911aa1eecbdff596de156"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Mon Jul 05 15:54:45 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jul 05 15:54:45 2010 -0300"
      },
      "message": "tracing/kprobes: Support \"string\" type\n\nSupport string type tracing and printing in kprobe-tracer.\n\nThis allows user to trace string data in kernel including __user data. Note\nthat sometimes __user data may not be accessed if it is paged-out (sorry, but\nkprobes operation should be done in atomic, we can not wait for page-in).\n\nCommiter note: Fixed up conflicts with b7e2ece.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20100519195724.2885.18788.stgit@localhost6.localdomain6\u003e\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "64166699752006f1a23a9cf7c96ae36654ccfc2c",
      "tree": "ef4d825be9526409102bff79ca8bb1dd60aa2443",
      "parents": [
        "a62428c0ae54a39e411251e836c3fe3dc11a5f5f"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jun 29 10:07:11 2010 +0200"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jun 29 10:07:11 2010 +0200"
      },
      "message": "workqueue: temporarily remove workqueue tracing\n\nStrip tracing code from workqueue and remove workqueue tracing.  This\nis temporary measure till concurrency managed workqueue is complete.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "a1d0ce8213e9ddf4046ef5ba95c55762d075f541",
      "tree": "c72fb18588de555c8fa0c61452ae14ffe37dbf8a",
      "parents": [
        "d62f85d1e22e537192ce494c89540e1ac0d8bfc7"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Jun 08 11:22:06 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 21:13:14 2010 -0400"
      },
      "message": "tracing: Use class-\u003ereg() for all registering of events\n\nBecause kprobes and syscalls need special processing to register\nevents, the class-\u003ereg() method was created to handle the differences.\n\nBut instead of creating a default -\u003ereg for perf and ftrace events,\nthe code was scattered with:\n\n\tif (class-\u003ereg)\n\t\tclass-\u003ereg();\n\telse\n\t\tdefault_reg();\n\nThis is messy and can also lead to bugs.\n\nThis patch cleans up this code and creates a default reg() entry for\nthe events allowing for the code to directly call the class-\u003ereg()\nwithout the condition.\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d62f85d1e22e537192ce494c89540e1ac0d8bfc7",
      "tree": "6ea77c37dbdc9d0b82ca93ace71ffe5f44f234d3",
      "parents": [
        "67ead0a6ceb001b4cb891d782e440f0e79493ba2"
      ],
      "author": {
        "name": "Chase Douglas",
        "email": "chase.douglas@canonical.com",
        "time": "Tue Jun 15 12:29:15 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 21:11:39 2010 -0400"
      },
      "message": "tracing/function-graph: Use correct string size for snprintf\n\nThe nsecs_str string is a local variable defined as:\n\nchar nsecs_str[5];\n\nIt is possible for the snprintf call to use a size value larger than the\nsize of the string. This should not cause a buffer overrun as it is\nwritten now due to the value for the string format \"%03lu\" can not be\nlarger than 1000. However, this change makes it correct. By making the\nsize correct we guard against potential future changes that could actually\ncause a buffer overrun.\n\nSigned-off-by: Chase Douglas \u003cchase.douglas@canonical.com\u003e\nLKML-Reference: \u003c1276619355-18116-1-git-send-email-chase.douglas@canonical.com\u003e\n\n[ added \u0027UL\u0027 to number 8 to fix gcc warning comparing it to sizeof() ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "67ead0a6ceb001b4cb891d782e440f0e79493ba2",
      "tree": "bd2c13961ef3a5769feebdcb04ff751cb1b37648",
      "parents": [
        "ffb9f99528574ab9a55d4c8fd22e9d3ca49efa86"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon May 24 16:25:13 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 17:12:55 2010 -0400"
      },
      "message": "tracing: Remove open-coded __trace_add_event_call()\n\nLet trace_module_add_events() and event_trace_init() call\n__trace_add_event_call().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4BFA37E9.1020106@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ffb9f99528574ab9a55d4c8fd22e9d3ca49efa86",
      "tree": "3b5d2a5e0c33b214bd7c53d1733fe3771a68d4c7",
      "parents": [
        "c9d932cf8a1c608b676021aef0189376ba6ef151"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon May 24 16:24:52 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 17:12:53 2010 -0400"
      },
      "message": "tracing: Remove redundant raw_init callbacks\n\nraw_init callback is optional.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4BFA37D4.7070500@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c9d932cf8a1c608b676021aef0189376ba6ef151",
      "tree": "b12777124aad80e266c937dbad33be7706aafe7f",
      "parents": [
        "210f766915207636acccba7bec42248bfe882998"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon May 24 16:24:28 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 17:12:52 2010 -0400"
      },
      "message": "tracing: Remove test of NULL define_fields callback\n\nEvery event (or event class) has it\u0027s define_fields callback,\nso the test is redundant.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4BFA37BC.8080707@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "8728fe501ed562c1b46dde3c195eadec77bca033",
      "tree": "c911b4a6af85817ba6bdf3342cbae4838c14b1bb",
      "parents": [
        "c9642c49aae1272d7c24008a40ae614470b957a6"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon May 24 16:22:49 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 17:12:46 2010 -0400"
      },
      "message": "tracing: Don\u0027t allocate common fields for every trace events\n\nEvery event has the same common fields, so it\u0027s a big waste of\nmemory to have a copy of those fields for every event.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4BFA3759.30105@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c9642c49aae1272d7c24008a40ae614470b957a6",
      "tree": "dd42bf76ad9652bc952c0332b14e0b3b7ea38d3c",
      "parents": [
        "f384c954c9fe3d3c6fce5ae66b67f2ddd947d098"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon May 24 16:22:30 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 28 17:12:44 2010 -0400"
      },
      "message": "tracing: Use a global field list for all syscall exit events\n\nAll syscall exit events have the same fields.\n\nThe kernel size drops 2.5K:\n\n   text    data     bss     dec     hex filename\n7018612 2034376 7251132 16304120         f8c7f8 vmlinux.o.orig\n7018612 2031888 7251132 16301632         f8be40 vmlinux.o\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4BFA3746.8070100@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f384c954c9fe3d3c6fce5ae66b67f2ddd947d098",
      "tree": "a38541b8083a2304435e9a153d408bd7cd44116e",
      "parents": [
        "9a15a07fe2175dc25cd928a354b3839f562ac8cc",
        "5904b3b81d25166e5e39b9727645bb47937618e3"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jun 28 22:33:13 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jun 28 22:33:24 2010 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into perf/core\n\nReason: Further changes conflict with upstream fixes\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a8fb2608053547bc3152ea61a5ec7cdfce5d942c",
      "tree": "08f5fd61dd3fce05a2472f457c48ec249966b372",
      "parents": [
        "d11007703c31db534674ebeeb9eb047bbbe758bd"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jun 10 14:53:16 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jun 10 20:56:54 2010 -0400"
      },
      "message": "perf/tracing: Fix regression of perf losing kprobe events\n\nWith the addition of the code to shrink the kernel tracepoint\ninfrastructure, we lost kprobes being traced by perf. The reason\nis that I tested if the \"tp_event-\u003eclass-\u003eperf_probe\" existed before\nenabling it. This prevents \"ftrace only\" events (like the function\ntrace events) from being enabled by perf.\n\nUnfortunately, kprobe events do not use perf_probe. This causes\nkprobes to be missed by perf. To fix this, we add the test to\nsee if \"tp_event-\u003eclass-\u003ereg\" exists as well as perf_probe.\n\nNormal trace events have only \"perf_probe\" but no \"reg\" function,\nand kprobes and syscalls have the \"reg\" but no \"perf_probe\".\nThe ftrace unique events do not have either, so this is a valid\ntest. If a kprobe or syscall is not to be probed by perf, the\n\"reg\" function is called anyway, and will return a failure and\nprevent perf from probing it.\n\nReported-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nTested-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c726b61c6a5acc54c55ed7a0e7638cc4c5a100a8",
      "tree": "3f44aa013d31d34951e9610e79ff14c1148ad6ac",
      "parents": [
        "7be7923633a142402266d642ccebf74f556a649b",
        "018378c55b03f88ff513aba4e0e93b8d4a9cf241"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 18:55:20 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 18:55:57 2010 +0200"
      },
      "message": "Merge branch \u0027perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/core\n"
    },
    {
      "commit": "039ca4e74a1cf60bd7487324a564ecf5c981f254",
      "tree": "61c6fa8409961d2e22ef9d04ac54442734ebd41a",
      "parents": [
        "30dbb20e68e6f7df974b77d2350ebad5eb6f6c9e"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed May 26 17:22:17 2010 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Jun 09 17:31:22 2010 +0200"
      },
      "message": "tracing: Remove kmemtrace ftrace plugin\n\nWe have been resisting new ftrace plugins and removing existing\nones, and kmemtrace has been superseded by kmem trace events\nand perf-kmem, so we remove it.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\n[ remove kmemtrace from the makefile, handle slob too ]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "c676329abb2b8359d9a5d734dec0c81779823fd6",
      "tree": "b6c33715176221a87100228399c2a6f5049e44ea",
      "parents": [
        "95ae3c59fa8ad616c73745e21154b5af0fb10168"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue May 25 10:48:51 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 10:34:49 2010 +0200"
      },
      "message": "sched_clock: Add local_clock() API and improve documentation\n\nFor people who otherwise get to write: cpu_clock(smp_processor_id()),\nthere is now: local_clock().\n\nAlso, as per suggestion from Andrew, provide some documentation on\nthe various clock interfaces, and minimize the unsigned long long vs\nu64 mess.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Jens Axboe \u003cjaxboe@fusionio.com\u003e\nLKML-Reference: \u003c1275052414.1645.52.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "30dbb20e68e6f7df974b77d2350ebad5eb6f6c9e",
      "tree": "b28f8232756e0de57ded858d6584724317b405ef",
      "parents": [
        "b0f82b81fe6bbcf78d478071f33e44554726bc81"
      ],
      "author": {
        "name": "Américo Wang",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Wed May 26 18:57:53 2010 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 08 23:31:28 2010 +0200"
      },
      "message": "tracing: Remove boot tracer\n\nThe boot tracer is useless. It simply logs the initcalls\nbut in fact these initcalls are also logged through printk\nwhile using the initcall_debug kernel parameter.\n\nNobody seem to be using it so far. Then just remove it.\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Chase Douglas \u003cchase.douglas@canonical.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c20100526105753.GA5677@cr0.nay.redhat.com\u003e\n[ remove the hooks in main.c, and the headers ]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "b0f82b81fe6bbcf78d478071f33e44554726bc81",
      "tree": "6305c095b927f956a791b9dce687cb94a21718e6",
      "parents": [
        "c9cf4dbb4d9ca715d8fedf13301a53296429abc6"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu May 20 07:47:21 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 08 23:31:27 2010 +0200"
      },
      "message": "perf: Drop the skip argument from perf_arch_fetch_regs_caller\n\nDrop this argument now that we always want to rewind only to the\nstate of the first caller.\nIt means frame pointers are not necessary anymore to reliably get\nthe source of an event. But this also means we need this helper\nto be a macro now, as an inline function is not an option since\nwe need to know when to provide a default implentation.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "c9cf4dbb4d9ca715d8fedf13301a53296429abc6",
      "tree": "66f0bb55d89a41bbe8ac76f8dee418e84e255d2d",
      "parents": [
        "9dda696f0de87a2e5cfabb147e28c76b7d3c6846"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed May 19 21:35:17 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 08 23:29:52 2010 +0200"
      },
      "message": "x86: Unify dumpstack.h and stacktrace.h\n\narch/x86/include/asm/stacktrace.h and arch/x86/kernel/dumpstack.h\ndeclare headers of objects that deal with the same topic.\nActually most of the files that include stacktrace.h also include\ndumpstack.h\n\nAlthough dumpstack.h seems more reserved for internals of stack\ntraces, those are quite often needed to define specialized stack\ntrace operations. And perf event arch headers are going to need\naccess to such low level operations anyway. So don\u0027t continue to\nbother with dumpstack.h as it\u0027s not anymore about isolated deep\ninternals.\n\nv2: fix struct stack_frame definition conflict in sysprof\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Soeren Sandmann \u003csandmann@daimi.au.dk\u003e\n"
    },
    {
      "commit": "6113e45f831616de98c54a005260223b21bcb6b9",
      "tree": "0d56dbfae392f89b33c2ae6a36a5cc1ea1c1c988",
      "parents": [
        "84bb671dc46d77d665d2b5e74539e81b2129bb3e",
        "5168ae50a66e3ff7184c2b16d661bd6d70367e50"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 08 19:34:40 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 08 19:34:40 2010 +0200"
      },
      "message": "Merge branch \u0027tip/perf/core-3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "5168ae50a66e3ff7184c2b16d661bd6d70367e50",
      "tree": "2fb21fc3bd346e4f589605d940dfb1bacac30bf5",
      "parents": [
        "d1f74e20b5b064a130cd0743a256c2d3cfe84010"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jun 03 09:36:50 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jun 03 19:32:38 2010 -0400"
      },
      "message": "tracing: Remove ftrace_preempt_disable/enable\n\nThe ftrace_preempt_disable/enable functions were to address a\nrecursive race caused by the function tracer. The function tracer\ntraces all functions which makes it easily susceptible to recursion.\nOne area was preempt_enable(). This would call the scheduler and\nthe schedulre would call the function tracer and loop.\n(So was it thought).\n\nThe ftrace_preempt_disable/enable was made to protect against recursion\ninside the scheduler by storing the NEED_RESCHED flag. If it was\nset before the ftrace_preempt_disable() it would not call schedule\non ftrace_preempt_enable(), thinking that if it was set before then\nit would have already scheduled unless it was already in the scheduler.\n\nThis worked fine except in the case of SMP, where another task would set\nthe NEED_RESCHED flag for a task on another CPU, and then kick off an\nIPI to trigger it. This could cause the NEED_RESCHED to be saved at\nftrace_preempt_disable() but the IPI to arrive in the the preempt\ndisabled section. The ftrace_preempt_enable() would not call the scheduler\nbecause the flag was already set before entring the section.\n\nThis bug would cause a missed preemption check and cause lower latencies.\n\nInvestigating further, I found that the recusion caused by the function\ntracer was not due to schedule(), but due to preempt_schedule(). Now\nthat preempt_schedule is completely annotated with notrace, the recusion\nno longer is an issue.\n\nReported-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "546cf44a1b507c1cbb5cf42bbe6169780567f36f",
      "tree": "ab0373b82198dcae5870fa2af1916102894069f1",
      "parents": [
        "74048f895fa8cbf8119b4999f1f44881a825f954"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Sat May 29 11:45:07 2010 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 31 09:58:20 2010 +0200"
      },
      "message": "blktrace: Fix new kernel-doc warnings\n\nFix blktrace.c kernel-doc warnings:\n Warning(kernel/trace/blktrace.c:858): No description found for parameter \u0027ignore\u0027\n Warning(kernel/trace/blktrace.c:890): No description found for parameter \u0027ignore\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20100529114507.c466fc1e.randy.dunlap@oracle.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2e97942fe57864588774f173cf4cd7bb68968b76",
      "tree": "bf0eeda8c13a6e851ad755b7114ceaa82c51fd97",
      "parents": [
        "3771f0771154675d4a0ca780be2411f3cc357208"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 21 16:22:33 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 31 08:46:09 2010 +0200"
      },
      "message": "perf_events, trace: Fix perf_trace_destroy(), mutex went missing\n\nSteve spotted I forgot to do the destroy under event_mutex.\n\nReported-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1274451913.1674.1707.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3771f0771154675d4a0ca780be2411f3cc357208",
      "tree": "106512f307e2aa0a89f92c01598d5fa75903af47",
      "parents": [
        "8a49542c0554af7d0073aac0ee73ee65b807ef34"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri May 21 12:31:09 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 31 08:46:09 2010 +0200"
      },
      "message": "perf_events, trace: Fix probe unregister race\n\ntracepoint_probe_unregister() does not synchronize against the probe\ncallbacks, so do that explicitly. This properly serializes the callbacks\nand the free of the data used therein.\n\nAlso, use this_cpu_ptr() where possible.\n\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1274438476.1674.1702.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bc7d352c5e76c74c628a39b99777a1bdddde5e81",
      "tree": "3cc0a80defb54d284e2a9a1e69b1224064921775",
      "parents": [
        "b3f2f6cd1ff935ecac9a5346904b899d7af689fe",
        "92af1abde4f2d74c9e5f7b670a1971779ed0b051"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 30 12:35:01 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 30 12:35:01 2010 -0700"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf tui: Fix last use_browser problem related to .perfconfig\n  perf symbols: Add the build id cache to the vmlinux path\n  perf tui: Reset use_browser if stdout is not a tty\n  ring-buffer: Move zeroing out excess in page to ring buffer code\n  ring-buffer: Reset \"real_end\" when page is filled\n"
    },
    {
      "commit": "c5617b200ac52e35f7e8cf05a17b0a2d50f6b3e9",
      "tree": "40d5e99660c77c5791392d349a93113c044dbf14",
      "parents": [
        "cad719d86e9dbd06634eaba6401e022c8101d6b2",
        "49c177461bfbedeccbab22bf3905db2f9da7f1c3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 27 15:23:47 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 27 15:23:47 2010 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (61 commits)\n  tracing: Add __used annotation to event variable\n  perf, trace: Fix !x86 build bug\n  perf report: Support multiple events on the TUI\n  perf annotate: Fix up usage of the build id cache\n  x86/mmiotrace: Remove redundant instruction prefix checks\n  perf annotate: Add TUI interface\n  perf tui: Remove annotate from popup menu after failure\n  perf report: Don\u0027t start the TUI if -D is used\n  perf: Fix getline undeclared\n  perf: Optimize perf_tp_event_match()\n  perf: Remove more code from the fastpath\n  perf: Optimize the !vmalloc backed buffer\n  perf: Optimize perf_output_copy()\n  perf: Fix wakeup storm for RO mmap()s\n  perf-record: Share per-cpu buffers\n  perf-record: Remove -M\n  perf: Ensure that IOC_OUTPUT isn\u0027t used to create multi-writer buffers\n  perf, trace: Optimize tracepoints by using per-tracepoint-per-cpu hlist to track events\n  perf, trace: Optimize tracepoints by removing IRQ-disable from perf/tracepoint interaction\n  perf tui: Allow disabling the TUI on a per command basis in ~/.perfconfig\n  ...\n"
    },
    {
      "commit": "2711ca237a084286ea1c2dcf82ab2aadab23a00d",
      "tree": "a795fa0e31e8557befd803153a33827b1d0c8764",
      "parents": [
        "b3230c8b44da5838cf396942d5c1ab19f8e8f720"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri May 21 13:32:26 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue May 25 11:57:26 2010 -0400"
      },
      "message": "ring-buffer: Move zeroing out excess in page to ring buffer code\n\nCurrently the trace splice code zeros out the excess bytes in the page before\nsending it off to userspace.\n\nThis is to make sure userspace is not getting anything it should not be\nwhen reading the pages, because the excess data was never initialized\nto zero before writing (for perfomance reasons).\n\nBut the splice code has no business in doing this work, it should be\ndone by the ring buffer. With the latest changes for recording lost\nevents, the splice code gets it wrong anyway.\n\nMove the zeroing out of excess bytes into the ring buffer code.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b3230c8b44da5838cf396942d5c1ab19f8e8f720",
      "tree": "21a212bb598da40cdb936f7b4492d9b05895d4fc",
      "parents": [
        "49c177461bfbedeccbab22bf3905db2f9da7f1c3"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri May 21 11:55:21 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue May 25 11:57:24 2010 -0400"
      },
      "message": "ring-buffer: Reset \"real_end\" when page is filled\n\nThe code to store the \"lost events\" requires knowing the real end\nof the page. Since the \u0027commit\u0027 includes the padding at the end of\na page a \"real_end\" variable was used to keep track of the end not\nincluding the padding.\n\nIf events were lost, the reader can place the count of events in\nthe padded area if there is enough room.\n\nThe bug this patch fixes is that when we fill the page we do not\nreset the real_end variable, and if the writer had wrapped a few\ntimes, the real_end would be incorrect.\n\nThis patch simply resets the real_end if the page was filled.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "87f44bbc246c5244c76a701f8eefba7788bce64a",
      "tree": "1370af780bf3bae9e025766f5bbfa9418bb8b68b",
      "parents": [
        "d67f088e084755bdceb4f15bc6e05e309db1eea7"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Tue May 25 11:02:55 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue May 25 11:28:49 2010 +0200"
      },
      "message": "perf, trace: Fix !x86 build bug\n\nPatch b7e2ecef92 (perf, trace: Optimize tracepoints by removing\nIRQ-disable from perf/tracepoint interaction) made the\nunfortunate mistake of assuming the world is x86 only, correct\nthis.\n\nThe problem was that perf_fetch_caller_regs() did\nlocal_save_flags() into regs-\u003eflags, and I re-used that to\nremove another local_save_flags(), forgetting !x86 doesn\u0027t have\nregs-\u003eflags.\n\nDo the reverse, remove the local_save_flags() from\nperf_fetch_caller_regs() and let the ftrace site do the\nlocal_save_flags() instead.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: acme@redhat.com\nCc: efault@gmx.de\nCc: fweisbec@gmail.com\nCc: rostedt@goodmis.org\nLKML-Reference: \u003c1274778175.5882.623.camel@twins\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ee9a3607fb03e804ddf624544105f4e34260c380",
      "tree": "ce41b6e0fa10982a306f6c142a92dbf3c9961284",
      "parents": [
        "b492e95be0ae672922f4734acf3f5d35c30be948",
        "d515e86e639890b33a09390d062b0831664f04a2"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 21 21:27:26 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 21 21:27:26 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-2.6.35\n\nConflicts:\n\tfs/ext3/fsync.c\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    }
  ],
  "next": "35f3d14dbbc58447c61e38a162ea10add6b31dc7"
}
