)]}'
{
  "log": [
    {
      "commit": "bd1a5c849bdcc5c89e4a6a18216cd2b9a7a8a78f",
      "tree": "1a807fef00b8a700d90683d4f1d480d95eec9669",
      "parents": [
        "b1cf540f0e5278ecfe8532557e547d833ed269d7"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Thu Aug 13 16:34:53 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Aug 27 00:46:40 2009 +0200"
      },
      "message": "tracing: Ftrace dynamic ftrace_event_call support\n\nAdd dynamic ftrace_event_call support to ftrace. Trace engines can add\nnew ftrace_event_call to ftrace on the fly. Each operator function of\nthe call takes an ftrace_event_call data structure as an argument,\nbecause these functions may be shared among several ftrace_event_calls.\n\nChanges from v13:\n - Define remove_subsystem_dir() always (revirt a2ca5e03), because\n   trace_remove_event_call() uses it.\n - Modify syscall tracer because of ftrace_event_call change.\n\n[fweisbec@gmail.com: Fixed conflict against latest tracing/core]\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Frank Ch. Eigler \u003cfche@redhat.com\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Przemysław Pawełczyk \u003cprzemyslaw@pawelczyk.it\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nLKML-Reference: \u003c20090813203453.31965.71901.stgit@localhost.localdomain\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "35dce1a99d010f3d738af4ce1b9b77302fdfe69c",
      "tree": "e34a37de965a79a2ae301de4d0557f500111dde6",
      "parents": [
        "7cb2e3ee2aeec5b83ecadba929a2dc575dd4008f",
        "1c569f0264ea629c10bbab471dd0626ce4d3f19f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Aug 26 08:29:02 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Aug 26 08:29:02 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into tracing/core\n\nConflicts:\n\tinclude/linux/tracepoint.h\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5ac35daa9343936038a3c9c4f4d6d3fe6a2a7bd8",
      "tree": "0810db04bd8ad675aee30681576903e393e9d4c6",
      "parents": [
        "5079f3261ffd7fe4a537679af695f2328943a245"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Tue Aug 25 14:06:22 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Aug 26 00:32:09 2009 -0400"
      },
      "message": "tracing/events: fix the include file dependencies\n\nThe TRACE_EVENT depends on the include/linux/tracepoint.h first\nand include/trace/ftrace.h later, if we include the ftrace.h early,\na building error will occur.\n\nBoth define TRACE_EVENT in trace_a.h and trace_b.h, if we include\nthose in .c file, like this:\n\n#define CREATE_TRACE_POINTS\ninclude \u003ctrace/events/trace_a.h\u003e\ninclude \u003ctrace/events/trace_b.h\u003e\n\nThe above will not work, because the TRACE_EVENT was re-defined by\nthe previous .h file.\n\nReported-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A937F5E.3020802@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "43b51ead3f752a3935116e5b1a94254b8573734f",
      "tree": "5d9e88635c85ba7b1d273dea3c4d8d96e5000154",
      "parents": [
        "aa38e9fc3ea804290efd3a39316d7f7e6c945800"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Aug 07 10:33:22 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Aug 26 00:32:06 2009 -0400"
      },
      "message": "tracing/filters: Add __field_ext() to TRACE_EVENT\n\nAdd __field_ext(), so a field can be assigned to a specific\nfilter_type, which matches a corresponding filter function.\n\nFor example, a later patch will allow this:\n\t__field_ext(const char *, str, FILTER_PTR_STR);\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A7B9272.6050709@cn.fujitsu.com\u003e\n\n[\n  Fixed a -1 to FILTER_OTHER\n  Forward ported to latest kernel.\n]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f0693c8bd5c50380b299e19d19e7640024640b42",
      "tree": "a14b3e0cc80de7315c0be3f7880a5001a48f2c02",
      "parents": [
        "d88cb582325830698de5071fa8b8c9e933dbbcad"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Aug 06 14:59:32 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Aug 26 00:32:03 2009 -0400"
      },
      "message": "tracing/sched: show CPU task wakes up on in trace event\n\nWhile debugging the scheduler push / pull algorithm, I found\nit very annoying that the sched wake up events did not show\nthe CPU that the task was waking on. In order to analyze the\nscheduler, I needed that information.\n\nThis patch adds recording of the CPU that a task is waking up\non.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "1c569f0264ea629c10bbab471dd0626ce4d3f19f",
      "tree": "00fcbf85a7318c568f468518c3aa665a200c871e",
      "parents": [
        "97419875865859fd2403e66266c02ce028e2f5ab"
      ],
      "author": {
        "name": "Josh Stone",
        "email": "jistone@redhat.com",
        "time": "Mon Aug 24 14:43:14 2009 -0700"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Aug 26 00:41:48 2009 +0200"
      },
      "message": "tracing: Create generic syscall TRACE_EVENTs\n\nThis converts the syscall_enter/exit tracepoints into TRACE_EVENTs, so\nyou can have generic ftrace events that capture all system calls with\narguments and return values.  These generic events are also renamed to\nsys_enter/exit, so they\u0027re more closely aligned to the specific\nsys_enter_foo events.\n\nSigned-off-by: Josh Stone \u003cjistone@redhat.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nLKML-Reference: \u003c1251150194-1713-5-git-send-email-jistone@redhat.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "97419875865859fd2403e66266c02ce028e2f5ab",
      "tree": "7df6e6df767e9c8ff538a50bcae17638a1c8da99",
      "parents": [
        "3d27d8cb34fc156beb86de2338ca4029873a5cc6"
      ],
      "author": {
        "name": "Josh Stone",
        "email": "jistone@redhat.com",
        "time": "Mon Aug 24 14:43:13 2009 -0700"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Aug 26 00:36:41 2009 +0200"
      },
      "message": "tracing: Move tracepoint callbacks from declaration to definition\n\nIt\u0027s not strictly correct for the tracepoint reg/unreg callbacks to\noccur when a client is hooking up, because the actual tracepoint may not\nbe present yet.  This happens to be fine for syscall, since that\u0027s in\nthe core kernel, but it would cause problems for tracepoints defined in\na module that hasn\u0027t been loaded yet.  It also means the reg/unreg has\nto be EXPORTed for any modules to use the tracepoint (as in SystemTap).\n\nThis patch removes DECLARE_TRACE_WITH_CALLBACK, and instead introduces\nDEFINE_TRACE_FN which stores the callbacks in struct tracepoint.  The\ncallbacks are used now when the active state of the tracepoint changes\nin set_tracepoint \u0026 disable_tracepoint.\n\nThis also introduces TRACE_EVENT_FN, so ftrace events can also provide\nregistration callbacks if needed.\n\nSigned-off-by: Josh Stone \u003cjistone@redhat.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nLKML-Reference: \u003c1251150194-1713-4-git-send-email-jistone@redhat.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "3d27d8cb34fc156beb86de2338ca4029873a5cc6",
      "tree": "51be3d9b84fa6a7899b69c499cb7630ebca366b0",
      "parents": [
        "667000011927b4fcc359beac4a2447889db6d349"
      ],
      "author": {
        "name": "Josh Stone",
        "email": "jistone@redhat.com",
        "time": "Mon Aug 24 14:43:12 2009 -0700"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Aug 26 00:24:19 2009 +0200"
      },
      "message": "tracing: Make syscall tracepoints conditional\n\nThe syscall enter/exit tracepoints are only supported on archs that\nHAVE_SYSCALL_TRACEPOINTS, so the declarations should be #ifdef\u0027ed.\nAlso, the definition of syscall_regfunc and syscall_unregfunc should\ndepend on this same config, rather than the ftrace-specific one.\n\nSigned-off-by: Josh Stone \u003cjistone@redhat.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c1251150194-1713-3-git-send-email-jistone@redhat.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "540b7b8d65575c80162f2a0f38e1d313c92a6042",
      "tree": "664bdd01ce8fce990e634a304f9b3ab51e50970c",
      "parents": [
        "e647d6b314266adb904d4b84973eda0afa856946"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Aug 19 15:54:51 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Aug 19 15:02:24 2009 +0200"
      },
      "message": "tracing/syscalls: Add filtering support\n\nAdd filtering support for syscall events:\n\n # echo \u0027mode \u003d\u003d 0666\u0027 \u003e events/syscalls/sys_enter_open\n # echo \u0027ret \u003d\u003d 0\u0027 \u003e events/syscalls/sys_exit_open\n # echo 1 \u003e events/syscalls/sys_enter_open\n # echo 1 \u003e events/syscalls/sys_exit_open\n # cat trace\n ...\n   modprobe-3084 [001] 117.463140: sys_open(filename: 917d3e8, flags: 0, mode: 1b6)\n   modprobe-3084 [001] 117.463176: sys_open -\u003e 0x0\n       less-3086 [001] 117.510455: sys_open(filename: 9c6bdb8, flags: 8000, mode: 1b6)\n   sendmail-2574 [001] 122.145840: sys_open(filename: b807a365, flags: 0, mode: 1b6)\n ...\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A8BAFCB.1040006@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e647d6b314266adb904d4b84973eda0afa856946",
      "tree": "e4f18b57d37a25910b3d19b6c2461f87db0084a3",
      "parents": [
        "14be96c9716cb8c46dca94bd890defd7856e0734"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Aug 19 15:54:32 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Aug 19 15:02:24 2009 +0200"
      },
      "message": "tracing/events: Add trace_define_common_fields()\n\nExtract duplicate code. Also prepare for the later patch.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A8BAFB8.1010304@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "14be96c9716cb8c46dca94bd890defd7856e0734",
      "tree": "d9a064f3191182f16ff01176b17c4dda073d8dc8",
      "parents": [
        "10a5b66f625904ad5a2867cf7a28073e1236ff32"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Aug 19 15:53:52 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Aug 19 15:02:23 2009 +0200"
      },
      "message": "tracing/events: Add ftrace_event_call param to define_fields()\n\nThis parameter is needed by syscall events to add define_fields()\nhandler.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A8BAF90.6060801@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "10a5b66f625904ad5a2867cf7a28073e1236ff32",
      "tree": "165c3d0f480e2862d3d97f3f3ceecad9c1cdc8b8",
      "parents": [
        "e6971969c331caa5c3c88cbd1be4f465b3355452"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Aug 19 15:53:05 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Aug 19 15:02:23 2009 +0200"
      },
      "message": "tracing/syscalls: Add fields format for exit events\n\nAdd \"format\" file for syscall exit events:\n\n # cat events/syscalls/sys_exit_open/format\n name: sys_exit_open\n ID: 344\n format:\n         field:unsigned short common_type;       offset:0;       size:2;\n         field:unsigned char common_flags;       offset:2;       size:1;\n         field:unsigned char common_preempt_count;       offset:3;       size:1;\n         field:int common_pid;   offset:4;       size:4;\n         field:int common_tgid;  offset:8;       size:4;\n\n         field:int nr;   offset:12;      size:4;\n         field:unsigned long ret;        offset:16;      size:4;\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A8BAF61.3060307@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7ead8b8313d92b3a69a1a61b0dcbc4cd66c960dc",
      "tree": "614759ec1b24ea9f6d1409b866c80df0611e5d6b",
      "parents": [
        "60d970c254b95ec7a0fc4c590b510253987b64a0"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Aug 17 16:56:28 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 17 11:25:08 2009 +0200"
      },
      "message": "tracing/events: Add module tracepoints\n\nAdd trace points to trace module_load, module_free, module_get,\nmodule_put and module_request, and use trace_event facility to\nget the trace output.\n\nHere\u0027s the sample output:\n\n     TASK-PID    CPU#    TIMESTAMP  FUNCTION\n        | |       |          |         |\n    \u003c...\u003e-42    [000]     1.758380: module_request: fb0 wait\u003d1 call_site\u003dfb_open\n    ...\n    \u003c...\u003e-60    [000]     3.269403: module_load: scsi_wait_scan\n    \u003c...\u003e-60    [000]     3.269432: module_put: scsi_wait_scan call_site\u003dsys_init_module refcnt\u003d0\n    \u003c...\u003e-61    [001]     3.273168: module_free: scsi_wait_scan\n    ...\n    \u003c...\u003e-1021  [000]    13.836081: module_load: sunrpc\n    \u003c...\u003e-1021  [000]    13.840589: module_put: sunrpc call_site\u003dsys_init_module refcnt\u003d-1\n    \u003c...\u003e-1027  [000]    13.848098: module_get: sunrpc call_site\u003dtry_module_get refcnt\u003d0\n    \u003c...\u003e-1027  [000]    13.848308: module_get: sunrpc call_site\u003dget_filesystem refcnt\u003d1\n    \u003c...\u003e-1027  [000]    13.848692: module_put: sunrpc call_site\u003dput_filesystem refcnt\u003d0\n    ...\n modprobe-2587  [001]  1088.437213: module_load: trace_events_sample F\n modprobe-2587  [001]  1088.437786: module_put: trace_events_sample call_site\u003dsys_init_module refcnt\u003d0\n\nNote:\n\n- the taints flag can be \u0027F\u0027, \u0027C\u0027 and/or \u0027P\u0027 if mod-\u003etaints !\u003d 0\n\n- the module refcnt is percpu, so it can be negative in a\n  specific cpu\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nLKML-Reference: \u003c4A891B3C.5030608@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dc4ddb4c0b7348f1c9759ae8a9e7d734dc1cda82",
      "tree": "00c0df5d9b7809a0c0cf89713c55c7e04ce6c248",
      "parents": [
        "e8f9f4d79a677f55c8ec3acbe87b33a87e2df0de"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Aug 11 19:03:54 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Aug 11 20:35:30 2009 +0200"
      },
      "message": "tracing: Add fields format definition for syscall events\n\nDefine the format of the syscall trace fields to parse the binary\nvalues from a raw trace using the syscall events \"format\" file.\n\nThis is defined dynamically using the syscalls metadata.\nIt prepares the export of syscall event raw records to perf\ncounters.\n\nExample:\n\n$ cat /debug/tracing/events/syscalls/sys_enter_sched_getparam/format\nname: sys_enter_sched_getparam\nID: 39\nformat:\n\tfield:unsigned short common_type;\toffset:0;\tsize:2;\n\tfield:unsigned char common_flags;\toffset:2;\tsize:1;\n\tfield:unsigned char common_preempt_count;\toffset:3;\tsize:1;\n\tfield:int common_pid;\toffset:4;\tsize:4;\n\tfield:int common_tgid;\toffset:8;\tsize:4;\n\n\tfield:pid_t pid;\toffset:12;\tsize:8;\n\tfield:struct sched_param * param;\toffset:20;\tsize:8;\n\nprint fmt: \"pid: 0x%08lx, param: 0x%08lx\", ((unsigned long)(REC-\u003epid)), ((unsigned long)(REC-\u003eparam))\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\n"
    },
    {
      "commit": "e8f9f4d79a677f55c8ec3acbe87b33a87e2df0de",
      "tree": "3b20dcf2c7b49fe23e0641805ca7aaac921bc46d",
      "parents": [
        "0ac676fb50f5f8a22e5e80afc40bf38e31b77c00"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Aug 11 17:42:52 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Aug 11 20:35:29 2009 +0200"
      },
      "message": "tracing: Add ftrace event call parameter to its field descriptor handler\n\nAdd the struct ftrace_event_call as a parameter of its show_format()\ncallback. This way we can use it from the syscall trace events to\nretrieve the syscall name from the ftrace event call parameter and\ndescribe its fields using the syscalls metadata.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\n"
    },
    {
      "commit": "f4b5ffccc83c82947f5d9f15d6f1b6edb1b71cd7",
      "tree": "06ec4a005b40ba0b6039e6c3425dd186486b8c6f",
      "parents": [
        "64c12e0444fcc6b75eb49144ba46d43dbdc6bc8f"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Mon Aug 10 16:53:02 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Aug 11 20:35:29 2009 +0200"
      },
      "message": "tracing: Add perf counter support for syscalls tracing\n\nThe perf counter support is automated for usual trace events. But we\nhave to define specific callbacks for this to handle syscalls trace\nevents\n\nMake \u0027perf stat -e syscalls:sys_enter_blah\u0027 work with syscall style\ntracepoints.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "64c12e0444fcc6b75eb49144ba46d43dbdc6bc8f",
      "tree": "8fe7b546fe787061fca8f97ed2051f40f9b16a57",
      "parents": [
        "fb34a08c3469b2be9eae626ccb96476b4687b810"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Mon Aug 10 16:52:53 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Aug 11 20:35:28 2009 +0200"
      },
      "message": "tracing: Add individual syscalls tracepoint id support\n\nThe current state of syscalls tracepoints generates only one event id\nfor every syscall events.\n\nThis patch associates an id with each syscall trace event, so that we\ncan identify each syscall trace event using the \u0027perf\u0027 tool.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "fb34a08c3469b2be9eae626ccb96476b4687b810",
      "tree": "f308cd109de2c967a1f8bd485eb9c398992a9414",
      "parents": [
        "69fd4f0eb2ececbf8ade55e31a933e174965745e"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Mon Aug 10 16:52:47 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Aug 11 20:35:28 2009 +0200"
      },
      "message": "tracing: Add trace events for each syscall entry/exit\n\nLayer Frederic\u0027s syscall tracer on tracepoints. We create trace events\nvia hooking into the SYSCALL_DEFINE macros. This allows us to\nindividually toggle syscall entry and exit points on/off.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "69fd4f0eb2ececbf8ade55e31a933e174965745e",
      "tree": "bebe7f5b88b8e2c6c240390e4e546d0c3522e79b",
      "parents": [
        "f744bd576a827c5b02e756b81fc2578edf8179b8"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Mon Aug 10 16:52:44 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Aug 11 20:35:27 2009 +0200"
      },
      "message": "tracing: Add ftrace_event_call void * \u0027data\u0027 field\n\nadd an optional void * pointer to \u0027ftrace_event_call\u0027 that is\npassed in for regfunc and unregfunc.\n\nThis prepares for syscall tracepoints creation by passing the name of\nthe syscall we want to trace and then retrieve its number through our\narch syscall table.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "a871bd33a6c0bc86fb47cd02ea2650dd43d3d95f",
      "tree": "b5720cdb3168ba0894b4bd2c1acc004cb19a692c",
      "parents": [
        "63fbdab3157b72467013fe4dcf88c85e45280ef7"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Mon Aug 10 16:52:31 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Aug 11 20:35:26 2009 +0200"
      },
      "message": "tracing: Add syscall tracepoints\n\nadd two tracepoints in syscall exit and entry path, conditioned on\nTIF_SYSCALL_FTRACE. Supports the syscall trace event code.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "066e0378c23f0a3db730893f6a041e4a3922a385",
      "tree": "be402805c83dfc6547d4eb1e8b4129dcec1d9831",
      "parents": [
        "eeac19a7efa150231e4a6bb110d6f27500bcc8ce"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Mon Aug 10 16:52:23 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Aug 11 20:35:26 2009 +0200"
      },
      "message": "tracing: Call arch_init_ftrace_syscalls at boot\n\nCall arch_init_ftrace_syscalls at boot, so we can determine early the\nset of syscalls for the syscall trace events.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "89034bc2c7b839702c00a704e79d112737f98be0",
      "tree": "e65b1f3d4c751baa840efc81bc4734f089379eb3",
      "parents": [
        "fb82ad719831db58e9baa4c67015aae3fe27e7e3",
        "85dfd81dc57e8183a277ddd7a56aa65c96f3f487"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 11 14:19:09 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 11 14:19:09 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/core\n\nConflicts:\n\tkernel/trace/trace_events_filter.c\n\nWe use the tracing/core version.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1853db0e02ae4088f102b0d8e59e83dc98f93f03",
      "tree": "9fd877538baf1904a31eb5436536954cdced5293",
      "parents": [
        "304703aba31a87903b8c0db8f5e6890cac2d596d"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Aug 10 16:38:36 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 10 16:51:19 2009 +0200"
      },
      "message": "perf_counter: Zero dead bytes from ftrace raw samples size alignment\n\nAfter aligning the ftrace raw samples, there are dead bytes storing\nrandom data from the stack. We don\u0027t want to leak these to userspace,\nthen zero these out.\n\nBefore:\n\n\t0x2de88 [0x50]: event: 9\n\t.\n\t. ... raw event: size 80 bytes\n\t.  0000:  09 00 00 00 01 00 50 00 d0 c7 00 81 ff ff ff ff  ......P........\n\t.  0010:  68 01 00 00 68 01 00 00 2c 00 00 00 00 00 00 00  h...h...,......\n\t.  0020:  2c 00 00 00 2b 00 01 02 68 01 00 00 68 01 00 00  ,...+...h...h..\n\t.  0030:  6b 6f 6e 64 65 6d 61 6e 64 2f 30 00 00 00 00 00  kondemand/0....\n\t.  0040:  68 01 00 00 40 7f 46 81 ff ff ff ff 00 10 1b 7f  h...@.F........\n                                                      ^  ^  ^  ^\n                                                         Leak\n\nAfter:\n\n\t0x2d318 [0x50]: event: 9\n\t.\n\t. ... raw event: size 80 bytes\n\t.  0000:  09 00 00 00 01 00 50 00 d0 c7 00 81 ff ff ff ff  ......P........\n\t.  0010:  68 01 00 00 68 01 00 00 68 14 00 00 00 00 00 00  h...h...h......\n\t.  0020:  2c 00 00 00 2b 00 01 02 68 01 00 00 68 01 00 00  ,...+...h...h..\n\t.  0030:  6b 6f 6e 64 65 6d 61 6e 64 2f 30 00 00 00 00 00  kondemand/0....\n\t.  0040:  68 01 00 00 a0 80 46 81 ff ff ff ff 00 00 00 00  h.....F........\n                                                      ^  ^  ^  ^\n\t\t\t\t\t\t\t Fixed\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c1249915116-5210-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\n"
    },
    {
      "commit": "304703aba31a87903b8c0db8f5e6890cac2d596d",
      "tree": "bd233c6fd72d1d674c4a9537cfd6519069914d74",
      "parents": [
        "a4e95fc2cbb31d70a65beffeaf8773f881328c34"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Aug 10 16:11:32 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 10 16:18:50 2009 +0200"
      },
      "message": "perf_counter: Subtract the buffer size field from the event record size\n\nWe compute the perf raw sample size by aligning the raw ftrace\nevent size plus the buffer size field itself. We do that\ninstead of aligning only the perf raw sample size, so that we\nmight economize some in some cases.\n\nBut this buffer size field is not stored in the perf raw\nsample, we must then substract its size from the buffer once we\ncomputed the alignment unless we may get a useless u32 field in\nthe buffer.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c20090810141129.GA5124@nowhere\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a044560c3a1f0ad75ce685c1ed7604820b9ed319",
      "tree": "51fa4979ad02d388b35e1a56020bfbd8c2e5329d",
      "parents": [
        "c0a8865e32c8d1a562db38e06ef31ef23282f646"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Aug 10 11:16:52 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 10 11:33:09 2009 +0200"
      },
      "message": "perf_counter: Correct PERF_SAMPLE_RAW output\n\nPERF_SAMPLE_* output switches should unconditionally output the\ncorrect format, as they are the only way to unambiguously parse\nthe PERF_EVENT_SAMPLE data.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1249896447.17467.74.camel@twins\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f413cdb80ce00ec1a4d0ab949b5d96c81cae7f75",
      "tree": "08a9621cb1318f73a37faeed14c4e728408551ad",
      "parents": [
        "3a6593050fbd8bbcaed3a44d01c31d907315c86c"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Aug 07 01:25:54 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Aug 09 12:53:48 2009 +0200"
      },
      "message": "perf_counter: Fix/complete ftrace event records sampling\n\nThis patch implements the kernel side support for ftrace event\nrecord sampling.\n\nA new counter sampling attribute is added:\n\n   PERF_SAMPLE_TP_RECORD\n\nwhich requests ftrace events record sampling. In this case\nif a PERF_TYPE_TRACEPOINT counter is active and a tracepoint\nfires, we emit the tracepoint binary record to the\nperfcounter event buffer, as a sample.\n\nResult, after setting PERF_SAMPLE_TP_RECORD attribute from perf\nrecord:\n\n perf record -f -F 1 -a -e workqueue:workqueue_execution\n perf report -D\n\n 0x21e18 [0x48]: event: 9\n .\n . ... raw event: size 72 bytes\n .  0000:  09 00 00 00 01 00 48 00 d0 c7 00 81 ff ff ff ff  ......H........\n .  0010:  0a 00 00 00 0a 00 00 00 21 00 00 00 00 00 00 00  ........!......\n .  0020:  2b 00 01 02 0a 00 00 00 0a 00 00 00 65 76 65 6e  +...........eve\n .  0030:  74 73 2f 31 00 00 00 00 00 00 00 00 0a 00 00 00  ts/1...........\n .  0040:  e0 b1 31 81 ff ff ff ff                          .......\n.\n0x21e18 [0x48]: PERF_EVENT_SAMPLE (IP, 1): 10: 0xffffffff8100c7d0 period: 33\n\nThe raw ftrace binary record starts at offset 0020.\n\nTranslation:\n\n struct trace_entry {\n\ttype\t\t\u003d 0x2b \u003d 43;\n\tflags\t\t\u003d 1;\n\tpreempt_count\t\u003d 2;\n\tpid\t\t\u003d 0xa \u003d 10;\n\ttgid\t\t\u003d 0xa \u003d 10;\n }\n\n thread_comm \u003d \"events/1\"\n thread_pid  \u003d 0xa \u003d 10;\n func\t    \u003d 0xffffffff8131b1e0 \u003d flush_to_ldisc()\n\nWhat will come next?\n\n - Userspace support (\u0027perf trace\u0027), \u0027flight data recorder\u0027 mode\n   for perf trace, etc.\n\n - The unconditional copy from the profiling callback brings\n   some costs however if someone wants no such sampling to\n   occur, and needs to be fixed in the future. For that we need\n   to have an instant access to the perf counter attribute.\n   This is a matter of a flag to add in the struct ftrace_event.\n\n - Take care of the events recursivity! Don\u0027t ever try to record\n   a lock event for example, it seems some locking is used in\n   the profiling fast path and lead to a tracing recursivity.\n   That will be fixed using raw spinlock or recursivity\n   protection.\n\n - [...]\n\n - Profit! :-)\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3a6593050fbd8bbcaed3a44d01c31d907315c86c",
      "tree": "5bbaa0015ed0b0986146cc6fa9390f559bcb66b1",
      "parents": [
        "e3560336be655c6791316482fe288b119f34c427"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Jul 21 17:34:57 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Aug 09 12:47:25 2009 +0200"
      },
      "message": "perf_counter, ftrace: Fix perf_counter integration\n\nAdds possible second part to the assign argument of TP_EVENT().\n\n  TP_perf_assign(\n\t__perf_count(foo);\n\t__perf_addr(bar);\n  )\n\nWhich, when specified make the swcounter increment with @foo instead\nof the usual 1, and report @bar for PERF_SAMPLE_ADDR (data address\nassociated with the event) when this triggers a counter overflow.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7d536cb3fb9993bdcd5a2fbaa6b0670ded4e101c",
      "tree": "63c4a6ec6de75d9a2db7d677c768a5f2953fa237",
      "parents": [
        "68fd60a8c8bca6af51805c45f286f0f2572ac977"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jul 16 10:54:02 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jul 20 11:38:44 2009 -0400"
      },
      "message": "tracing/events: record the size of dynamic arrays\n\nWhen a dynamic array is defined, we add __data_loc_foo in\ntrace_entry to record the offset of the array, but the\nsize of the array is not recorded, which causes 2 problems:\n\n- the event filter just compares the first 2 chars of the strings.\n\n- parsers can\u0027t parse dynamic arrays.\n\nSo we encode the size of each dynamic array in the higher 16 bits\nof __data_loc_foo, while the offset is in lower 16 bits.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A5E964A.9000403@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "68fd60a8c8bca6af51805c45f286f0f2572ac977",
      "tree": "7f7272bf201093e878f1f07c0bfe233f7e781634",
      "parents": [
        "d34a4debef933061924ee17c2ede33f5c44925fb"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Thu Jul 16 10:53:34 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jul 20 10:52:51 2009 -0400"
      },
      "message": "tracing/events: add missing type info of dynamic arrays\n\nThe format file doesn\u0027t contain enough information for\n__dynamic_array/__string. The type name is missing.\n\nBefore:\n  # cat format:\n  name: irq_handler_entry\n  ...\n          field:__data_loc name;  offset:16;      size:2;\n\nAfter:\n  # cat format:\n  name: irq_handler_entry\n  ...\n          field:__data_loc char[] name;  offset:16;      size:2;\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A5E962E.9020900@cn.fujitsu.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c0c50b541a4b147c5c2572ed051420238c47f57a",
      "tree": "7500aefddead1009ed271c5b413f4b4fa89083a1",
      "parents": [
        "a376d446771710790f5f3425172b467bf8578e22",
        "6ab5d668b131d3c5416f6df1d3ca95b82d4fe8a2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 14 18:34:32 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 14 18:34:32 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing/function-profiler: do not free per cpu variable stat\n  tracing/events: Move TRACE_SYSTEM outside of include guard\n"
    },
    {
      "commit": "d0b6e04a4cd8360e3c9c419f7c30a3081a0c142a",
      "tree": "621a99cac5fdc0c90a3bcdab60d5896daba04a00",
      "parents": [
        "7638d5322bd89d49e013a03fe2afaeb6d214fabd"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Jul 13 10:33:21 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 13 10:59:55 2009 +0200"
      },
      "message": "tracing/events: Move TRACE_SYSTEM outside of include guard\n\nIf TRACE_INCLDUE_FILE is defined, \u003ctrace/events/TRACE_INCLUDE_FILE.h\u003e\nwill be included and compiled, otherwise it will be\n\u003ctrace/events/TRACE_SYSTEM.h\u003e\n\nSo TRACE_SYSTEM should be defined outside of #if proctection,\njust like TRACE_INCLUDE_FILE.\n\nImaging this scenario:\n\n #include \u003ctrace/events/foo.h\u003e\n    -\u003e TRACE_SYSTEM \u003d\u003d foo\n ...\n #include \u003ctrace/events/bar.h\u003e\n    -\u003e TRACE_SYSTEM \u003d\u003d bar\n ...\n #define CREATE_TRACE_POINTS\n #include \u003ctrace/events/foo.h\u003e\n    -\u003e TRACE_SYSTEM \u003d\u003d bar !!!\n\nand then bar.h will be included and compiled.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A5A9CF1.2010007@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "43ce1d23b43330634507a049b55c36e91d27282e",
      "tree": "d7532d7c0bea60b7bfe29dad51b4b92122acdd5a",
      "parents": [
        "c364b22c9580a885e0f8c0d0f9710d67dc448958"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Sun Jun 14 17:58:45 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sun Jun 14 17:58:45 2009 -0400"
      },
      "message": "ext4: Fix mmap/truncate race when blocksize \u003c pagesize \u0026\u0026 !nodellaoc\n\nThis patch fixes the mmap/truncate race that was fixed for delayed\nallocation by merging ext4_{journalled,normal,da}_writepage() into\next4_writepage().\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "627ad9fd0733f0a31a266ff98a4a933eee710f0b",
      "tree": "68b2c9bcaf0f8cdc7ba2b6bbc4f05d35f340af4d",
      "parents": [
        "8e4a718ff38d8539938ec3421935904c27e00c39"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Jun 20 23:21:41 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Jun 20 23:21:41 2009 -0400"
      },
      "message": "ext4: Fix type warning on 64-bit platforms in tracing events header\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "9bffad1ed2a003a355ed1b42424a0ae3575275ed",
      "tree": "9016e7b0e04a0e5319680f9e1f89fc1abb13c765",
      "parents": [
        "879c5e6b7cb4c689d08ca9b2e353d8ab3dc425d5"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Jun 17 11:48:11 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Jun 17 11:48:11 2009 -0400"
      },
      "message": "ext4: convert instrumentation from markers to tracepoints\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "879c5e6b7cb4c689d08ca9b2e353d8ab3dc425d5",
      "tree": "8b58103d6773a47d6fc29b47024e8b4092487c88",
      "parents": [
        "65795efbd380a832ae508b04dba8f8e53f0b84d9"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Jun 17 11:47:48 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Jun 17 11:47:48 2009 -0400"
      },
      "message": "jbd2: convert instrumentation from markers to tracepoints\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "9cbc1cb8cd46ce1f7645b9de249b2ce8460129bb",
      "tree": "8d104ec2a459346b99413b0b77421ca7b9936c1a",
      "parents": [
        "ca44d6e60f9de26281fda203f58b570e1748c015",
        "45e3e1935e2857c54783291107d33323b3ef33c8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 15 03:02:23 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 15 03:02:23 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n\tdrivers/scsi/fcoe/fcoe.c\n\tnet/core/drop_monitor.c\n\tnet/core/net-traces.c\n"
    },
    {
      "commit": "c9059598ea8981d02356eead3188bf7fa4d717b8",
      "tree": "03e73b20a30e988da7c6a3e0ad93b2dc5843274d",
      "parents": [
        "0a33f80a8373eca7f4bea3961d1346c3815fa5ed",
        "b0fd271d5fba0b2d00888363f3869e3f9b26caa9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 10:52:27 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 11:10:35 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.31\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.31\u0027 of git://git.kernel.dk/linux-2.6-block: (153 commits)\n  block: add request clone interface (v2)\n  floppy: fix hibernation\n  ramdisk: remove long-deprecated \"ramdisk\u003d\" boot-time parameter\n  fs/bio.c: add missing __user annotation\n  block: prevent possible io_context-\u003erefcount overflow\n  Add serial number support for virtio_blk, V4a\n  block: Add missing bounce_pfn stacking and fix comments\n  Revert \"block: Fix bounce limit setting in DM\"\n  cciss: decode unit attention in SCSI error handling code\n  cciss: Remove no longer needed sendcmd reject processing code\n  cciss: change SCSI error handling routines to work with interrupts enabled.\n  cciss: separate error processing and command retrying code in sendcmd_withirq_core()\n  cciss: factor out fix target status processing code from sendcmd functions\n  cciss: simplify interface of sendcmd() and sendcmd_withirq()\n  cciss: factor out core of sendcmd_withirq() for use by SCSI error handling code\n  cciss: Use schedule_timeout_uninterruptible in SCSI error handling code\n  block: needs to set the residual length of a bidi request\n  Revert \"block: implement blkdev_readpages\"\n  block: Fix bounce limit setting in DM\n  Removed reference to non-existing file Documentation/PCI/PCI-DMA-mapping.txt\n  ...\n\nManually fix conflicts with tracing updates in:\n\tblock/blk-sysfs.c\n\tdrivers/ide/ide-atapi.c\n\tdrivers/ide/ide-cd.c\n\tdrivers/ide/ide-floppy.c\n\tdrivers/ide/ide-tape.c\n\tinclude/trace/events/block.h\n\tkernel/trace/blktrace.c\n"
    },
    {
      "commit": "6ff9a64d2aaa6eae396adc95e9c91c0cbfa6dbe4",
      "tree": "1ca1b9a0aff32f1542a9dc3d2f5ccac7ab8a52e3",
      "parents": [
        "bc5c6c043d8381676339fb3da59cc4cc5921d368"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jun 10 14:28:34 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jun 10 14:28:34 2009 -0400"
      },
      "message": "tracing: do not translate event helper macros in print format\n\nBy moving the macro that creates the print format code above the\ndefining of the event macro helpers (__get_str, __print_symbolic,\nand __get_dynamic_array), we get a little cleaner print format.\n\nInstead of:\n\n  (char *)((void *)REC + REC-\u003e__data_loc_name)\n\nwe get:\n\n   __get_str(name)\n\nInstead of:\n\n   ({ static const struct trace_print_flags symbols[] \u003d { { HI_SOFTIRQ, \"HI\" }, {\n\nwe get:\n\n   __print_symbolic(REC-\u003evec, { HI_SOFTIRQ, \"HI\" }, {\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "6556d1df88fe68f9836beeb43342a336691cb67c",
      "tree": "f9c550134fdf74fadafee32253a8a69552bfc9f1",
      "parents": [
        "55782138e47d9baf2f7d3a7af9e7cf42adf72c56"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Jun 09 14:04:26 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jun 09 14:17:36 2009 -0400"
      },
      "message": "tracing: fix the block trace points print size\n\nThe sector field is either u64 or unsigned long depending on\nthe arch. This patch casts the sector to unsigned long long to\nprevent the printf warnings.\n\n[ Impact: remove compile warnings ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "55782138e47d9baf2f7d3a7af9e7cf42adf72c56",
      "tree": "c7ccabae20e27bbeb08b69a358e8b86c98d1d9f3",
      "parents": [
        "f57a8a1911342265e7acdc190333c4e9235a6632"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Jun 09 13:43:05 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jun 09 12:34:23 2009 -0400"
      },
      "message": "tracing/events: convert block trace points to TRACE_EVENT()\n\nTRACE_EVENT is a more generic way to define tracepoints. Doing so adds\nthese new capabilities to this tracepoint:\n\n  - zero-copy and per-cpu splice() tracing\n  - binary tracing without printf overhead\n  - structured logging records exposed under /debug/tracing/events\n  - trace events embedded in function tracer output and other plugins\n  - user-defined, per tracepoint filter expressions\n  ...\n\nCons:\n\n  - no dev_t info for the output of plug, unplug_timer and unplug_io events.\n    no dev_t info for getrq and sleeprq events if bio \u003d\u003d NULL.\n    no dev_t info for rq_abort,...,rq_requeue events if rq-\u003erq_disk \u003d\u003d NULL.\n\n    This is mainly because we can\u0027t get the deivce from a request queue.\n    But this may change in the future.\n\n  - A packet command is converted to a string in TP_assign, not TP_print.\n    While blktrace do the convertion just before output.\n\n    Since pc requests should be rather rare, this is not a big issue.\n\n  - In blktrace, an event can have 2 different print formats, but a TRACE_EVENT\n    has a unique format, which means we have some unused data in a trace entry.\n\n    The overhead is minimized by using __dynamic_array() instead of __array().\n\nI\u0027ve benchmarked the ioctl blktrace vs the splice based TRACE_EVENT tracing:\n\n      dd                   dd + ioctl blktrace       dd + TRACE_EVENT (splice)\n1     7.36s, 42.7 MB/s     7.50s, 42.0 MB/s          7.41s, 42.5 MB/s\n2     7.43s, 42.3 MB/s     7.48s, 42.1 MB/s          7.43s, 42.4 MB/s\n3     7.38s, 42.6 MB/s     7.45s, 42.2 MB/s          7.41s, 42.5 MB/s\n\nSo the overhead of tracing is very small, and no regression when using\nthose trace events vs blktrace.\n\nAnd the binary output of TRACE_EVENT is much smaller than blktrace:\n\n # ls -l -h\n -rw-r--r-- 1 root root 8.8M 06-09 13:24 sda.blktrace.0\n -rw-r--r-- 1 root root 195K 06-09 13:24 sda.blktrace.1\n -rw-r--r-- 1 root root 2.7M 06-09 13:25 trace_splice.out\n\nFollowing are some comparisons between TRACE_EVENT and blktrace:\n\nplug:\n  kjournald-480   [000]   303.084981: block_plug: [kjournald]\n  kjournald-480   [000]   303.084981:   8,0    P   N [kjournald]\n\nunplug_io:\n  kblockd/0-118   [000]   300.052973: block_unplug_io: [kblockd/0] 1\n  kblockd/0-118   [000]   300.052974:   8,0    U   N [kblockd/0] 1\n\nremap:\n  kjournald-480   [000]   303.085042: block_remap: 8,0 W 102736992 + 8 \u003c- (8,8) 33384\n  kjournald-480   [000]   303.085043:   8,0    A   W 102736992 + 8 \u003c- (8,8) 33384\n\nbio_backmerge:\n  kjournald-480   [000]   303.085086: block_bio_backmerge: 8,0 W 102737032 + 8 [kjournald]\n  kjournald-480   [000]   303.085086:   8,0    M   W 102737032 + 8 [kjournald]\n\ngetrq:\n  kjournald-480   [000]   303.084974: block_getrq: 8,0 W 102736984 + 8 [kjournald]\n  kjournald-480   [000]   303.084975:   8,0    G   W 102736984 + 8 [kjournald]\n\n  bash-2066  [001]  1072.953770:   8,0    G   N [bash]\n  bash-2066  [001]  1072.953773: block_getrq: 0,0 N 0 + 0 [bash]\n\nrq_complete:\n  konsole-2065  [001]   300.053184: block_rq_complete: 8,0 W () 103669040 + 16 [0]\n  konsole-2065  [001]   300.053191:   8,0    C   W 103669040 + 16 [0]\n\n  ksoftirqd/1-7   [001]  1072.953811:   8,0    C   N (5a 00 08 00 00 00 00 00 24 00) [0]\n  ksoftirqd/1-7   [001]  1072.953813: block_rq_complete: 0,0 N (5a 00 08 00 00 00 00 00 24 00) 0 + 0 [0]\n\nrq_insert:\n  kjournald-480   [000]   303.084985: block_rq_insert: 8,0 W 0 () 102736984 + 8 [kjournald]\n  kjournald-480   [000]   303.084986:   8,0    I   W 102736984 + 8 [kjournald]\n\nChangelog from v2 -\u003e v3:\n\n- use the newly introduced __dynamic_array().\n\nChangelog from v1 -\u003e v2:\n\n- use __string() instead of __array() to minimize the memory required\n  to store hex dump of rq-\u003ecmd().\n\n- support large pc requests.\n\n- add missing blk_fill_rwbs_rq() in block_rq_requeue TRACE_EVENT.\n\n- some cleanups.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A2DF669.5070905@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "918143e8b7d6153d7a83a3f854323407939f4a7e",
      "tree": "34c0b1434516d146fc3811a6d071b052dd59342b",
      "parents": [
        "64edbc562034f2ec3fce382cb208fab40586d005",
        "563af16c30ede41eda2d614195d88e07f7c7103d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 05 16:50:29 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 05 16:50:29 2009 +0200"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace-4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "64edbc562034f2ec3fce382cb208fab40586d005",
      "tree": "7fbfaaea9467d14a1a6ac5667ce01be5ccb9b635",
      "parents": [
        "43bd1236234cacbc18d1476a9b57e7a306efddf5",
        "0f6ce3de4ef6ff940308087c49760d068851c1a7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 04 13:59:26 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 04 13:59:40 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/ftrace\u0027 into tracing/core\n\nMerge reason: this mini-topic had outstanding problems that delayed\n              its merge, so it does not fast-forward.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "56d8bd3f0b98972312cad683947ec90b21011199",
      "tree": "8ed2bb43d0f00923dd81b5b2c19c91b09e3977c6",
      "parents": [
        "048dc50c5e7eada19ebabbad70b7966d14283d41"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Jun 03 14:52:03 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jun 03 10:29:48 2009 -0400"
      },
      "message": "tracing: fix multiple use of __print_flags and __print_symbolic\n\nHere is an updated patch to include the extra call to\ntrace_seq_init() as requested. This is vs. the latest\n-tip tree and fixes the use of multiple __print_flags\nand __print_symbolic in a single tracer. Also tested\nto ensure its working now:\n\nmount.gfs2-2534  [000]   235.850587: gfs2_glock_queue: 8.7 glock 1:2 dequeue PR\nmount.gfs2-2534  [000]   235.850591: gfs2_demote_rq: 8.7 glock 1:0 demote EX to NL flags:DI\nmount.gfs2-2534  [000]   235.850591: gfs2_glock_queue: 8.7 glock 1:0 dequeue EX\nglock_workqueue-2529  [000]   235.850666: gfs2_glock_state_change: 8.7 glock 1:0 state EX \u003d\u003e NL tgt:NL dmt:NL flags:lDpI\nglock_workqueue-2529  [000]   235.850672: gfs2_glock_put: 8.7 glock 1:0 state NL \u003d\u003e IV flags:I\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nLKML-Reference: \u003c1244037123.29604.603.camel@localhost.localdomain\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "1d080d6c3141623c92caaebe20e847cb99ccbb60",
      "tree": "e77559ff0edc3bfaf228a0e4e7c26ca3cf720de8",
      "parents": [
        "ec081ddc3d90aab35bc0de19a358b964978837cf"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Jun 01 12:20:40 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:25:42 2009 -0400"
      },
      "message": "tracing: remove redundant SOFTIRQ from softirq event traces\n\nAfter converting the softirq tracer to use te flags options, this\ncaused a regression with the name. Since the flag was used directly\nit was printed out (i.e. HRTIMER_SOFTIRQ).\n\nThis patch only shows the softirq name without the SOFTIRQ part.\n\n[ Impact: fix regression of output from softirq events ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "7fcb7c472f455d1711eb5a7633204dba8800a6d6",
      "tree": "ba64de513bdbe5550c6fc08078a356359830ec99",
      "parents": [
        "a9c1c3abe1160a5632e48c929b02b740556bf423"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Jun 01 15:35:46 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:25:15 2009 -0400"
      },
      "message": "tracing/events: introduce __dynamic_array()\n\n__string() is limited:\n\n  - it\u0027s a char array, but we may want to define array with other types\n  - a source string should be available, but we may just know the string size\n\nWe introduce __dynamic_array() to break those limitations, and __string()\nbecomes a wrapper of it. As a side effect, now __get_str() can be used\nin TP_fast_assign but not only TP_print.\n\nTake XFS for example, we have the string length in the dirent, but the\nstring itself is not NULL-terminated, so __dynamic_array() can be used:\n\nTRACE_EVENT(xfs_dir2,\n\tTP_PROTO(struct xfs_da_args *args),\n\tTP_ARGS(args),\n\n\tTP_STRUCT__entry(\n\t\t__field(int, namelen)\n\t\t__dynamic_array(char, name, args-\u003enamelen + 1)\n\t\t...\n\t),\n\n\tTP_fast_assign(\n\t\tchar *name \u003d __get_str(name);\n\n\t\tif (args-\u003enamelen)\n\t\t\tmemcpy(name, args-\u003ename, args-\u003enamelen);\n\t\tname[args-\u003enamelen] \u003d \u0027\\0\u0027;\n\n\t\t__entry-\u003enamelen \u003d args-\u003enamelen;\n\t),\n\n\tTP_printk(\"name %.*s namelen %d\",\n\t\t  __entry-\u003enamelen ? __get_str(name) : NULL\n\t\t  __entry-\u003enamelen)\n);\n\n[ Impact: allow defining dynamic size arrays ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A2384D2.3080403@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a9c1c3abe1160a5632e48c929b02b740556bf423",
      "tree": "07d2313c9b8c637e6532e61efe034dba5a697231",
      "parents": [
        "6e25db44a7ad7eb380f4ec774ec00a8fcddea112"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Jun 01 15:35:13 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:24:53 2009 -0400"
      },
      "message": "tracing/events: put TP_fast_assign into braces\n\nCurrently TP_fast_assign has a limitation that we can\u0027t define local\nvariables in it.\n\nHere\u0027s one use case when we introduce __dynamic_array():\n\nTP_fast_assign(\n\ttype *p \u003d __get_dynamic_array(item);\n\n\tfoo(p);\n\tbar(p);\n),\n\n[ Impact: allow defining local variables in TP_fast_assign ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A2384B1.90100@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "6e25db44a7ad7eb380f4ec774ec00a8fcddea112",
      "tree": "35531dfe6f96b7883fc3014bbd0239eba616d414",
      "parents": [
        "897f17a65389a26509bd0c79a9812d1c9ea8ea6f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri May 29 11:24:59 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 01 23:24:13 2009 -0400"
      },
      "message": "tracing/events: fix a typo in __string() format output\n\n\"tsize\" should be \"\\tsize\". Also remove the space before \"__str_loc\".\n\nBefore:\n # cat tracing/events/irq/irq_handler_entry/format\n        ...\n        field:int irq;  offset:12;      size:4;\n        field: __str_loc name;  offset:16;tsize:2;\n        ...\n\nAfter:\n # cat tracing/events/irq/irq_handler_entry/format\n\t...\n        field:int irq;  offset:12;      size:4;\n        field:__str_loc name;   offset:16;      size:2;\n\t...\n\n[ Impact: standardize __string field description in events format file ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "fb39125fd79a25c5002f3b45cf4c80e3fa6b961b",
      "tree": "96a9d274896f94306bc4d4972eca2153934f4814",
      "parents": [
        "f2aebaee653a35b01c3665de2cbb1e31456b8ea8"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Fri Apr 17 15:15:51 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jun 02 01:10:40 2009 +0200"
      },
      "message": "ftrace, workqueuetrace: make workqueue tracepoints use TRACE_EVENT macro\n\nv3: zhaolei@cn.fujitsu.com: Change TRACE_EVENT definition to new format\n    introduced by Steven Rostedt: consolidate trace and trace_event headers\nv2: kosaki@jp.fujitsu.com: print the function names instead of addr, and zap\n    the work addr\nv1: zhaolei@cn.fujitsu.com: Make workqueue tracepoints use TRACE_EVENT macro\n\nTRACE_EVENT is a more generic way to define tracepoints.\nDoing so adds these new capabilities to the tracepoints:\n\n  - zero-copy and per-cpu splice() tracing\n  - binary tracing without printf overhead\n  - structured logging records exposed under /debug/tracing/events\n  - trace events embedded in function tracer output and other plugins\n  - user-defined, per tracepoint filter expressions\n\nThen, this patch converts DEFINE_TRACE to TRACE_EVENT in workqueue related\ntracepoints.\n\n[ Impact: expand workqueue tracer to events tracing ]\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "f2aebaee653a35b01c3665de2cbb1e31456b8ea8",
      "tree": "e9a873c81bb4105d10a04d925f15e53e9ad1ac0c",
      "parents": [
        "5b6045a906f48d37591365c5dcdd6d1d146bfd4a"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Wed May 27 21:36:02 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu May 28 01:22:06 2009 +0200"
      },
      "message": "ftrace: don\u0027t convert function\u0027s local variable name in macro\n\n\"call\" is an argument of macro, but it is also used as a local\nvariable name of function in macro.\nWe should keep this local variable name distinct from any\nCPP macro parameter name if both are in the same macro scope,\nalthough it hasn\u0027t caused any problem yet.\n\n[ Impact: robustify macro ]\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "c2adae0970ca1db8adb92fb56ae3bcabd916e8bd",
      "tree": "8612e3513e14cf9190ce90e59037f7eb4688ba4a",
      "parents": [
        "0f4fc29dd68dfab9c6ddd5d087d34a5b6818cb00"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed May 20 19:56:19 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 20:32:30 2009 +0200"
      },
      "message": "tracing: convert irq events to use __print_symbolic\n\nThe recording of the names at trace time is inefficient. This patch\nimplements the softirq event recording to only record the vector\nand then use the __print_symbolic interface to print out the names.\n\n[ Impact: faster recording of softirq events ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "0f4fc29dd68dfab9c6ddd5d087d34a5b6818cb00",
      "tree": "af3d210c8db9adcf117580c949fb708badcb520b",
      "parents": [
        "62ba180e80f4194a498585ac0e4c07daa8ca08d1"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed May 20 19:21:47 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 20:31:50 2009 +0200"
      },
      "message": "tracing: add __print_symbolic to trace events\n\nThis patch adds __print_symbolic which is similar to __print_flags but\nworks for an enumeration type instead. That is, there is only a one to one\nmapping between the values and the symbols. When a match is made, then\nit is printed, otherwise the hex value is outputed.\n\n[ Impact: add interface for showing symbol names in events ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "62ba180e80f4194a498585ac0e4c07daa8ca08d1",
      "tree": "44bdb742aa542e16cc08d93d6cca6b22e9492071",
      "parents": [
        "937cdb9db7f59278d0cb1582e6e64e3dfd73b4fc"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri May 15 16:16:30 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 20:31:14 2009 +0200"
      },
      "message": "tracing: add flag output for kmem events\n\nThis patch changes the output for gfp_flags from being a simple hex value\nto the actual names.\n\n  gfp_flags\u003dGFP_ATOMIC  instead of gfp_flags\u003d00000020\n\nAnd even\n\n  gfp_flags\u003dGFP_KERNEL instead of gfp_flags\u003d000000d0\n\n(Thanks to Frederic Weisbecker for pointing out that the first version\n had a bad order of GFP masks)\n\n[ Impact: more human readable output from tracer ]\n\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "937cdb9db7f59278d0cb1582e6e64e3dfd73b4fc",
      "tree": "11ade43ae91890ad025fa97a9fd651b9149518dc",
      "parents": [
        "be74b73a57645cc253d881ab0c1014eb64b9cf22"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri May 15 10:51:13 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 20:29:19 2009 +0200"
      },
      "message": "tracing: add previous task state info to sched switch event\n\nIt is useful to see the state of a task that is being switched out.\nThis patch adds the output of the state of the previous task in\nthe context switch event.\n\n[ Impact: see state of switched out task in context switch ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "be74b73a57645cc253d881ab0c1014eb64b9cf22",
      "tree": "83f14ae9a43fe98a1363d30d20d60245e1115382",
      "parents": [
        "0e907c99391362385c8e3af2c43b904dd1fd5d73"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue May 26 20:25:22 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 20:25:22 2009 +0200"
      },
      "message": "tracing: add __print_flags for events\n\nDevelopers have been asking for the ability in the ftrace event tracer\nto display names of bits in a flags variable.\n\nInstead of printing out c2, it would be easier to read FOO|BAR|GOO,\nassuming that FOO is bit 1, BAR is bit 6 and GOO is bit 7.\n\nSome examples where this would be useful are the state flags in a context\nswitch, kmalloc flags, and even permision flags in accessing files.\n\n[\n  v2 changes include:\n\n  Frederic Weisbecker\u0027s idea of using a mask instead of bits,\n  thus we can output GFP_KERNEL instead of GPF_WAIT|GFP_IO|GFP_FS.\n\n  Li Zefan\u0027s idea of allowing the caller of __print_flags to add their\n  own delimiter (or no delimiter) where we can get for file permissions\n  rwx instead of r|w|x.\n]\n\n[\n  v3 changes:\n\n   Christoph Hellwig\u0027s idea of using an array instead of va_args.\n]\n\n[ Impact: better displaying of flags in trace output ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "b0aae68cc5508f3c2fbf728988c954db4c8b8a53",
      "tree": "af1253c54cf3edc83806acab14a60d1529e81709",
      "parents": [
        "4f5359685af6de7dca101393dc606620adbe963f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu May 21 13:59:18 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue May 26 00:15:21 2009 +0200"
      },
      "message": "tracing/events: change the type of __str_loc_item to unsigned short\n\nWhen defining a dynamic size string, we add __str_loc_##item to the\ntrace entry, and it stores the location of the actual string in\nentry-\u003e_str_data[]\n\n\u0027unsigned short\u0027 should be sufficient to store this information, thus\nwe save 2 bytes per dyn-size string in the ring buffer.\n\n[ Impact: reduce memory occupied by dyn-size strings in ring buffer ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4A14EDB6.2050507@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "4ea7e38696c7e798c47ebbecadfd392f23f814f9",
      "tree": "1e144d0c79fb667860ff7fa0ed203984e888ddab",
      "parents": [
        "d95ed9275edcb8995bda31005bb3f55e087626d7"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Thu May 21 07:36:08 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 21 16:50:21 2009 -0700"
      },
      "message": "dropmon: add ability to detect when hardware dropsrxpackets\n\nPatch to add the ability to detect drops in hardware interfaces via dropwatch.\nAdds a tracepoint to net_rx_action to signal everytime a napi instance is\npolled.  The dropmon code then periodically checks to see if the rx_frames\ncounter has changed, and if so, adds a drop notification to the netlink\nprotocol, using the reserved all-0\u0027s vector to indicate the drop location was in\nhardware, rather than somewhere in the code.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\n\n include/linux/net_dropmon.h |    8 ++\n include/trace/napi.h        |   11 +++\n net/core/dev.c              |    5 +\n net/core/drop_monitor.c     |  124 ++++++++++++++++++++++++++++++++++++++++++--\n net/core/net-traces.c       |    4 +\n net/core/netpoll.c          |    2\n 6 files changed, 149 insertions(+), 5 deletions(-)\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "79c5d3ce614d8fe706545c7bca2158b63db6bb5e",
      "tree": "73789d345a758063eb2d1810d9d70b1cb2a4b130",
      "parents": [
        "049862579333cc6cd9e6edfd6987cd0addfd8c59"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon May 11 15:06:46 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 11 13:30:24 2009 +0200"
      },
      "message": "blktrace: from-sector redundant in trace_block_remap, cleanup\n\nThe last argument of block_remap prober is the original sector\nbefore remap, so it should be \u0027from\u0027, not \u0027to\u0027.\n\n[ Impact: clean up ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: \"Alan D. Brunelle\" \u003cAlan.Brunelle@hp.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nLKML-Reference: \u003c4A07CE86.5090301@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "22a7c31a9659deaddafbbcec6562d44141e84474",
      "tree": "0fe1c64e82d673597c78c6ce5f3569d9101b5281",
      "parents": [
        "a42aaa3bbce85ac487ad4fad5db99e8e91b7aac1"
      ],
      "author": {
        "name": "Alan D. Brunelle",
        "email": "Alan.Brunelle@hp.com",
        "time": "Mon May 04 16:35:08 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed May 06 14:13:01 2009 +0200"
      },
      "message": "blktrace: from-sector redundant in trace_block_remap\n\nRemove redundant from-sector parameter: it\u0027s /always/ the bio\u0027s sector\npassed in.\n\n[ Impact: cleanup ]\n\nSigned-off-by: Alan D. Brunelle \u003calan.brunelle@hp.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003c49FF517C.7000503@hp.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a42aaa3bbce85ac487ad4fad5db99e8e91b7aac1",
      "tree": "1f1b4ac4335774c154213e756d10247e5eac1ded",
      "parents": [
        "de1d7286060430e79a1d50ad6e5fee8fe863c5f6"
      ],
      "author": {
        "name": "Alan D. Brunelle",
        "email": "Alan.Brunelle@hp.com",
        "time": "Mon May 04 16:27:26 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed May 06 14:13:00 2009 +0200"
      },
      "message": "blktrace: correct remap names\n\nThis attempts to clarify names utilized during block I/O remap\noperations (partition, volume manager). It correctly matches up the\n/from/ information for both device \u0026 sector. This takes in the concept\nfrom Kosaki Motohiro and extends it to include better naming for the\n\"device_from\" field.\n\n[ Impact: cleanup ]\n\nSigned-off-by: Alan D. Brunelle \u003calan.brunelle@hp.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003c49FF4FAE.3000301@hp.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "de1d7286060430e79a1d50ad6e5fee8fe863c5f6",
      "tree": "0d3ebef66d5d4634bc1d4fee501a8a309e5aa874",
      "parents": [
        "20c8928abe70e204bd077ab6cfe23002d7788983"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Tue May 05 16:49:59 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed May 06 12:15:51 2009 +0200"
      },
      "message": "tracepoint: trace_sched_migrate_task(): remove parameter\n\nThe orig_cpu parameter in trace_sched_migrate_task() is not necessary,\nit can be got by using task_cpu(p) in the probe.\n\n[ Impact: micro-optimization ]\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\n[ modified from Mathieu\u0027s patch. The original patch is at:\n  http://marc.info/?l\u003dlinux-kernel\u0026m\u003d123791201716239\u0026w\u003d2 ]\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nCc: fweisbec@gmail.com\nCc: rostedt@goodmis.org\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: zhaolei@cn.fujitsu.com\nCc: laijs@cn.fujitsu.com\nLKML-Reference: \u003c49FFFDB7.1050402@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9ee1983c9aa18f12388ef660d0c76a23dc112959",
      "tree": "d6ecce58d2a0ae99dd519f559f9c66383f9e6f90",
      "parents": [
        "a76f8c6da1e48fd4ef025f42c736389532ff30ba"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Thu Apr 30 13:29:47 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri May 01 14:03:36 2009 +0200"
      },
      "message": "tracing: add irq tracepoint documentation\n\nDocument irqs for the newly created docbook.\n\n[ Impact: add documentation ]\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: akpm@linux-foundation.org\nCc: rostedt@goodmis.org\nCc: fweisbec@gmail.com\nCc: mathieu.desnoyers@polymtl.ca\nCc: wcohen@redhat.com\nLKML-Reference: \u003c73ff42be3420157667ec548e9b0e409c3cfad05f.1241107197.git.jbaron@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a118e4d1402f1349fe3d953493e4168a300a752d",
      "tree": "bd4c2fccee4528bf7d1536e33218516953904740",
      "parents": [
        "30e673b230f9d556eb81ef68a7b1a08c8b3b142c"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Tue Apr 28 03:04:53 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 29 14:06:03 2009 +0200"
      },
      "message": "tracing/filters: distinguish between signed and unsigned fields\n\nThe new filter comparison ops need to be able to distinguish between\nsigned and unsigned field types, so add an is_signed flag/param to the\nevent field struct/trace_define_fields().  Also define a simple macro,\nis_signed_type() to determine the signedness at compile time, used in the\ntrace macros.  If the is_signed_type() macro won\u0027t work with a specific\ntype, a new slightly modified version of TRACE_FIELD() called\nTRACE_FIELD_SIGN(), allows the signedness to be set explicitly.\n\n[ Impact: extend trace-filter code for new feature ]\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: fweisbec@gmail.com\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c1240905893.6416.120.camel@tropicana\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b8e65554d80b4c560d201362d0e8fa02109d89fd",
      "tree": "21ebf291cf1ac97533cac99619652cd21bbd04f2",
      "parents": [
        "160031b556e93590fa8635210d73d93c3d3853a9"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 24 11:50:39 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 24 11:50:39 2009 -0400"
      },
      "message": "tracing: remove deprecated TRACE_FORMAT\n\nThe TRACE_FORMAT macro has been deprecated by the TRACE_EVENT macro.\nThere are no more users. All new users must use the TRACE_EVENT macro.\n\n[ Impact: remove old functionality ]\n\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "160031b556e93590fa8635210d73d93c3d3853a9",
      "tree": "229523cb69b9e49ed66316a9123bc0a7093c65a4",
      "parents": [
        "39517091f88fae32b52254b561ced78da1eaf0a7"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 24 11:26:55 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 24 11:26:55 2009 -0400"
      },
      "message": "tracing/irq: convert irq traces to use TRACE_EVENT macro\n\nThe TRACE_FORMAT will soon be deprecated. This patch converts it to\nthe TRACE_EVENT macro.\n\nNote, this change should also speed up the tracing.\n\n[ Impact: remove a user of deprecated TRACE_FORMAT ]\n\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "39517091f88fae32b52254b561ced78da1eaf0a7",
      "tree": "c94aa122c2b126f2520ea59b346b0ec9ba57bc26",
      "parents": [
        "334d4169a6592d3fcd863bbe822a8f6985ffa9af"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 24 11:05:52 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 24 11:05:52 2009 -0400"
      },
      "message": "tracing/lockdep: convert lockdep to use TRACE_EVENT macro\n\nThe TRACE_FORMAT will soon be deprecated. This patch converts it to\nthe TRACE_EVENT macro.\n\nNote, this change should also speed up the tracing.\n\n[ Impact: remove a user of deprecated TRACE_FORMAT ]\n\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c2518c4366f087ebc10b3919cb2461bbe4f42d0c",
      "tree": "a62093cb5d040a871a33d235f0993dc4b7fe27b9",
      "parents": [
        "d7285c6b5c54397fdf112c2fb98ee43193173aa9"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Apr 23 23:26:18 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Apr 23 23:34:20 2009 -0400"
      },
      "message": "tracing: fix cut and paste macro error\n\nIn case a module uses the TRACE_EVENT macro for creating automated\nevents in ftrace, it may choose to use a different file name\nthan the defined system name, or choose to use a different path than\nthe default \"include/trace/events\" include path.\n\nIf this is done, then before including trace/define_trace.h the\nheader would define either \"TRACE_INCLUDE_FILE\" for the file\nname or \"TRACE_INCLUDE_PATH\" for the include path.\n\nIf it does not define these, then the define_trace.h defines them\ninstead. If define trace defines them, then define_trace.h should\nalso undefine them before exiting. To do this a macro is used\nto note this:\n\n #ifndef TRACE_INCLUDE_FILE\n # define TRACE_INCLUDE_FILE TRACE_SYSTEM\n # define UNDEF_TRACE_INCLUDE_FILE\n #endif\n\n[...]\n\n #ifdef UNDEF_TRACE_INCLUDE_FILE\n # undef TRACE_INCLUDE_FILE\n # undef UNDEF_TRACE_INCLUDE_FILE\n #endif\n\nThe UNDEF_TRACE_INCLUDE_FILE acts as a CPP variable to know to undef\nthe TRACE_INCLUDE_FILE before leaving define_trace.h.\n\nUnfortunately, due to cut and paste errors, the macros between\nFILE and PATH got mixed up.\n\n[ Impact: undef TRACE_INCLUDE_FILE and/or TRACE_INCLUDE_PATH when needed ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "6a74aa40907757ec98d8710ff66cd4cfe064e7d8",
      "tree": "804f0043f9aa684dd00d4a0ef4f950c2da4d6550",
      "parents": [
        "7e7ca9a22dbbc5c91763cd16923c7509918709b6"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Apr 22 00:41:09 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 22 12:30:49 2009 +0200"
      },
      "message": "tracing/events: protect __get_str()\n\nThe __get_str() macro is used in a code part then its content should be\nprotected with parenthesis.\n\n[ Impact: make macro definition more robust ]\n\nReported-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "7e7ca9a22dbbc5c91763cd16923c7509918709b6",
      "tree": "3d036f3cf4dc9c375b032e12afafc75bffcd17a8",
      "parents": [
        "9cbf117662e24c6d33245666804487f92c21b59d"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Apr 19 04:54:49 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 22 12:30:15 2009 +0200"
      },
      "message": "tracing/lock: provide lock_acquired event support for dynamic size string\n\nNow that we can support the dynamic sized string, make the lock tracing\nable to use it, making it safe against modules removal and consuming\nthe right amount of memory needed for each lock name\n\nChanges in v2:\nadapt to the __ending_string() updates and the opening_string() removal.\n\n[ Impact: protect lock tracer against module removal ]\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "9cbf117662e24c6d33245666804487f92c21b59d",
      "tree": "c4c7bed1ccb7a0a332abdc7cbf4620c98a0321cf",
      "parents": [
        "7a4f453b6d7379a7c380825949977c5a838aa012"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Apr 19 04:51:29 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 22 12:29:18 2009 +0200"
      },
      "message": "tracing/events: provide string with undefined size support\n\nThis patch provides the support for dynamic size strings on\nevent tracing.\n\nThe key concept is to use a structure with an ending char array field of\nundefined size and use such ability to allocate the minimal size on the\nring buffer to make one or more string entries fit inside, as opposite\nto a fixed length strings with upper bound.\n\nThe strings themselves are represented using fields which have an offset\nvalue from the beginning of the entry.\n\nThis patch provides three new macros:\n\n__string(item, src)\n\nThis one declares a string to the structure inside TP_STRUCT__entry.\nYou need to provide the name of the string field and the source that will\nbe copied inside.\nThis will also add the dynamic size of the string needed for the ring\nbuffer entry allocation.\nA stack allocated structure is used to temporarily store the offset\nof each strings, avoiding double calls to strlen() on each event\ninsertion.\n\n__get_str(field)\n\nThis one will give you a pointer to the string you have created. This\nis an abstract helper to resolve the absolute address given the field\nname which is a relative address from the beginning of the trace_structure.\n\n__assign_str(dst, src)\n\nUse this macro to automatically perform the string copy from src to\ndst. src must be a variable to assign and dst is the name of a __string\nfield.\n\nExample on how to use it:\n\nTRACE_EVENT(my_event,\n\tTP_PROTO(char *src1, char *src2),\n\n\tTP_ARGS(src1, src2),\n\tTP_STRUCT__entry(\n\t\t__string(str1, src1)\n\t\t__string(str2, src2)\n\t),\n\tTP_fast_assign(\n\t\t__assign_str(str1, src1);\n\t\t__assign_str(str2, src2);\n\t),\n\tTP_printk(\"%s %s\", __get_str(src1), __get_str(src2))\n)\n\nOf course you can mix-up any __field or __array inside this\nTRACE_EVENT. The position of the __string or __assign_str\ndoesn\u0027t matter.\n\nChanges in v2:\n\nAddress the suggestion of Steven Rostedt: drop the opening_string() macro\nand redefine __ending_string() to get the size of the string to be copied\ninstead of overwritting the whole ring buffer allocation.\n\nChanges in v3:\n\nAddress other suggestions of Steven Rostedt and Peter Zijlstra with\nsome changes: drop the __ending_string and the need to have only one\nstring field.\nUse offsets instead of absolute addresses.\n\n[ Impact: allow more compact memory usage for string tracing ]\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n"
    },
    {
      "commit": "7a4f453b6d7379a7c380825949977c5a838aa012",
      "tree": "9f5450c7a1abc865b998885affe964d4670a08bc",
      "parents": [
        "3554228d4289098a8fe5cfd87512ec32a19bbe5a"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Apr 22 16:53:34 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 22 11:36:38 2009 +0200"
      },
      "message": "tracing/events: make struct trace_entry-\u003etype to be int type\n\nstruct trace_entry-\u003etype is unsigned char, while trace event\u0027s id is\nint type, thus for a event with id \u003e\u003d 256, it\u0027s entry-\u003etype is cast\nto (id % 256), and then we can\u0027t see the trace output of this event.\n\n # insmod trace-events-sample.ko\n # echo foo_bar \u003e /mnt/tracing/set_event\n # cat /debug/tracing/events/trace-events-sample/foo_bar/id\n 256\n # cat /mnt/tracing/trace_pipe\n           \u003c...\u003e-3548  [001]   215.091142: Unknown type 0\n           \u003c...\u003e-3548  [001]   216.089207: Unknown type 0\n           \u003c...\u003e-3548  [001]   217.087271: Unknown type 0\n           \u003c...\u003e-3548  [001]   218.085332: Unknown type 0\n\n[ Impact: fix output for trace events with id \u003e\u003d 256 ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003c49EEDB0E.5070207@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b0afdc126d0515e76890f0a5f26b28501cfa298e",
      "tree": "55a03cfffb743583fe02c95a174fdc98a24dd6d7",
      "parents": [
        "ac1adc55fc71c7515caa2eb0e63e49b3d1c6a47c"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 17 13:02:22 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 17 16:20:16 2009 -0400"
      },
      "message": "tracing/events: enable code with EVENT_TRACING not EVENT_TRACER\n\nThe CONFIG_EVENT_TRACER is the way to turn on event tracing when no\nother tracing has been configured. All code to get enabled should\ndepend on CONFIG_EVENT_TRACING. That is what is enabled when TRACING\n(or CONFIG_EVENT_TRACER) is selected.\n\nThis patch enables the include/trace/ftrace.h file when\nCONFIG_EVENT_TRACING is enabled.\n\n[ Impact: fix warning in event tracer selftest ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "46de405f25f1d9fa73b657ffbb752aa0cc87a91d",
      "tree": "49dd4dfb629b113bbd1d8cf0717646c13831bf02",
      "parents": [
        "339ae5d3c3fc2025e3657637921495fd600027c7"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Fri Apr 17 10:53:43 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 17 18:26:42 2009 +0200"
      },
      "message": "tracing: Remove include/trace/kmem_event_types.h\n\nkmem_event_types.h is no longer necessary since tracepoint definitions\nare put into include/trace/events/kmem.h\n\n[ Impact: remove now-unused file. ]\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003c49E7EF37.2080205@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "76aa81118ddfbb3dc31533030cf3ec329dd067a6",
      "tree": "ab741782e757be5635413b5f1359cd0d520a22a4",
      "parents": [
        "9ea21c1ecdb35ecdcac5fd9d95f62a1f6a7ffec0"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Thu Apr 16 23:35:39 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 17 17:52:26 2009 +0200"
      },
      "message": "tracing: avoid warnings from zero-arg tracepoints\n\nTracepoints with no arguments can issue two warnings:\n\n\t\"field\" defined by not used\n\t\"ret\" is uninitialized in this function\n\nMark field as being OK to leave unused, and initialize ret.\n\n[ Impact: fix false positive compiler warnings. ]\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: mathieu.desnoyers@polymtl.ca\nLKML-Reference: \u003c1239950139-1119-5-git-send-email-jeremy@goop.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ad8d75fff811a6a230f7f43b05a6483099349533",
      "tree": "764f75c0785b29067b141719b6e8000f005da7fd",
      "parents": [
        "ecda8ae02a08ef065ff387f5cb2a2d4999da2408"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Apr 14 19:39:12 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 22:05:43 2009 -0400"
      },
      "message": "tracing/events: move trace point headers into include/trace/events\n\nImpact: clean up\n\nCreate a sub directory in include/trace called events to keep the\ntrace point headers in their own separate directory. Only headers that\ndeclare trace points should be defined in this directory.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ecda8ae02a08ef065ff387f5cb2a2d4999da2408",
      "tree": "d642186713a134e984455119665fb2ffb5f26b05",
      "parents": [
        "61f919a12fbdc3fd20f980a34a118d597198a392"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Apr 14 18:49:38 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 22:04:26 2009 -0400"
      },
      "message": "tracing/events: fix lockdep system name\n\nImpact: fix compile error of lockdep event tracer\n\nIngo Molnar pointed out that the system name for the lockdep tracer was \"lock\"\nwhich is used to include the event trace file name. It should be \"lockdep\"\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "6d723736e472f7a0cd5b62c84152fceead241328",
      "tree": "8df2f6c47ebdfdeb8979758c877a5abbd9c06aef",
      "parents": [
        "17c873ec280a03894bc718af817f7f24fa787ae1"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 10 14:53:50 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 12:58:03 2009 -0400"
      },
      "message": "tracing/events: add support for modules to TRACE_EVENT\n\nImpact: allow modules to add TRACE_EVENTS on load\n\nThis patch adds the final hooks to allow modules to use the TRACE_EVENT\nmacro. A notifier and a data structure are used to link the TRACE_EVENTs\ndefined in the module to connect them with the ftrace event tracing system.\n\nIt also adds the necessary automated clean ups to the trace events when a\nmodule is removed.\n\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f42c85e74faa422cf0bc747ed808681145448f88",
      "tree": "3775dc0a402f7da5247aa8ceb92ae89590038199",
      "parents": [
        "97f2025153499faa17267a0d4e18c7afaf73f39d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Apr 13 12:25:37 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 12:57:59 2009 -0400"
      },
      "message": "tracing/events: move the ftrace event tracing code to core\n\nThis patch moves the ftrace creation into include/trace/ftrace.h and\nsimplifies the work of developers in adding new tracepoints.\nJust the act of creating the trace points in include/trace and including\ndefine_trace.h will create the events in the debugfs/tracing/events\ndirectory.\n\nThis patch removes the need of include/trace/trace_events.h\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a8d154b009168337494fbf345671bab74d3e4b8b",
      "tree": "4097612e1a5cc8bf7658542f7d0f51b815113eaf",
      "parents": [
        "ea20d9293ce423a39717ed4375393129a2e701f9"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 10 09:36:00 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 12:57:28 2009 -0400"
      },
      "message": "tracing: create automated trace defines\n\nThis patch lowers the number of places a developer must modify to add\nnew tracepoints. The current method to add a new tracepoint\ninto an existing system is to write the trace point macro in the\ntrace header with one of the macros TRACE_EVENT, TRACE_FORMAT or\nDECLARE_TRACE, then they must add the same named item into the C file\nwith the macro DEFINE_TRACE(name) and then add the trace point.\n\nThis change cuts out the needing to add the DEFINE_TRACE(name).\nEvery file that uses the tracepoint must still include the trace/\u003ctype\u003e.h\nfile, but the one C file must also add a define before the including\nof that file.\n\n #define CREATE_TRACE_POINTS\n #include \u003ctrace/mytrace.h\u003e\n\nThis will cause the trace/mytrace.h file to also produce the C code\nnecessary to implement the trace point.\n\nNote, if more than one trace/\u003ctype\u003e.h is used to create the C code\nit is best to list them all together.\n\n #define CREATE_TRACE_POINTS\n #include \u003ctrace/foo.h\u003e\n #include \u003ctrace/bar.h\u003e\n #include \u003ctrace/fido.h\u003e\n\nThanks to Mathieu Desnoyers and Christoph Hellwig for coming up with\nthe cleaner solution of the define above the includes over my first\ndesign to have the C code include a \"special\" header.\n\nThis patch converts sched, irq and lockdep and skb to use this new\nmethod.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ea20d9293ce423a39717ed4375393129a2e701f9",
      "tree": "30cbfd532e6541c17eb69a63044cfe7bce6cf974",
      "parents": [
        "0a19e53c1514ad8e9c3cbab40c6c3f52c86f403d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 10 08:54:16 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 09:43:40 2009 -0400"
      },
      "message": "tracing: consolidate trace and trace_event headers\n\nImpact: clean up\n\nNeil Horman (et. al.) criticized the way the trace events were broken up\ninto two files. The reason for that was that ftrace needed to separate out\nthe declarations from where the #include \u003clinux/tracepoint.h\u003e was used.\nIt then dawned on me that the tracepoint.h header only needs to define the\nTRACE_EVENT macro if it is not already defined.\n\nThe solution is simply to test if TRACE_EVENT is defined, and if it is not\nthen the linux/tracepoint.h header can define it. This change consolidates\nall the \u003ctraces\u003e.h and \u003ctraces\u003e_event_types.h into the \u003ctraces\u003e.h file.\n\nReported-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nReported-by: Theodore Tso \u003ctytso@mit.edu\u003e\nReported-by: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Zhaolei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "fc182a4330fc22ea1b68fa3d5064dd85a73a4c4a",
      "tree": "5c3b329199b514fc4133b21928348c901e2c74a8",
      "parents": [
        "02af61bb50f5d5f0322dbe5ab2a0d75808d25c7b"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Fri Apr 10 14:27:38 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 12 15:22:56 2009 +0200"
      },
      "message": "tracing, kmemtrace: Make kmem tracepoints use TRACE_EVENT macro\n\nTRACE_EVENT is a more generic way to define tracepoints.\nDoing so adds these new capabilities to this tracepoint:\n\n  - zero-copy and per-cpu splice() tracing\n  - binary tracing without printf overhead\n  - structured logging records exposed under /debug/tracing/events\n  - trace events embedded in function tracer output and other plugins\n  - user-defined, per tracepoint filter expressions\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003c49DEE6DA.80600@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "02af61bb50f5d5f0322dbe5ab2a0d75808d25c7b",
      "tree": "fa087ed8a584d7b66016e6a1421e538369d52e5a",
      "parents": [
        "abd41443ac76d3e9c29a8c1d9e9a3312306cc55e"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Fri Apr 10 14:26:18 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 12 15:22:55 2009 +0200"
      },
      "message": "tracing, kmemtrace: Separate include/trace/kmemtrace.h to kmemtrace part and tracepoint part\n\nImpact: refactor code for future changes\n\nCurrent kmemtrace.h is used both as header file of kmemtrace and kmem\u0027s\ntracepoints definition.\n\nTracepoints\u0027 definition file may be used by other code, and should only have\ndefinition of tracepoint.\n\nWe can separate include/trace/kmemtrace.h into 2 files:\n\n  include/linux/kmemtrace.h: header file for kmemtrace\n  include/trace/kmem.h:      definition of kmem tracepoints\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003c49DEE68A.5040902@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5cb3d1d9d34ac04bcaa2034139345b2a5fea54c1",
      "tree": "efbdf02871dff1fd12fdcd1594529ce30add3d57",
      "parents": [
        "e71e99c294058a61b7a8b9bb6da2f745ac51aa4f"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Thu Apr 09 14:08:18 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 10 12:57:55 2009 +0200"
      },
      "message": "tracing, net, skb tracepoint: make skb tracepoint use the TRACE_EVENT() macro\n\nTRACE_EVENT is a more generic way to define a tracepoint.\nDoing so adds these new capabilities to this tracepoint:\n\n  - zero-copy and per-cpu splice() tracing\n  - binary tracing without printf overhead\n  - structured logging records exposed under /debug/tracing/events\n  - trace events embedded in function tracer output and other plugins\n  - user-defined, per tracepoint filter expressions\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: \"Steven Rostedt ;\" \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003c49DD90D2.5020604@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2062501ae6505dbc5bff3a792246c2661d114050",
      "tree": "59792987c9e9fd1ae657c2e4a5cdb14545523e24",
      "parents": [
        "1cad1252ed279ea59f3f8d3d3a5817eeb2f7a4d3"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Apr 06 01:49:33 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 10 12:50:56 2009 +0200"
      },
      "message": "tracing/lockdep: report the time waited for a lock\n\nWhile trying to optimize the new lock on reiserfs to replace\nthe bkl, I find the lock tracing very useful though it lacks\nsomething important for performance (and latency) instrumentation:\nthe time a task waits for a lock.\n\nThat\u0027s what this patch implements:\n\n  bash-4816  [000]   202.652815: lock_contended: lock_contended: \u0026sb-\u003es_type-\u003ei_mutex_key\n  bash-4816  [000]   202.652819: lock_acquired: \u0026rq-\u003elock (0.000 us)\n \u003c...\u003e-4787  [000]   202.652825: lock_acquired: \u0026rq-\u003elock (0.000 us)\n \u003c...\u003e-4787  [000]   202.652829: lock_acquired: \u0026rq-\u003elock (0.000 us)\n  bash-4816  [000]   202.652833: lock_acquired: \u0026sb-\u003es_type-\u003ei_mutex_key (16.005 us)\n\nAs shown above, the \"lock acquired\" field is followed by the time\nit has been waiting for the lock. Usually, a lock contended entry\nis followed by a near lock_acquired entry with a non-zero time waited.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1238975373-15739-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "47788c58e66c050982241d9a05eb690daceb05a9",
      "tree": "96b8658e36bad85d1e77345b7be1edb6fdb9e1d1",
      "parents": [
        "f876d346e3807647b1de411de6a86c44821896ca"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Apr 08 20:40:59 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 09 05:43:32 2009 +0200"
      },
      "message": "tracing/syscalls: use a dedicated file header\n\nImpact: fix build warnings and possibe compat misbehavior on IA64\n\nBuilding a kernel on ia64 might trigger these ugly build warnings:\n\nCC      arch/ia64/ia32/sys_ia32.o\nIn file included from arch/ia64/ia32/sys_ia32.c:55:\narch/ia64/ia32/ia32priv.h:290:1: warning: \"elf_check_arch\" redefined\nIn file included from include/linux/elf.h:7,\n                 from include/linux/module.h:14,\n                 from include/linux/ftrace.h:8,\n                 from include/linux/syscalls.h:68,\n                 from arch/ia64/ia32/sys_ia32.c:18:\narch/ia64/include/asm/elf.h:19:1: warning: this is the location of the previous definition\n[...]\n\nsys_ia32.c includes linux/syscalls.h which in turn includes linux/ftrace.h\nto import the syscalls tracing prototypes.\n\nBut including ftrace.h can pull too much things for a low level file,\nespecially on ia64 where the ia32 private headers conflict with higher\nlevel headers.\n\nNow we isolate the syscall tracing headers in their own lightweight file.\n\nReported-by: Tony Luck \u003ctony.luck@intel.com\u003e\nTested-by: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: \"Frank Ch. Eigler\" \u003cfche@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Michael Rubin \u003cmrubin@google.com\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: Michael Davidson \u003cmd@google.com\u003e\nLKML-Reference: \u003c20090408184058.GB6017@nowhere\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ca2b84cb3c4a0d4d2143b46ec072cdff5d1b3b87",
      "tree": "7163bac040f11c444b24cab53c4a784df73fa4f3",
      "parents": [
        "ac44021fccd8f1f2b267b004f23a2e8d7ef05f7b"
      ],
      "author": {
        "name": "Eduard - Gabriel Munteanu",
        "email": "eduard.munteanu@linux360.ro",
        "time": "Mon Mar 23 15:12:24 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 03 12:23:06 2009 +0200"
      },
      "message": "kmemtrace: use tracepoints\n\nkmemtrace now uses tracepoints instead of markers. We no longer need to\nuse format specifiers to pass arguments.\n\nSigned-off-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\n[ folded: Use the new TP_PROTO and TP_ARGS to fix the build.     ]\n[ folded: fix build when CONFIG_KMEMTRACE is disabled.           ]\n[ folded: define tracepoints when CONFIG_TRACEPOINTS is enabled. ]\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nLKML-Reference: \u003cae61c0f37156db8ec8dc0d5778018edde60a92e3.1237813499.git.eduard.munteanu@linux360.ro\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "645dae969c3b8651c5bc7c54a1835ec03820f85f",
      "tree": "bcc9a1fb2c9aa62696980209d751f8493fdefb12",
      "parents": [
        "a095bdbb136f7bed96b7adf5aa1dd27bb2f839bf"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Thu Mar 19 15:46:17 2009 +1100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 02 00:50:30 2009 +0200"
      },
      "message": "tracing, net: fix net tree and tracing tree merge interaction\n\nToday\u0027s linux-next build (powerpc ppc64_defconfig) failed like this:\n\n In file included from net/core/skbuff.c:69:\n include/trace/skb.h:4: error: expected \u0027)\u0027 before \u0027(\u0027 token\n include/trace/skb.h:4: error: expected \u0027)\u0027 before \u0027(\u0027 token\n [...]\n\nCaused by commit 2939b0469d04ba9ac791aca9a81625d7eb50662b (\"tracing:\nreplace TP\u003cvar\u003e with TP_\u003cvar\u003e\") from the tracing tree interacting with\ncommit 4893d39e865b2897bf9fcd329697d37032d853a1 (\"Network Drop Monitor:\nAdd trace declaration for skb frees\") from the net tree.\n\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8302294f43250dc337108c51882a6007f2b1e2e0",
      "tree": "85acd4440799c46a372df9cad170fa0c21e59096",
      "parents": [
        "4fe70410d9a219dabb47328effccae7e7f2a6e26",
        "2e572895bf3203e881356a4039ab0fa428ed2639"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 01 21:54:19 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 02 00:49:02 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/core-v2\u0027 into tracing-for-linus\n\nConflicts:\n\tinclude/linux/slub_def.h\n\tlib/Kconfig.debug\n\tmm/slob.c\n\tmm/slub.c\n"
    },
    {
      "commit": "5393f3162d3a85317e1e22c33539905fa5258e5f",
      "tree": "451945b944458996f21aa4cc62aa3e6c2a5d0e49",
      "parents": [
        "35c7f6de7339f40a591a8aeccacdc429b1953674"
      ],
      "author": {
        "name": "Josh Stone",
        "email": "jistone@redhat.com",
        "time": "Tue Mar 24 09:44:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 24 14:24:10 2009 -0700"
      },
      "message": "net: Add dependent headers to trace/skb.h\n\nThe tracing header needs to include definitions for the macros used and\nthe types referenced.  This lets automated tracing tools like SystemTap\nmake use of the tracepoint without any specific knowledge of its\nmeaning (leaving that to the user).\n\nSigned-off-by: Josh Stone \u003cjistone@redhat.com\u003e\nCC: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4893d39e865b2897bf9fcd329697d37032d853a1",
      "tree": "04ba3529c2142651c6974a13f0f6c5654059b471",
      "parents": [
        "26ccfc37da21e6f02d5e805c38ca7551c16b2fe0"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Wed Mar 11 09:48:26 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 13 12:09:27 2009 -0700"
      },
      "message": "Network Drop Monitor: Add trace declaration for skb frees\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\n\n include/trace/skb.h   |    8 ++++++++\n net/core/Makefile     |    2 ++\n net/core/net-traces.c |   29 +++++++++++++++++++++++++++++\n 3 files changed, 39 insertions(+)\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "39842323ceb368d2ea36ab7696aedbe296e13b61",
      "tree": "6050a0e282eaaf500f3809b1e53256b24b570d92",
      "parents": [
        "5d592b44b29a1d73e13d5c9e3426eed843bdc359"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Thu Mar 12 14:36:03 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Mar 12 21:20:58 2009 -0400"
      },
      "message": "tracing: tracepoints for softirq entry/exit - tracepoints\n\nIntroduce softirq entry/exit tracepoints. These are useful for\naugmenting existing tracers, and to figure out softirq frequencies and\ntimings.\n\n[\n  s/irq_softirq_/softirq_/ for trace point names and\n  Fixed printf format in TRACE_FORMAT macro\n   - Steven Rostedt\n]\n\nLKML-Reference: \u003c20090312183603.GC3352@redhat.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "30a8fecc2d34f086df34fe2f2b926f080e002600",
      "tree": "a6959a40a6a3065b61ddcf4954861dfd8892a843",
      "parents": [
        "2314c4ae1461c9e8b26cf8b9a851f280bc5769e1"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 12:41:38 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 12:41:38 2009 -0400"
      },
      "message": "tracing: flip the TP_printk and TP_fast_assign in the TRACE_EVENT macro\n\nImpact: clean up\n\nIn trying to stay consistant with the C style format in the TRACE_EVENT\nmacro, it makes more sense to do the printk after the assigning of\nthe variables.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "157587d7ac555458da9f682e3250135e468470a6",
      "tree": "81033336672eb821f3833a1667bedfc646a3a6f5",
      "parents": [
        "d6e2ca4c05be6a5ab16030a9f227301bd6acc9f0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 00:15:34 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 00:35:12 2009 -0400"
      },
      "message": "tracing: remove obsolete TRACE_EVENT_FORMAT macro\n\nImpact: clean up\n\nThe TRACE_EVENT_FORMAT macro is no longer used by trace points\nand only the DECLARE_TRACE, TRACE_FORMAT or TRACE_EVENT macros should\nbe used by them. Although the TRACE_EVENT_FORMAT macro is still used\nby the internal tracing utility, it should not be used in core\nkernel code.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "d6e2ca4c05be6a5ab16030a9f227301bd6acc9f0",
      "tree": "ee5521921ab200ccba02d8e603cda4a9afc43776",
      "parents": [
        "12b5fdb8bbb2d2fc31746d7b672c12fd8897aa08"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 09 23:23:30 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 00:35:11 2009 -0400"
      },
      "message": "tracing: convert irq trace points to new macros\n\nImpact: enhancement\n\nConverted the two irq trace point macros. The entry macro copies\nthe name of the irq handler, thus it is better to simply use the\nTRACE_FORMAT macro which uses the trace_printk.\n\nThe return of the handler does not need to record the name, thus\nthe faster C style handler is more approriate.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "12b5fdb8bbb2d2fc31746d7b672c12fd8897aa08",
      "tree": "e3fa71cd3b5613d105b1a081cec23b2a51842867",
      "parents": [
        "da4d03020c2af32f73e8bfbab0a66620d85bb9bb"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 09 23:03:44 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 00:35:09 2009 -0400"
      },
      "message": "tracing: convert the sched trace points to the TRACE_EVENT macros\n\nImpact: enhancement\n\nThis patch converts the rest of the sched trace points to use the new\nmore powerful TRACE_EVENT macro.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "da4d03020c2af32f73e8bfbab0a66620d85bb9bb",
      "tree": "3ee6d7d69754df7910454315a6011c14d8664d01",
      "parents": [
        "9cc26a261d43e5898287a1f5808132f8f05ceb1c"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 09 17:14:30 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 00:35:07 2009 -0400"
      },
      "message": "tracing: new format for specialized trace points\n\nImpact: clean up and enhancement\n\nThe TRACE_EVENT_FORMAT macro looks quite ugly and is limited in its\nability to save data as well as to print the record out. Working with\nIngo Molnar, we came up with a new format that is much more pleasing to\nthe eye of C developers. This new macro is more C style than the old\nmacro, and is more obvious to what it does.\n\nHere\u0027s the example. The only updated macro in this patch is the\nsched_switch trace point.\n\nThe old method looked like this:\n\n TRACE_EVENT_FORMAT(sched_switch,\n        TP_PROTO(struct rq *rq, struct task_struct *prev,\n                struct task_struct *next),\n        TP_ARGS(rq, prev, next),\n        TP_FMT(\"task %s:%d \u003d\u003d\u003e %s:%d\",\n              prev-\u003ecomm, prev-\u003epid, next-\u003ecomm, next-\u003epid),\n        TRACE_STRUCT(\n                TRACE_FIELD(pid_t, prev_pid, prev-\u003epid)\n                TRACE_FIELD(int, prev_prio, prev-\u003eprio)\n                TRACE_FIELD_SPECIAL(char next_comm[TASK_COMM_LEN],\n                                    next_comm,\n                                    TP_CMD(memcpy(TRACE_ENTRY-\u003enext_comm,\n                                                 next-\u003ecomm,\n                                                 TASK_COMM_LEN)))\n                TRACE_FIELD(pid_t, next_pid, next-\u003epid)\n                TRACE_FIELD(int, next_prio, next-\u003eprio)\n        ),\n        TP_RAW_FMT(\"prev %d:%d \u003d\u003d\u003e next %s:%d:%d\")\n        );\n\nThe above method is hard to read and requires two format fields.\n\nThe new method:\n\n /*\n  * Tracepoint for task switches, performed by the scheduler:\n  *\n  * (NOTE: the \u0027rq\u0027 argument is not used by generic trace events,\n  *        but used by the latency tracer plugin. )\n  */\n TRACE_EVENT(sched_switch,\n\n\tTP_PROTO(struct rq *rq, struct task_struct *prev,\n\t\t struct task_struct *next),\n\n\tTP_ARGS(rq, prev, next),\n\n\tTP_STRUCT__entry(\n\t\t__array(\tchar,\tprev_comm,\tTASK_COMM_LEN\t)\n\t\t__field(\tpid_t,\tprev_pid\t\t\t)\n\t\t__field(\tint,\tprev_prio\t\t\t)\n\t\t__array(\tchar,\tnext_comm,\tTASK_COMM_LEN\t)\n\t\t__field(\tpid_t,\tnext_pid\t\t\t)\n\t\t__field(\tint,\tnext_prio\t\t\t)\n\t),\n\n\tTP_printk(\"task %s:%d [%d] \u003d\u003d\u003e %s:%d [%d]\",\n\t\t__entry-\u003eprev_comm, __entry-\u003eprev_pid, __entry-\u003eprev_prio,\n\t\t__entry-\u003enext_comm, __entry-\u003enext_pid, __entry-\u003enext_prio),\n\n\tTP_fast_assign(\n\t\tmemcpy(__entry-\u003enext_comm, next-\u003ecomm, TASK_COMM_LEN);\n\t\t__entry-\u003eprev_pid\t\u003d prev-\u003epid;\n\t\t__entry-\u003eprev_prio\t\u003d prev-\u003eprio;\n\t\tmemcpy(__entry-\u003eprev_comm, prev-\u003ecomm, TASK_COMM_LEN);\n\t\t__entry-\u003enext_pid\t\u003d next-\u003epid;\n\t\t__entry-\u003enext_prio\t\u003d next-\u003eprio;\n\t)\n );\n\nThis macro is called TRACE_EVENT, it is broken up into 5 parts:\n\n TP_PROTO:        the proto type of the trace point\n TP_ARGS:         the arguments of the trace point\n TP_STRUCT_entry: the structure layout of the entry in the ring buffer\n TP_printk:       the printk format\n TP_fast_assign:  the method used to write the entry into the ring buffer\n\nThe structure is the definition of how the event will be saved in the\nring buffer. The printk is used by the internal tracing in case of\nan oops, and the kernel needs to print out the format of the record\nto the console. This the TP_printk gives a means to show the records\nin a human readable format. It is also used to print out the data\nfrom the trace file.\n\nThe TP_fast_assign is executed directly. It is basically like a C function,\nwhere the __entry is the handle to the record.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "2939b0469d04ba9ac791aca9a81625d7eb50662b",
      "tree": "573f10c39f34c670fdc6832415642738c5afb3f9",
      "parents": [
        "156b5f172a64103bcb13b6d26288388b9019caa3"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 09 15:47:18 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Mar 10 00:35:04 2009 -0400"
      },
      "message": "tracing: replace TP\u003cvar\u003e with TP_\u003cvar\u003e\n\nImpact: clean up\n\nThe macros TPPROTO, TPARGS, TPFMT, TPRAWFMT, and TPCMD all look a bit\nugly. This patch adds an underscore to their names.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "af438c0f114b6f731b923b5c07150f6159471502",
      "tree": "640002ad0a9d59037edb85d4424dcd3461c38fe8",
      "parents": [
        "10dd3ebe213c31bff14b4dae3c5d32a76b1fad7c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 12:47:08 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 12:47:08 2009 +0100"
      },
      "message": "tracing, power-trace: make it build even if the power-tracer is turned off\n\nImpact: build fix\n\nThe \u0027struct power_trace\u0027 definition is needed (for the event tracer) even if\nthe power-tracer plugin is turned off in the .config.\n\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nLKML-Reference: \u003c20090306104106.GF31042@elte.hu\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "efed792d6738964f399a508ef9e831cd60fa4657",
      "tree": "b4b5e472bafb3d5d0d8ea26680e1d8cc87365c30",
      "parents": [
        "28b1bd1cbc33cae95a309691d814399a69cf3070"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Wed Mar 04 12:32:55 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 04 18:49:58 2009 +0100"
      },
      "message": "tracing: add lockdep tracepoints for lock acquire/release\n\nAugment the traces with lock names when lockdep is available:\n\n 1)               |  down_read_trylock() {\n 1)               |    _spin_lock_irqsave() {\n 1)               |      /* lock_acquire: \u0026sem-\u003ewait_lock */\n 1)   4.201 us    |    }\n 1)               |    _spin_unlock_irqrestore() {\n 1)               |      /* lock_release: \u0026sem-\u003ewait_lock */\n 1)   3.523 us    |    }\n 1)               |  /* lock_acquire: try read \u0026mm-\u003emmap_sem */\n 1) + 13.386 us   |  }\n 1)   1.635 us    |  find_vma();\n 1)               |  handle_mm_fault() {\n 1)               |    __do_fault() {\n 1)               |      filemap_fault() {\n 1)               |        find_lock_page() {\n 1)               |          find_get_page() {\n 1)               |            /* lock_acquire: read rcu_read_lock */\n 1)               |            /* lock_release: rcu_read_lock */\n 1)   5.697 us    |          }\n 1)   8.158 us    |        }\n 1) + 11.079 us   |      }\n 1)               |      _spin_lock() {\n 1)               |        /* lock_acquire: __pte_lockptr(page) */\n 1)   3.949 us    |      }\n 1)   1.460 us    |      page_add_file_rmap();\n 1)               |      _spin_unlock() {\n 1)               |        /* lock_release: __pte_lockptr(page) */\n 1)   3.115 us    |      }\n 1)               |      unlock_page() {\n 1)   1.421 us    |        page_waitqueue();\n 1)   1.220 us    |        __wake_up_bit();\n 1)   6.519 us    |      }\n 1) + 34.328 us   |    }\n 1) + 37.452 us   |  }\n 1)               |  up_read() {\n 1)               |  /* lock_release: \u0026mm-\u003emmap_sem */\n 1)               |    _spin_lock_irqsave() {\n 1)               |      /* lock_acquire: \u0026sem-\u003ewait_lock */\n 1)   3.865 us    |    }\n 1)               |    _spin_unlock_irqrestore() {\n 1)               |      /* lock_release: \u0026sem-\u003ewait_lock */\n 1)   8.562 us    |    }\n 1) + 17.370 us   |  }\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \u003d?ISO-8859-1?Q?T\u003dF6r\u003dF6k?\u003d Edwin \u003cedwintorok@gmail.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1236166375.5330.7209.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d20e3b03842bfeb9d21817ff19054c277cc3eac0",
      "tree": "5de7ef8a95f9391a264df358336842c9301f3868",
      "parents": [
        "f2034f1e1adaac6713a6d48b5a2d4f3aa3e63ccb"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 02 10:53:15 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 02 10:53:15 2009 -0500"
      },
      "message": "tracing: add TRACE_FIELD_SPECIAL to record complex entries\n\nTom Zanussi pointed out that the simple TRACE_FIELD was not enough to\nrecord trace data that required memcpy. This patch addresses this issue\nby adding a TRACE_FIELD_SPECIAL. The format is similar to TRACE_FIELD\nbut looks like so:\n\n  TRACE_FIELD_SPECIAL(type_item, item, cmd)\n\nWhat TRACE_FIELD gave was:\n\n  TRACE_FIELD(type, item, assign)\n\nThe TRACE_FIELD would be used in declaring a structure:\n\n  struct {\n\ttype\titem;\n  };\n\nAnd later assign it via:\n\n  entry-\u003eitem \u003d assign;\n\nWhat TRACE_FIELD_SPECIAL gives us is:\n\nIn the declaration of the structure:\n\n  struct {\n\ttype_item;\n  };\n\nAnd the assignment:\n\n  cmd;\n\nThis change log will explain the one example used in the patch:\n\n TRACE_EVENT_FORMAT(sched_switch,\n\tTPPROTO(struct rq *rq, struct task_struct *prev,\n\t\tstruct task_struct *next),\n\tTPARGS(rq, prev, next),\n\tTPFMT(\"task %s:%d \u003d\u003d\u003e %s:%d\",\n\t      prev-\u003ecomm, prev-\u003epid, next-\u003ecomm, next-\u003epid),\n\tTRACE_STRUCT(\n\t\tTRACE_FIELD(pid_t, prev_pid, prev-\u003epid)\n\t\tTRACE_FIELD(int, prev_prio, prev-\u003eprio)\n\t\tTRACE_FIELD_SPECIAL(char next_comm[TASK_COMM_LEN],\n\t\t\t\t    next_comm,\n\t\t\t\t    TPCMD(memcpy(TRACE_ENTRY-\u003enext_comm,\n\t\t\t\t\t\t next-\u003ecomm,\n\t\t\t\t\t\t TASK_COMM_LEN)))\n\t\tTRACE_FIELD(pid_t, next_pid, next-\u003epid)\n\t\tTRACE_FIELD(int, next_prio, next-\u003eprio)\n\t),\n\tTPRAWFMT(\"prev %d:%d \u003d\u003d\u003e next %s:%d:%d\")\n\t);\n\n The struct will be create as:\n\n  struct {\n\tpid_t\t\tprev_pid;\n\tint\t\tprev_prio;\n\tchar next_comm[TASK_COMM_LEN];\n\tpid_t\t\tnext_pid;\n\tint\t\tnext_prio;\n  };\n\nNote the TRACE_ENTRY in the cmd part of TRACE_SPECIAL. TRACE_ENTRY will\nbe set by the tracer to point to the structure inside the trace buffer.\n\n  entry-\u003eprev_pid\t\u003d prev-\u003epid;\n  entry-\u003eprev_prio\t\u003d prev-\u003eprio;\n  memcpy(entry-\u003enext_comm, next-\u003ecomm, TASK_COMM_LEN);\n  entry-\u003enext_pid\t\u003d next-\u003epid;\n  entry-\u003enext_prio\t\u003d next-\u003eprio\n\nReported-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "f2034f1e1adaac6713a6d48b5a2d4f3aa3e63ccb",
      "tree": "8bedd2378076b3ec4e5ba5085e749349db2034c1",
      "parents": [
        "629928041c53771f9902753d50fef6b35f36d33d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 28 02:54:39 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 28 04:04:14 2009 -0500"
      },
      "message": "tracing: create the C style tracing for the irq subsystem\n\nThis patch utilizes the TRACE_EVENT_FORMAT macro to enable the C style\nfaster tracing for the irq subsystem trace points.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    }
  ],
  "next": "629928041c53771f9902753d50fef6b35f36d33d"
}
