)]}'
{
  "log": [
    {
      "commit": "eb594e45f6979cd10b18d87f7b3f02119e00a108",
      "tree": "eb27cea51205ad527a0b1582c9b02d434f7129bc",
      "parents": [
        "0cfe82451dfa3ebf4e69158f2eb450f2fbb6b715"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 27 17:36:06 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 28 02:58:50 2009 -0500"
      },
      "message": "tracing: move trace point formats to files in include/trace directory\n\nImpact: clean up\n\nTo further facilitate the ease of adding trace points for developers, this\npatch creates include/trace/trace_events.h and\ninclude/trace/trace_event_types.h.\n\nThe former file will hold the trace/\u003ctype\u003e.h files and the latter will hold\nthe trace/\u003ctype\u003e_event_types.h files.\n\nTo create new tracepoints and to have them automatically\nappear in the event tracer, a developer makes the trace/\u003ctype\u003e.h file\nwhich includes \u003clinux/tracepoint.h\u003e and the trace/\u003ctype\u003e_event_types.h file.\n\nThe trace/\u003ctype\u003e_event_types.h file will hold the TRACE_FORMAT\nmacros.\n\nThen add the trace/\u003ctype\u003e.h file to trace/trace_events.h,\nand add the trace/\u003ctype\u003e_event_types.h to the trace_event_types.h file.\n\nNo need to modify files elsewhere.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "0cfe82451dfa3ebf4e69158f2eb450f2fbb6b715",
      "tree": "fc2db4892024f1d896f8ea0de3c4903a1c6543da",
      "parents": [
        "5c6a3ae1b4beebb56e2916b84f1208d96a9e32ff"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 27 10:51:10 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 27 10:51:10 2009 -0500"
      },
      "message": "tracing: replace kzalloc with kcalloc\n\nImpact: clean up\n\nkcalloc is a better approach to allocate a NULL array.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "5c6a3ae1b4beebb56e2916b84f1208d96a9e32ff",
      "tree": "6267a70386ce9e97e0034eea3754ea24429e971c",
      "parents": [
        "85a2f9b46f8cd8aaa11c64c715e1ea3ec27ec486"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 27 00:22:21 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 27 00:22:21 2009 -0500"
      },
      "message": "tracing: use newline separator for trace options list\n\nImpact: clean up\n\nInstead of listing the trace options like:\n\n # cat /debug/tracing/trace_options\nprint-parent nosym-offset nosym-addr noverbose noraw nohex nobin noblock nostacktrace nosched-tree ftrace_printk noftrace_preempt nobranch annotate nouserstacktrace nosym-userobj\n\nWe now list them like:\n\n # cat /debug/tracing/trace_options\nprint-parent\nnosym-offset\nnosym-addr\nnoverbose\nnoraw\nnohex\nnobin\nnoblock\nnostacktrace\nnosched-tree\nftrace_printk\nnoftrace_preempt\nnobranch\nannotate\nnouserstacktrace\nnosym-userobj\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "85a2f9b46f8cd8aaa11c64c715e1ea3ec27ec486",
      "tree": "76079c21b3bb5763c19eb617f9e29139789cc903",
      "parents": [
        "d8e83d26b5ab3b31ee0ff6d093a2627707a1e221"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 27 00:12:38 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 27 00:12:38 2009 -0500"
      },
      "message": "tracing: use pointer error returns for __tracing_open\n\nImpact: fix compile warning and clean up\n\nWhen I first wrote __tracing_open, instead of passing the error\ncode via the ERR_PTR macros, I lazily used a separate parameter\nto hold the return for errors.\n\nWhen Frederic Weisbecker updated that function, he used the Linux\nkernel ERR_PTR for the returns. This caused the parameter return\nto possibly not be initialized on error. gcc correctly pointed this\nout with a warning.\n\nThis patch converts the entire function to use the Linux kernel\nERR_PTR macro methods.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "d8e83d26b5ab3b31ee0ff6d093a2627707a1e221",
      "tree": "a8a24753ca24db4f3dd9bb887962e4cdcffac314",
      "parents": [
        "577b785f55168d5acb3d123ba41bfe8d7981e044"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 26 23:55:58 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 26 23:55:58 2009 -0500"
      },
      "message": "tracing: add protection around open use of current_tracer\n\nImpact: fix to possible race conditions\n\nThere\u0027s some uses of current_tracer that is not protected by the\ntrace_types_lock. There is a small chance that a sysadmin changes\nthe tracer while the current_tracer is being referenced.\n\nIf the race is hit, it is unlikely to cause any harm since the\ntracers are constant and are not freed. But some strang side\neffects may occur.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "577b785f55168d5acb3d123ba41bfe8d7981e044",
      "tree": "6ae99a6f38fffda2c2b678a55f329d782337afbc",
      "parents": [
        "a8259075074fb09c230b4cd2c8d3ee3c49d6ecd1"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 26 23:43:05 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 26 23:43:05 2009 -0500"
      },
      "message": "tracing: add tracer dependent options to options directory\n\nThis patch adds the tracer dependent options dynamically to the\noptions directory when the tracer is activated. These options are\nremoved when the tracer is deactivated.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "a8259075074fb09c230b4cd2c8d3ee3c49d6ecd1",
      "tree": "edd6a6ab5f0365e9f93f7e992e29ced3136eaaf9",
      "parents": [
        "5d0859cef29167d45dc6cf89d19712145e6005d6"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 26 22:19:12 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 26 22:22:46 2009 -0500"
      },
      "message": "tracing: add options directory and core option files\n\nThis patch creates an options directory in the debugfs, that contains\nthe available tracing options. These files contain 1 or 0, where 1\nis the option is enabled and 0 it is disabled.\n\nSimply echoing in 1 will enable the option and 0 will disable it.\nThis patch only contains the core options, not the tracer options.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "5d0859cef29167d45dc6cf89d19712145e6005d6",
      "tree": "1fe3be14cc773f4df5606a9993930cc43889a169",
      "parents": [
        "14131f2f98ac350ee9e73faed916d2238a8b6a0d",
        "83ce400928680a6c8123d492684b27857f5a2d95"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 21:21:59 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 21:21:59 2009 +0100"
      },
      "message": "Merge branch \u0027sched/clock\u0027 into tracing/ftrace\n\nConflicts:\n\tkernel/sched_clock.c\n"
    },
    {
      "commit": "b342501cd31e5546d0c9ca8ceff5ded1832f9e5b",
      "tree": "3cd5778565a45a74e8ad0640093927a77d4d625e",
      "parents": [
        "694593e3374a67d95ece6a275a1f181644c2c4d8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 20:20:29 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 21:20:22 2009 +0100"
      },
      "message": "sched: allow architectures to specify sched_clock_stable\n\nAllow CONFIG_HAVE_UNSTABLE_SCHED_CLOCK architectures to still specify\nthat their sched_clock() implementation is reliable.\n\nThis will be used by x86 to switch on a faster sched_clock_cpu()\nimplementation on certain CPU types.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "14131f2f98ac350ee9e73faed916d2238a8b6a0d",
      "tree": "bf490d104276142e914f1245bbc9f44cb0d2bc9b",
      "parents": [
        "6409c4da289d6905f7ae2bd0630438368439bda2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 18:47:11 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 18:44:06 2009 +0100"
      },
      "message": "tracing: implement trace_clock_*() APIs\n\nImpact: implement new tracing timestamp APIs\n\nAdd three trace clock variants, with differing scalability/precision\ntradeoffs:\n\n -   local: CPU-local trace clock\n -  medium: scalable global clock with some jitter\n -  global: globally monotonic, serialized clock\n\nMake the ring-buffer use the local trace clock internally.\n\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6409c4da289d6905f7ae2bd0630438368439bda2",
      "tree": "a89ab72b160acabe7e83200f73ba3a2cb3b2a0be",
      "parents": [
        "af39241b90a345556b8884adff87096afe71b050"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 12 21:21:14 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 18:44:05 2009 +0100"
      },
      "message": "sched: sched_clock() improvement: use in_nmi()\n\nmake sure we dont execute more complex sched_clock() code in NMI context.\n\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "af39241b90a345556b8884adff87096afe71b050",
      "tree": "a913e3f15b1fb91555b5cb5899270274ce4c2c46",
      "parents": [
        "8656e7a2fa6afcd8682990f804a2a9674568738f"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Thu Feb 26 10:11:05 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 18:43:50 2009 +0100"
      },
      "message": "tracing, genirq: add irq enter and exit trace events\n\nImpact: add new tracepoints\n\nAdd them to the generic IRQ code, that way every architecture\ngets these new tracepoints, not just x86.\n\nUsing Steve\u0027s new \u0027TRACE_FORMAT\u0027, I can get function graph\ntrace as follows using the original two IRQ tracepoints:\n\n 3)               |    handle_IRQ_event() {\n 3)               |    /* (irq_handler_entry) irq\u003d28 handler\u003deth0 */\n 3)               |    e1000_intr_msi() {\n 3)   2.460 us    |      __napi_schedule();\n 3)   9.416 us    |    }\n 3)               |    /* (irq_handler_exit) irq\u003d28 handler\u003deth0 return\u003dhandled */\n 3) + 22.935 us   |  }\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Mathieu Desnoyers \u003ccompudj@krystal.dyndns.org\u003e\nCc: \"Frank Ch. Eigler\" \u003cfche@redhat.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8656e7a2fa6afcd8682990f804a2a9674568738f",
      "tree": "4577aacda59cec3e71bc0cd97c0f18c823b5743e",
      "parents": [
        "f4abfb8d0da70e436013e5799338357e1e6a0832"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Feb 26 00:41:38 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 14:04:08 2009 +0100"
      },
      "message": "tracing/core: make the per cpu trace files in per cpu directories\n\nImpact: restructure the VFS layout of per CPU trace buffers\n\nThe per cpu trace files are all in a single directory:\n/debug/tracing/per_cpu. In case of a large number of cpu, the\ncontent of this directory becomes messy so we create now one\ndirectory per cpu inside /debug/tracing/per_cpu which contain\neach their own trace_pipe and trace files.\n\nIe:\n\n /debug/tracing$ ls -R per_cpu\n per_cpu:\n cpu0  cpu1\n\n per_cpu/cpu0:\n trace  trace_pipe\n\n per_cpu/cpu1:\n trace  trace_pipe\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f4abfb8d0da70e436013e5799338357e1e6a0832",
      "tree": "55f087b8e29f64694de84afa09563ad2c0acdd42",
      "parents": [
        "e36b1e136aa8f8c42fa6b96848c9c6bcaf2c269c",
        "3cdfdf91fcc77cfc82592e2b5c2ab35abe819c41"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 03:48:44 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 03:48:44 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of ssh://master.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "e36b1e136aa8f8c42fa6b96848c9c6bcaf2c269c",
      "tree": "d591a09c68a4b94f25f59d274fd8aea7ac476393",
      "parents": [
        "d7350c3f45694104e820041969c8185c5f99e57c",
        "2d542cf34264ac92e9e7ac55c0b096b066d569d2",
        "694593e3374a67d95ece6a275a1f181644c2c4d8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 03:47:27 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 03:47:27 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027, \u0027tracing/hw-branch-tracing\u0027 and \u0027linus\u0027 into tracing/core\n"
    },
    {
      "commit": "eef62a6826b8ab530cefff5aa55c1661a209c803",
      "tree": "f24c7f08b9a6ed443c09f26509cf2cf26fb8a19c",
      "parents": [
        "d7350c3f45694104e820041969c8185c5f99e57c"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 25 15:49:52 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 25 21:44:22 2009 -0500"
      },
      "message": "tracing: rename DEFINE_TRACE_FMT to just TRACE_FORMAT\n\nThere\u0027s been a bit confusion to whether DEFINE/DECLARE_TRACE_FMT should\nbe a DEFINE or a DECLARE. Ingo Molnar suggested simply calling it\nTRACE_FORMAT.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "d7350c3f45694104e820041969c8185c5f99e57c",
      "tree": "7aaed9e59f6d33c82e0b62c21f9d1bda9f094b4e",
      "parents": [
        "b04cc6b1f6398b0e0b60d37e27ce51b4899672ec"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Feb 25 06:13:16 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 25 13:40:58 2009 +0100"
      },
      "message": "tracing/core: make the read callbacks reentrants\n\nNow that several per-cpu files can be read or spliced at the\nsame, we want the read/splice callbacks for tracing files to be\nreentrants.\n\nUntil now, a single global mutex (trace_types_lock) serialized\nthe access to tracing_read_pipe(), tracing_splice_read_pipe(),\nand the seq helpers.\n\nIe: it means that if a user tries to read trace_pipe0 and\ntrace_pipe1 at the same time, the access to the function\ntracing_read_pipe() is contended and one reader must wait for\nthe other to finish its read call.\n\nThe trace_type_lock mutex is mostly here to serialize the access\nto the global current tracer (current_trace), which can be\nchanged concurrently. Although the iter struct keeps a private\npointer to this tracer, its callbacks can be changed by another\nfunction.\n\nThe method used here is to not keep anymore private reference to\nthe tracer inside the iterator but to make a copy of it inside\nthe iterator. Then it checks on subsequents read calls if the\ntracer has changed. This is not costly because the current\ntracer is not expected to be changed often, so we use a branch\nprediction for that.\n\nMoreover, we add a private mutex to the iterator (there is one\niterator per file descriptor) to serialize the accesses in case\nof multiple consumers per file descriptor (which would be a\nsilly idea from the user). Note that this is not to protect the\nring buffer, since the ring buffer already serializes the\nreaders accesses. This is to prevent from traces weirdness in\ncase of concurrent consumers. But these mutexes can be dropped\nanyway, that would not result in any crash. Just tell me what\nyou think about it.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b04cc6b1f6398b0e0b60d37e27ce51b4899672ec",
      "tree": "61d5bd59b364913f5a124d25925b908c5deaf871",
      "parents": [
        "2b1b858f690d6369a59ad241335eeedec6eb0c8c"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Feb 25 03:22:28 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 25 13:40:58 2009 +0100"
      },
      "message": "tracing/core: introduce per cpu tracing files\n\nImpact: split up tracing output per cpu\n\nCurrently, on the tracing debugfs directory, three files are\navailable to the user to let him extracting the trace output:\n\n- trace is an iterator through the ring-buffer. It\u0027s a reader\n  but not a consumer It doesn\u0027t block when no more traces are\n  available.\n\n- trace pretty similar to the former, except that it adds more\n  informations such as prempt count, irq flag, ...\n\n- trace_pipe is a reader and a consumer, it will also block\n  waiting for traces if necessary (heh, yes it\u0027s a pipe).\n\nThe traces coming from different cpus are curretly mixed up\ninside these files. Sometimes it messes up the informations,\nsometimes it\u0027s useful, depending on what does the tracer\ncapture.\n\nThe tracing_cpumask file is useful to filter the output and\nselect only the traces captured a custom defined set of cpus.\nBut still it is not enough powerful to extract at the same time\none trace buffer per cpu.\n\nSo this patch creates a new directory: /debug/tracing/per_cpu/.\n\nInside this directory, you will now find one trace_pipe file and\none trace file per cpu.\n\nWhich means if you have two cpus, you will have:\n\n trace0\n trace1\n trace_pipe0\n trace_pipe1\n\nAnd of course, reading these files will have the same effect\nthan with the usual tracing files, except that you will only see\nthe traces from the given cpu.\n\nThe original all-in-one cpu trace file are still available on\ntheir original place.\n\nUntil now, only one consumer was allowed on trace_pipe to avoid\nracy consuming on the ring-buffer. Now the approach changed a\nbit, you can have only one consumer per cpu.\n\nWhich means you are allowed to read concurrently trace_pipe0 and\ntrace_pipe1 But you can\u0027t have two readers on trace_pipe0 or\ntrace_pipe1.\n\nFollowing the same logic, if there is one reader on the common\ntrace_pipe, you can not have at the same time another reader on\ntrace_pipe0 or in trace_pipe1. Because in trace_pipe is already\na consumer in all cpu buffers in essence.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2b1b858f690d6369a59ad241335eeedec6eb0c8c",
      "tree": "91838f66d8ef6bb42fe66849c5cbd05650d272a3",
      "parents": [
        "886b5b73d71e4027d7dc6c14f5f7ab102201ea6b",
        "1473e4417c79f12d91ef91a469699bfa911f510f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 25 12:50:07 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 25 12:50:07 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "886b5b73d71e4027d7dc6c14f5f7ab102201ea6b",
      "tree": "307a0e4d1c597e90d6972f95c2396ea4e1be2057",
      "parents": [
        "c478f8786973d6d7552c652ddad3f6fd86b5af28"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 25 11:03:44 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 25 11:05:34 2009 +0100"
      },
      "message": "tracing: remove /debug/tracing/latency_trace\n\nImpact: remove old debug/tracing API\n\n/debug/tracing/latency_trace is an old legacy format we kept from\nthe old latency tracer. Remove the file for now. If there\u0027s any\nuseful bit missing then we\u0027ll propagate any useful output bits into\nthe /debug/tracing/trace output.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2d542cf34264ac92e9e7ac55c0b096b066d569d2",
      "tree": "e7864da3a119ba2fd1800616f0041610d09058cb",
      "parents": [
        "499aa86dcbc3c4daf7d2c59c5c30e1a78220fbc1"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 25 08:40:09 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 25 09:16:01 2009 +0100"
      },
      "message": "tracing/hw-branch-tracing: convert bts-tracer mutex to a spinlock\n\nImpact: fix CPU hotplug lockup\n\nbts_hotcpu_handler() is called with irqs disabled, so using mutex_lock()\nis a no-no.\n\nAll the BTS codepaths here are atomic (they do not schedule), so using\na spinlock is the right solution.\n\nCc: Markus Metzger \u003cmarkus.t.metzger@intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1473e4417c79f12d91ef91a469699bfa911f510f",
      "tree": "07ae02d5383367ed883616646f885be71f7431dd",
      "parents": [
        "f3fe8e4a38fd19dbb3f8ffb1826aa840ae304a65"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 24 14:15:08 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 24 21:54:08 2009 -0500"
      },
      "message": "tracing: make event directory structure\n\nThis patch adds the directory /debug/tracing/events/ that will contain\nall the registered trace points.\n\n # ls /debug/tracing/events/\nsched_kthread_stop      sched_process_fork  sched_switch\nsched_kthread_stop_ret  sched_process_free  sched_wait_task\nsched_migrate_task      sched_process_wait  sched_wakeup\nsched_process_exit      sched_signal_send   sched_wakeup_new\n\n # ls /debug/tracing/events/sched_switch/\nenable\n\n # cat /debug/tracing/events/sched_switch/enable\n1\n\n # cat /debug/tracing/set_event\nsched_switch\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "f3fe8e4a38fd19dbb3f8ffb1826aa840ae304a65",
      "tree": "9df43f7711f836173adebcefe2f4776bd3e30340",
      "parents": [
        "b77e38aa240c3bd9c55c98b9f7c81541e042eae5"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 24 10:22:57 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 24 21:54:07 2009 -0500"
      },
      "message": "tracing: add schedule events to event trace\n\nThis patch changes the trace/sched.h to use the DECLARE_TRACE_FMT\nsuch that they are automatically registered with the event tracer.\n\nAnd it also adds the tracing sched headers to kernel/trace/events.c\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "b77e38aa240c3bd9c55c98b9f7c81541e042eae5",
      "tree": "bbb40993e76edc52d2cae1040b941ba4e4d2f965",
      "parents": [
        "7c37730cd31ddb2d3a1da142af9b18c29b8c433b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 24 10:21:36 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 24 21:54:05 2009 -0500"
      },
      "message": "tracing: add event trace infrastructure\n\nThis patch creates the event tracing infrastructure of ftrace.\nIt will create the files:\n\n /debug/tracing/available_events\n /debug/tracing/set_event\n\nThe available_events will list the trace points that have been\nregistered with the event tracer.\n\nset_events will allow the user to enable or disable an event hook.\n\nexample:\n\n # echo sched_wakeup \u003e /debug/tracing/set_event\n\nWill enable the sched_wakeup event (if it is registered).\n\n # echo \"!sched_wakeup\" \u003e\u003e /debug/tracing/set_event\n\nWill disable the sched_wakeup event (and only that event).\n\n # echo \u003e /debug/tracing/set_event\n\nWill disable all events (notice the \u0027\u003e\u0027)\n\n # cat /debug/tracing/available_events \u003e /debug/tracing/set_event\n\nWill enable all registered event hooks.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "5e01cb695d29619dd551bac7d6aa4ef1dc8ebc95",
      "tree": "441e5401fe99fbf75468b3245c77db34fc6aef58",
      "parents": [
        "a7f4463e0300b5135c0f0caf7c34a0529405f986"
      ],
      "author": {
        "name": "Markus Metzger",
        "email": "markus.t.metzger@intel.com",
        "time": "Tue Feb 24 13:55:18 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 24 18:23:34 2009 +0100"
      },
      "message": "x86, ftrace: fix section mismatch in hw-branch-tracer\n\nFix an invalid memory reference problem when cpu hotplug support is\ndisabled and the hw-branch-tracer is set as current tracer.\n\nInitializing the tracer calls bts_trace_init() which has already\nbeen freed at this time.\n\nReported-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Markus Metzger \u003cmarkus.t.metzger@intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a7f4463e0300b5135c0f0caf7c34a0529405f986",
      "tree": "8df5f13094778eff3c8653bcc249cd265378b80a",
      "parents": [
        "c478f8786973d6d7552c652ddad3f6fd86b5af28",
        "20f4d6c3a2a23c5d7d9cc7f42fbb943ca7a03d1f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 24 18:22:39 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 24 18:22:39 2009 +0100"
      },
      "message": "Merge branch \u0027tracing/ftrace\u0027; commit \u0027v2.6.29-rc6\u0027 into tracing/core\n"
    },
    {
      "commit": "770824bdc421ff58a64db608294323571c949f4c",
      "tree": "2fbeef604fe982bf322249a53a95dd2ff851d5f4",
      "parents": [
        "936577c61d0c10b8929608a92c98d839b22053bc"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Feb 22 18:38:50 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Feb 22 10:33:44 2009 -0800"
      },
      "message": "PM: Split up sysdev_[suspend|resume] from device_power_[down|up]\n\nMove the sysdev_suspend/resume from the callee to the callers, with\nno real change in semantics, so that we can rework the disabling of\ninterrupts during suspend/hibernation.\n\nThis is based on an earlier patch from Linus.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c478f8786973d6d7552c652ddad3f6fd86b5af28",
      "tree": "39967f4bb9a35d626584bd46f1acd916c6b5278d",
      "parents": [
        "843adf2379c18ed9a1b7493ee208bfd5512732e0",
        "4377245aa93b65b6597e4b7bb460fb9abc48b56b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 22 18:12:01 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 22 18:12:01 2009 +0100"
      },
      "message": "Merge branch \u0027tip/x86/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n\nConflicts:\n\tinclude/linux/ftrace.h\n\tkernel/trace/ftrace.c\n"
    },
    {
      "commit": "adfafefd104d840ee4461965f22624d77532675b",
      "tree": "6c6ba553a2b11703bf5952bd789905ea37c4fc4f",
      "parents": [
        "460c1338fc05add0e8050d4945a46f207b13a5fc",
        "403f307576396f3362fbb65af190885b6036c72c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 21 14:17:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 21 14:17:26 2009 -0800"
      },
      "message": "Merge branch \u0027hibernate\u0027\n\n* hibernate:\n  PM: Fix suspend_console and resume_console to use only one semaphore\n  PM: Wait for console in resume\n  PM: Fix pm_notifiers during user mode hibernation\n  swsusp: clean up shrink_all_zones()\n  swsusp: dont fiddle with swappiness\n  PM: fix build for CONFIG_PM unset\n  PM/hibernate: fix \"swap breaks after hibernation failures\"\n  PM/resume: wait for device probing to finish\n  Consolidate driver_probe_done() loops into one place\n"
    },
    {
      "commit": "403f307576396f3362fbb65af190885b6036c72c",
      "tree": "d3737ebe960d65152b7ee119b8b5a7ad2d59e09b",
      "parents": [
        "b090f9fa53d51c8a33370071de9e391919ee1fa7"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Sat Feb 14 02:07:24 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 21 14:17:18 2009 -0800"
      },
      "message": "PM: Fix suspend_console and resume_console to use only one semaphore\n\nThis fixes a race where a thread acquires the console while the\nconsole is suspended, and the console is resumed before this\nthread releases it. In this case, the secondary console\nsemaphore would be left locked, and the primary semaphore would\nbe released twice. This in turn would cause the console switch\non suspend or resume to hang forever.\n\nNote that suspend_console does not actually lock the console\nfor clients that use acquire_console_sem, it only locks it for\nclients that use try_acquire_console_sem. If we change\nsuspend_console to fully lock the console, then the kernel\nmay deadlock on suspend. One client of try_acquire_console_sem\nis acquire_console_semaphore_for_printk, which uses it to\nprevent printk from using the console while it is suspended.\n\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgregkh@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b090f9fa53d51c8a33370071de9e391919ee1fa7",
      "tree": "55cf1fe637cf4808d8139108c3d7871647dfc00f",
      "parents": [
        "ebae2604f2c3693717d9dc687c84578f0526480c"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Sat Feb 14 02:06:17 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 21 14:17:17 2009 -0800"
      },
      "message": "PM: Wait for console in resume\n\nAvoids later waking up to a blinking cursor if the device woke up and\nreturned to sleep before the console switch happened.\n\nSigned-off-by: Brian Swetland \u003cswetland@google.com\u003e\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgregkh@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ebae2604f2c3693717d9dc687c84578f0526480c",
      "tree": "b385e3b401ab8bc2f278aa36a03a639bf1ea61cd",
      "parents": [
        "0cb57258fe01e9b21076b6a15b6aec7a24168228"
      ],
      "author": {
        "name": "Andrey Borzenkov",
        "email": "arvidjaar@mail.ru",
        "time": "Sat Feb 14 02:05:14 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 21 14:17:17 2009 -0800"
      },
      "message": "PM: Fix pm_notifiers during user mode hibernation\n\nSnapshot device is opened with O_RDONLY during suspend and O_WRONLY durig\nresume.  Make sure we also call notifiers with correct parameter telling\nthem what we are really doing.\n\nSigned-off-by: Andrey Borzenkov \u003carvidjaar@mail.ru\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgregkh@suse.de\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "09664fda48c5dd63277f1f42888ca9d5dca6037a",
      "tree": "b5170e081b83fe449db1431c1a3591c162f528c4",
      "parents": [
        "a1bb7d61233ba5fb5cd865f907a9ddcc8f8c02bd"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Feb 14 02:02:16 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 21 14:17:17 2009 -0800"
      },
      "message": "PM: fix build for CONFIG_PM unset\n\nCompilation of kprobes.c with CONFIG_PM unset is broken due to some broken\nconfig dependncies.  Fix that.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgregkh@suse.de\u003e\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nTested-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eed3ee08292d821282169708e5e8e89a0d0a0c63",
      "tree": "0c455705568521c99c84d9ef095a3ae29d1f02db",
      "parents": [
        "216773a787c3c46ef26bf1742c1fdba37d26be45"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Feb 14 02:00:19 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 21 14:17:17 2009 -0800"
      },
      "message": "PM/resume: wait for device probing to finish\n\nthe resume code does not currently wait for device probing to finish.\nEven without async function calls this is dicey and not correct,\nbut with async function calls during the boot sequence this is going\nto get hit more...\n\nThis patch adds the synchronization using the newly introduced helper.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nAcked-by: Greg KH \u003cgregkh@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4377245aa93b65b6597e4b7bb460fb9abc48b56b",
      "tree": "00eae2cbdd12e855bbde2f6cd6d1a6e6fd659a11",
      "parents": [
        "90c7ac49aa819feb9433b5310089fca6399881c0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 19 13:41:27 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 20 14:30:20 2009 -0500"
      },
      "message": "ftrace: break out modify loop immediately on detection of error\n\nImpact: added precaution on failure detection\n\nBreak out of the modifying loop as soon as a failure is detected.\nThis is just an added precaution found by code review and was not\nfound by any bug chasing.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "000ab691172db3921efa3cb7f17fc79235a1de7f",
      "tree": "5670e20fe203488b408977d5d5634fc9ddf418e1",
      "parents": [
        "07a66d7c53a538e1a9759954a82bb6c07365eff9"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 13:35:06 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 20 13:16:18 2009 -0500"
      },
      "message": "ftrace: allow archs to preform pre and post process for code modification\n\nThis patch creates the weak functions: ftrace_arch_code_modify_prepare\nand ftrace_arch_code_modify_post_process that are called before and\nafter the stop machine is called to modify the kernel text.\n\nIf the arch needs to do pre or post processing, it only needs to define\nthese functions.\n\n[ Update: Ingo Molnar suggested using the name ftrace_arch_code_modify_*\n          over using ftrace_arch_modify_* ]\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "f9349a8f978929a0c71d2c42ae299f7d462c239d",
      "tree": "e5d010a27078993709fd286f358122886cbbc3bc",
      "parents": [
        "64b36ca7f408e0bd45487c8c28f168f11f3b6dcd"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Feb 19 21:13:12 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 20 11:36:24 2009 +0100"
      },
      "message": "tracing/function-graph-tracer: make set_graph_function file support ftrace regex\n\nImpact: trace only functions matching a pattern\n\nThe set_graph_function file let one to trace only one or several\nchosen functions and follow all their code flow.\n\nCurrently, only a constant function name is allowed so this patch\nallows the ftrace_regex functions:\n\n- matches all functions that end with \"name\":\n  echo *name \u003e set_graph_function\n\n- matches all functions that begin with \"name\":\n  echo name* \u003e set_graph_function\n\n- matches all functions that contains \"name\":\n  echo *name* \u003e set_graph_function\n\nExample:\n\necho mutex* \u003e set_graph_function\n\n 0)               |  mutex_lock_nested() {\n 0)   0.563 us    |    __might_sleep();\n 0)   2.072 us    |  }\n 0)               |  mutex_unlock() {\n 0)   1.036 us    |    __mutex_unlock_slowpath();\n 0)   2.433 us    |  }\n 0)               |  mutex_unlock() {\n 0)   0.691 us    |    __mutex_unlock_slowpath();\n 0)   1.787 us    |  }\n 0)               |  mutex_lock_interruptible_nested() {\n 0)   0.548 us    |    __might_sleep();\n 0)   1.945 us    |  }\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f54b2fe4aef9aa74ddf2c856928c3e29f3371fe7",
      "tree": "8ca38b4fab7d2a9a5bfd26a2e640631d52894fe6",
      "parents": [
        "83ff1af9d330348d1a6685b0c06d33847cd72723",
        "ed4a2f374d71770796789ed559c35a36bab82f1a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 19 09:14:22 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 19 09:14:22 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: limit the number of loops the ring buffer self test can make\n  tracing: have function trace select kallsyms\n  tracing: disable tracing while testing ring buffer\n  tracing/function-graph-tracer: trace the idle tasks\n"
    },
    {
      "commit": "00a8bf859331e349713274825e6fbf20bf2ac15a",
      "tree": "09a26efd9f8c79c2fc4bead9d6adc18cd2ea6de9",
      "parents": [
        "5752674e140db5bce08c6bc60021a9bc3b960800"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 13:01:37 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 13:01:37 2009 +0100"
      },
      "message": "tracing/function-graph-tracer: fix merge\n\nMerge artifact: pid got changed to ent-\u003epid meanwhile.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d1f9cbd78841f1a797c77e9117e4882f932c2ef6",
      "tree": "385b85ae60dfca6b4d2c5d8093db07cd6c5fbb20",
      "parents": [
        "4cd0332db7e8f57cc082bab11d82c064a9721737"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Feb 18 04:25:25 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 12:33:21 2009 +0100"
      },
      "message": "tracing/function-graph-tracer: fix traces weirdness while absolute time printing\n\nImpact: trace output cleanup/reordering\n\nWhen an interrupt occurs and and the abstime option is selected:\n\n  echo funcgraph-abstime \u003e /debug/tracing/trace_options\n\nthen we observe broken traces:\n\n30581.025422 |   0)   Xorg-4291    |   0.503 us    |      idle_cpu();\n30581.025424 |   0)   Xorg-4291    |   2.576 us    |    }\n30581.025424 |   0)   Xorg-4291    | + 75.771 us   |  }\n 0)   Xorg-4291    |   \u003c\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d |\n30581.025425 |   0)   Xorg-4291    |               |  schedule() {\n30581.025426 |   0)   Xorg-4291    |               |    __schedule() {\n30581.025426 |   0)   Xorg-4291    |   0.705 us    |      _spin_lock_irq();\n\nWith this patch, the interrupts output better adapts\nto absolute time printing:\n\n  414.856543 |   1)   Xorg-4279    |   8.816 us    |                        }\n  414.856544 |   1)   Xorg-4279    |   0.525 us    |                        rcu_irq_exit();\n  414.856545 |   1)   Xorg-4279    |   0.526 us    |                        idle_cpu();\n  414.856546 |   1)   Xorg-4279    | + 12.157 us   |                      }\n  414.856549 |   1)   Xorg-4279    | ! 104.114 us  |                    }\n  414.856549 |   1)   Xorg-4279    |   \u003c\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d |\n  414.856549 |   1)   Xorg-4279    | ! 107.944 us  |                  }\n  414.856550 |   1)   Xorg-4279    | ! 137.010 us  |                }\n  414.856551 |   1)   Xorg-4279    |   0.624 us    |                _read_unlock();\n  414.856552 |   1)   Xorg-4279    | ! 140.930 us  |              }\n  414.856552 |   1)   Xorg-4279    | ! 166.159 us  |            }\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4cd0332db7e8f57cc082bab11d82c064a9721737",
      "tree": "b6de7771d67c5bf6eeb890fa0f5a901365104b98",
      "parents": [
        "40999096e8b9872199bf56ecd0c4d98397ccaf2f",
        "712406a6bf59ebf4a00358bb59a4a2a1b2953d90"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 12:13:33 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 12:13:33 2009 +0100"
      },
      "message": "Merge branch \u0027mainline/function-graph\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/function-graph-tracer\n"
    },
    {
      "commit": "40999096e8b9872199bf56ecd0c4d98397ccaf2f",
      "tree": "a1019965100c10cae52014c447bfb4d1381ebec9",
      "parents": [
        "72c26c9a26ea7f2f3d14f162c2ebb07805f724ea",
        "fa7c7f6e11f70d62505074a8b30a776236850dec",
        "ed4a2f374d71770796789ed559c35a36bab82f1a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 10:20:17 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 10:20:17 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/blktrace\u0027, \u0027tracing/ftrace\u0027 and \u0027tracing/urgent\u0027 into tracing/core\n"
    },
    {
      "commit": "72c26c9a26ea7f2f3d14f162c2ebb07805f724ea",
      "tree": "bf1b4bc0b69f96c79474f9edb9cf0e811c95f2dc",
      "parents": [
        "37bd824a35a60abc73e5fa8816bd5f50c913d69b",
        "ba95fd47d177d46743ad94055908d22840370e06"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 09:00:35 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 19 09:00:35 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/blktrace\n\nConflicts:\n\tblock/blktrace.c\n\nSemantic merge:\n\tkernel/trace/blktrace.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4b3e3d228429c75d398f1aa24532e468d3220c49",
      "tree": "ff0f2bd4b3f6903ad563d16c47d0bbb15603b2dd",
      "parents": [
        "4d7a077c0c7bfdba04cf0aa0b79053cf4ebaacf8"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 22:50:01 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 22:50:01 2009 -0500"
      },
      "message": "tracing: limit the number of loops the ring buffer self test can make\n\nImpact: prevent deadlock if ring buffer gets corrupted\n\nThis patch adds a paranoid check to make sure the ring buffer consumer\ndoes not go into an infinite loop. Since the ring buffer has been set\nto read only, the consumer should not loop for more than the ring buffer\nsize. A check is added to make sure the consumer does not loop more than\nthe ring buffer size.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "4d7a077c0c7bfdba04cf0aa0b79053cf4ebaacf8",
      "tree": "6c5499988ccb21898b22d709f9f66d019e0fe475",
      "parents": [
        "0c5119c1e655e0719a69601b1049acdd5ec1c125"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 22:06:18 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 22:06:18 2009 -0500"
      },
      "message": "tracing: have function trace select kallsyms\n\nImpact: fix output of function tracer to be useful\n\nThe function tracer is pretty useless if KALLSYMS is not configured.\nUnless you are good at reading hex values, the function tracer should\nselect the KALLSYMS configuration.\n\nAlso, the dynamic function tracer will fail its self test if KALLSYMS\nis not selected.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "0c5119c1e655e0719a69601b1049acdd5ec1c125",
      "tree": "e808e36e274afc7c6521f69194e6fc2597e189bd",
      "parents": [
        "5b058bcde961bf28678a70e44c079107313543b6"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 18:33:57 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 22:04:01 2009 -0500"
      },
      "message": "tracing: disable tracing while testing ring buffer\n\nImpact: fix to prevent hard lockup on self tests\n\nIf one of the tracers are broken and is constantly filling the ring\nbuffer while the test of the ring buffer is running, it will hang\nthe box. The reason is that the test is a consumer that will not\nstop till the ring buffer is empty. But if the tracer is broken and\nis constantly producing input to the buffer, this test will never\nend. The result is a lockup of the box.\n\nThis happened when KALLSYMS was not defined and the dynamic ftrace\ntest constantly filled the ring buffer, because the filter failed\nand all functions were being traced. Something was being called\nthat constantly filled the buffer.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "ba95fd47d177d46743ad94055908d22840370e06",
      "tree": "f29e6921fefba2728c3b7f6854ac7f7729f602b2",
      "parents": [
        "59af0a0b5848caf38f1bf7013905c3e9cdba4d1d",
        "be987fdb55a4726e2fcbab7501f89276bdb57288"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 18:33:04 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 18:33:04 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  block: fix deadlock in blk_abort_queue() for drivers that readd to timeout list\n  block: fix booting from partitioned md array\n  block: revert part of 18ce3751ccd488c78d3827e9f6bf54e6322676fb\n  cciss: PCI power management reset for kexec\n  paride/pg.c: xs(): \u0026\u0026/|| confusion\n  fs/bio: bio_alloc_bioset: pass right object ptr to mempool_free\n  block: fix bad definition of BIO_RW_SYNC\n  bsg: Fix sense buffer bug in SG_IO\n"
    },
    {
      "commit": "42f5e039c3f6512271636928ddc4e7f7a0371672",
      "tree": "6582d5f88aeaf112e2293a2147f263fb726352cb",
      "parents": [
        "67e055d144c5b2acdc1c63811fde031263bf92c5"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Feb 18 14:48:21 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:54 2009 -0800"
      },
      "message": "pm: fix build for CONFIG_PM unset\n\nCompilation of kprobes.c with CONFIG_PM unset is broken due to some broken\nconfig dependncies.  Fix that.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nTested-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "67e055d144c5b2acdc1c63811fde031263bf92c5",
      "tree": "6bdb0af25cc30d7bc8a8d54db3625f8486c2f5f9",
      "parents": [
        "1cf6e7d83bf334cc5916137862c920a97aabc018"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Feb 18 14:48:20 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:54 2009 -0800"
      },
      "message": "cgroups: fix possible use after free\n\nIn cgroup_kill_sb(), root is freed before sb is detached from the list, so\nanother sget() may find this sb and call cgroup_test_super(), which will\naccess the root that has been freed.\n\nReported-by: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "712406a6bf59ebf4a00358bb59a4a2a1b2953d90",
      "tree": "5bea439ccacde69ba71c5da8e8e307c2d343aa93",
      "parents": [
        "d2f8d7ee1a9b4650b4e43325b321801264f7c37a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 09 10:54:03 2009 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Feb 18 13:43:04 2009 -0500"
      },
      "message": "tracing/function-graph-tracer: make arch generic push pop functions\n\nThere is nothing really arch specific of the push and pop functions\nused by the function graph tracer. This patch moves them to generic\ncode.\n\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "93dbb393503d53cd226e5e1f0088fe8f4dbaa2b8",
      "tree": "790365e207951cf6810e8995f3141ddc0b74519b",
      "parents": [
        "c1c201200a359cf3b6e2e36a4236cdca77a3cd8e"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Feb 16 10:25:40 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Feb 18 10:32:00 2009 +0100"
      },
      "message": "block: fix bad definition of BIO_RW_SYNC\n\nWe can\u0027t OR shift values, so get rid of BIO_RW_SYNC and use BIO_RW_SYNCIO\nand BIO_RW_UNPLUG explicitly. This brings back the behaviour from before\n213d9417fec62ef4c3675621b9364a667954d4dd.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "fa7c7f6e11f70d62505074a8b30a776236850dec",
      "tree": "f325008f7505ffb45dd7b1139d38c6a8229c6ccd",
      "parents": [
        "6eaaa5d57e76c454479833fc8594cd7c3b75c789"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Feb 11 02:51:30 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 18 01:40:20 2009 +0100"
      },
      "message": "tracing/core: remove unused parameter in tracing_fill_pipe_page()\n\nImpact: cleanup\n\nThe struct page *pages parameter is unused.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6eaaa5d57e76c454479833fc8594cd7c3b75c789",
      "tree": "c8f3c130004199bbbc8d141bbfb0f216539c0724",
      "parents": [
        "ac07bcaa8259841905ead3f8cd60b1923ca6c0e5"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Feb 11 02:25:00 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 18 01:40:20 2009 +0100"
      },
      "message": "tracing/core: use appropriate waiting on trace_pipe\n\nImpact: api and pipe waiting change\n\nCurrently, the waiting used in tracing_read_pipe() is done through a\n100 msecs schedule_timeout() loop which periodically check if there\nare traces on the buffer.\n\nThis can cause small latencies for programs which are reading the incoming\nevents.\n\nThis patch makes the reader waiting for the trace_wait waitqueue except\nfor few tracers such as the sched and functions tracers which might be\nalready hold the runqueue lock while waking up the reader.\n\nThis is performed through a new callback wait_pipe() on struct tracer.\nIf none is implemented on a specific tracer, the default waiting for\ntrace_wait queue is attached.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ac07bcaa8259841905ead3f8cd60b1923ca6c0e5",
      "tree": "162def1cd53ef477adca17fe06c33a484f6b2e87",
      "parents": [
        "37bd824a35a60abc73e5fa8816bd5f50c913d69b",
        "35ebf1caa4854ad5ba25f3a72967acc064147994"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 18 01:09:07 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 18 01:09:07 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "37bd824a35a60abc73e5fa8816bd5f50c913d69b",
      "tree": "e6f718191893ccb713f854fc8bf4a5866a41fe2b",
      "parents": [
        "73d3fd96e77745742f3750b7b19ee42204adc210",
        "5b058bcde961bf28678a70e44c079107313543b6"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 18 01:08:13 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 18 01:08:13 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027 and \u0027tracing/urgent\u0027 into tracing/core\n"
    },
    {
      "commit": "e78ac4b9deb8f36d8c828b6d91232960f109d951",
      "tree": "09d0eb38a666071bc90a8637cd0501ecc152cda0",
      "parents": [
        "29a0c5ce5d008f398346d644456d62ab300d5e10",
        "a0490fa35dc0022ef95f64802e8edf18c411c790"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 17 14:30:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 17 14:30:06 2009 -0800"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: cpu hotplug fix\n"
    },
    {
      "commit": "29a0c5ce5d008f398346d644456d62ab300d5e10",
      "tree": "f549f6c78905f318f0e6342edede01cb7c0561b9",
      "parents": [
        "f8effd1a4a1833eac90261d78abacfaefe3d99e4",
        "3997ad317fdf9ecdb5702e2b4fd1f8229814ff8c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 17 14:29:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 17 14:29:42 2009 -0800"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  timers: more consistently use clock vs timer\n"
    },
    {
      "commit": "f8effd1a4a1833eac90261d78abacfaefe3d99e4",
      "tree": "8ebecce9f6d5b0faf0efc3828b3b353561fd9341",
      "parents": [
        "35010334aa007480a833401b80922299cb1a15ef",
        "f9aa28adfc6a4b01268ebb6d88566cca8627905f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 17 14:29:15 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 17 14:29:15 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  doc: mmiotrace.txt, buffer size control change\n  trace: mmiotrace to the tracer menu in Kconfig\n  mmiotrace: count events lost due to not recording\n"
    },
    {
      "commit": "8ce9a75a307e142a8871c649627555e0e4a1eefb",
      "tree": "ba4ef31238311bd1089507b7a27c6802488fc9db",
      "parents": [
        "b30b77493039b7b95b4d569a66af425b02651edd",
        "9af88143b277f52fc6ce0d69137f435c73c39c1a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 17 14:26:35 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 17 14:26:35 2009 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  iommu: fix Intel IOMMU write-buffer flushing\n  futex: fix reference leak\n\nTrivial conflicts fixed manually in drivers/pci/intel-iommu.c\n"
    },
    {
      "commit": "5b058bcde961bf28678a70e44c079107313543b6",
      "tree": "077a1bd366399544a84f61b07ae2f7bd894fae47",
      "parents": [
        "f9aa28adfc6a4b01268ebb6d88566cca8627905f"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Feb 17 18:35:34 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 19:20:17 2009 +0100"
      },
      "message": "tracing/function-graph-tracer: trace the idle tasks\n\nWhen the function graph tracer is activated, it iterates over the task_list\nto allocate a stack to store the return addresses.\n\nBut the per cpu idle tasks are not iterated by using\ndo_each_thread / while_each_thread.\n\nSo we have to iterate on them manually.\n\nThis fixes somes weirdness in the traces and many losses of traces.\nExamples on two cpus:\n\n 0)   Xorg-4287    |   2.906 us    |              }\n 0)   Xorg-4287    |   3.965 us    |            }\n 0)   Xorg-4287    |   5.302 us    |          }\n ------------------------------------------\n 0)   Xorg-4287    \u003d\u003e    \u003cidle\u003e-0\n ------------------------------------------\n\n 0)    \u003cidle\u003e-0    |   2.861 us    |                        }\n 0)    \u003cidle\u003e-0    |   0.526 us    |                        set_normalized_timespec();\n 0)    \u003cidle\u003e-0    |   7.201 us    |                      }\n 0)    \u003cidle\u003e-0    |   8.214 us    |                    }\n 0)    \u003cidle\u003e-0    |               |                    clockevents_program_event() {\n 0)    \u003cidle\u003e-0    |               |                      lapic_next_event() {\n 0)    \u003cidle\u003e-0    |   0.510 us    |                        native_apic_mem_write();\n 0)    \u003cidle\u003e-0    |   1.546 us    |                      }\n 0)    \u003cidle\u003e-0    |   2.583 us    |                    }\n 0)    \u003cidle\u003e-0    | + 12.435 us   |                  }\n 0)    \u003cidle\u003e-0    | + 13.470 us   |                }\n 0)    \u003cidle\u003e-0    |   0.608 us    |                _spin_unlock_irqrestore();\n 0)    \u003cidle\u003e-0    | + 23.270 us   |              }\n 0)    \u003cidle\u003e-0    | + 24.336 us   |            }\n 0)    \u003cidle\u003e-0    | + 25.417 us   |          }\n 0)    \u003cidle\u003e-0    |   0.593 us    |          _spin_unlock();\n 0)    \u003cidle\u003e-0    | + 41.869 us   |        }\n 0)    \u003cidle\u003e-0    | + 42.906 us   |      }\n 0)    \u003cidle\u003e-0    | + 95.035 us   |    }\n 0)    \u003cidle\u003e-0    |   0.540 us    |    menu_reflect();\n 0)    \u003cidle\u003e-0    | ! 100.404 us  |  }\n 0)    \u003cidle\u003e-0    |   0.564 us    |  mce_idle_callback();\n 0)    \u003cidle\u003e-0    |               |  enter_idle() {\n 0)    \u003cidle\u003e-0    |   0.526 us    |    mce_idle_callback();\n 0)    \u003cidle\u003e-0    |   1.757 us    |  }\n 0)    \u003cidle\u003e-0    |               |  cpuidle_idle_call() {\n 0)    \u003cidle\u003e-0    |               |    menu_select() {\n 0)    \u003cidle\u003e-0    |   0.525 us    |      pm_qos_requirement();\n 0)    \u003cidle\u003e-0    |   0.518 us    |      tick_nohz_get_sleep_length();\n 0)    \u003cidle\u003e-0    |   2.621 us    |    }\n[...]\n 1)    \u003cidle\u003e-0    |   0.518 us    |              touch_softlockup_watchdog();\n 1)    \u003cidle\u003e-0    | + 14.355 us   |            }\n 1)    \u003cidle\u003e-0    | + 22.840 us   |          }\n 1)    \u003cidle\u003e-0    | + 25.949 us   |        }\n 1)    \u003cidle\u003e-0    |               |        handle_irq() {\n 1)    \u003cidle\u003e-0    |   0.511 us    |          irq_to_desc();\n 1)    \u003cidle\u003e-0    |               |          handle_edge_irq() {\n 1)    \u003cidle\u003e-0    |   0.638 us    |            _spin_lock();\n 1)    \u003cidle\u003e-0    |               |            ack_apic_edge() {\n 1)    \u003cidle\u003e-0    |   0.510 us    |              irq_to_desc();\n 1)    \u003cidle\u003e-0    |               |              move_native_irq() {\n 1)    \u003cidle\u003e-0    |   0.510 us    |                irq_to_desc();\n 1)    \u003cidle\u003e-0    |   1.532 us    |              }\n 1)    \u003cidle\u003e-0    |   0.511 us    |              native_apic_mem_write();\n ------------------------------------------\n 1)    \u003cidle\u003e-0    \u003d\u003e    cat-5073\n ------------------------------------------\n\n 1)    cat-5073    |   3.731 us    |                    }\n 1)    cat-5073    |               |                    run_local_timers() {\n 1)    cat-5073    |   0.533 us    |                      hrtimer_run_queues();\n 1)    cat-5073    |               |                      raise_softirq() {\n 1)    cat-5073    |               |                        __raise_softirq_irqoff() {\n 1)    cat-5073    |               |                          /* nr: 1 */\n 1)    cat-5073    |   2.718 us    |                        }\n 1)    cat-5073    |   3.814 us    |                      }\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "35ebf1caa4854ad5ba25f3a72967acc064147994",
      "tree": "6adc0e7db8cb16d18f3683bf729cf8261af93b1f",
      "parents": [
        "73d8b8bc4f24a97a406d09c8268ac019f4ac661e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 13:12:12 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 13:12:12 2009 -0500"
      },
      "message": "ftrace: show unlimited when traceon or traceoff has no counter\n\nImpact: clean up\n\nThe traceon and traceoff function probes are confusing to developers\nto what happens when a counter is not specified. This should help\nclear things up.\n\n # echo \"*:traceoff\" \u003e set_ftrace_filter\n # cat /debug/tracing/set_ftrace_filter\n\n  #### all functions enabled ####\n  do_fork:traceoff:unlimited\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "73d8b8bc4f24a97a406d09c8268ac019f4ac661e",
      "tree": "53917dadae639d825a8e917a27644555cb6eeea5",
      "parents": [
        "d2ef7c2f0f9ab48c25eafc0ebad0df5f7930420b"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Tue Feb 17 01:10:02 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 12:38:24 2009 -0500"
      },
      "message": "tracing: fix typing mistake in hint message and comments\n\nImpact: cleanup\n\nFix incorrect hint message in code and typos in comments.\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "d2ef7c2f0f9ab48c25eafc0ebad0df5f7930420b",
      "tree": "f728344561b02428d875e30a0d07143dafd52bcc",
      "parents": [
        "af513098452b8887d7c0e15a39d7cb74479501bd"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Tue Feb 17 01:09:47 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 12:38:24 2009 -0500"
      },
      "message": "tracing: fix the return value of trace selftest\n\nThis patch is to fix the return value of trace_selftest_startup_sysprof\nand trace_selftest_startup_branch on failure.\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "af513098452b8887d7c0e15a39d7cb74479501bd",
      "tree": "a578846af58fe25dd784f694440a3cf757aea807",
      "parents": [
        "b6887d7916e44c1d8913084fb6aa5004d9473f1a"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Tue Feb 17 01:07:28 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 12:38:23 2009 -0500"
      },
      "message": "tracing: use the more proper parameter\n\nPass tsk to tracing_record_cmdline instead of current.\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "b6887d7916e44c1d8913084fb6aa5004d9473f1a",
      "tree": "3446baa5592ce9ce17abb51ffdf3d89e6b52ef9b",
      "parents": [
        "6a24a244cd3a02d5b290293c32fcf2c6e92b4235"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 12:32:04 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 12:32:04 2009 -0500"
      },
      "message": "ftrace: rename _hook to _probe\n\nImpact: clean up\n\nIngo Molnar did not like the _hook naming convention used by the\nselect function tracer. Luis Claudio R. Goncalves suggested using\nthe \"_probe\" extension. This patch implements the change of\ncalling the functions and variables \"_hook\" and replacing them\nwith \"_probe\".\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "6a24a244cd3a02d5b290293c32fcf2c6e92b4235",
      "tree": "8328e5e7da792a07a338f20974eaea4f80bb59ac",
      "parents": [
        "73d3fd96e77745742f3750b7b19ee42204adc210"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 11:20:26 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 17 11:20:26 2009 -0500"
      },
      "message": "ftrace: clean up coding style\n\nIngo Molnar pointed out some coding style issues with the recent ftrace\nupdates. This patch cleans them up.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "73d3fd96e77745742f3750b7b19ee42204adc210",
      "tree": "02eb978e04288883d7f7709e87d8906687c29ba7",
      "parents": [
        "97d0bb8dcd8c2812e1927cdb51d7b1f9c98352b5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 11:48:18 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 11:50:42 2009 +0100"
      },
      "message": "ftrace: fix !CONFIG_DYNAMIC_FTRACE ftrace_swapper_pid definition\n\nImpact: build fix\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f492d3f8385a98f828e8220d14492337dc29e07b",
      "tree": "31f22c83f7e45388955aacb45c425d7cb6a4d78c",
      "parents": [
        "c4e2b432d5b57e2faaeea048079b31c243079647",
        "e110e3d1eaa0f9628918be67ddd32e8ad65a2871"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 11:31:01 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 11:31:01 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "c4e2b432d5b57e2faaeea048079b31c243079647",
      "tree": "f4e59abeb522ecb11476fe69d827390050a0ffee",
      "parents": [
        "a234aa9ecdf47a5461573a21dc0b154278df5ba8",
        "72b623c73685e86b70a51855e1058ebc98a9f6ed"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 11:29:53 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 17 11:29:53 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/hw-branch-tracing\u0027 and \u0027tracing/power-tracer\u0027 into tracing/core\n"
    },
    {
      "commit": "e110e3d1eaa0f9628918be67ddd32e8ad65a2871",
      "tree": "f51fcc118da53c2f7a8dc7ed028a7ed5380c9706",
      "parents": [
        "809dcf29ce4e1723709910878e050bd187617e0e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 23:38:13 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 23:38:13 2009 -0500"
      },
      "message": "ftrace: add pretty print function for traceon and traceoff hooks\n\nThis patch adds a pretty print version of traceon and traceoff\noutput for set_ftrace_filter.\n\n  # echo \u0027sys_open:traceon:4\u0027 \u003e set_ftrace_filter\n  # cat set_ftrace_filter\n\n #### all functions enabled ####\n sys_open:traceon:count\u003d4\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "809dcf29ce4e1723709910878e050bd187617e0e",
      "tree": "4747ede5ad0678d6ae88176f403a2c26f277182e",
      "parents": [
        "8fc0c701c5b6c0c3e242758c3acef6f9047940a9"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 23:06:01 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 23:06:01 2009 -0500"
      },
      "message": "ftrace: add pretty print to selected fuction traces\n\nThis patch adds a call back for the tracers that have hooks to\nselected functions. This allows the tracer to show better output\nin the set_ftrace_filter file.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "8fc0c701c5b6c0c3e242758c3acef6f9047940a9",
      "tree": "aa9c495fc2d898b39873e1ce9f154bed64b33f8e",
      "parents": [
        "23b4ff3aa479c9e3bb23cb6b2d0a97878399784a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 15:28:00 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 22:50:06 2009 -0500"
      },
      "message": "ftrace: show selected functions in set_ftrace_filter\n\nThis patch adds output to show what functions have tracer hooks\nattached to them.\n\n  # echo \u0027sys_open:traceon:4\u0027 \u003e /debug/tracing/set_ftrace_filter\n  # cat set_ftrace_filter\n\n #### all functions enabled ####\n sys_open:ftrace_traceon:0000000000000004\n\n  # echo \u0027do_fork:traceoff:\u0027 \u003e set_ftrace_filter\n  # cat set_ftrace_filter\n\n #### all functions enabled ####\n sys_open:ftrace_traceon:0000000000000002\n do_fork:ftrace_traceoff:ffffffffffffffff\n\nNote the 4 changed to a 2. This is because The code was executed twice\nsince the traceoff was added. If a cat is done again:\n\n #### all functions enabled ####\n sys_open:ftrace_traceon\n do_fork:ftrace_traceoff:ffffffffffffffff\n\nThe number disappears. That is because it will not print a NULL.\n\nCallbacks to allow the tracer to pretty print will be implemented soon.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "23b4ff3aa479c9e3bb23cb6b2d0a97878399784a",
      "tree": "ba446de609489d91303e6bdafd5168463100417a",
      "parents": [
        "988ae9d6b2bc3ebdc1a488490250a6812f85e9d4"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 14 19:04:24 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 22:50:04 2009 -0500"
      },
      "message": "ftrace: add traceon traceoff commands to enable/disable the buffers\n\nThis patch adds the new function selection commands traceon and\ntraceoff. traceon sets the function to enable the ring buffers\nwhile traceoff disables the ring buffers.  You can pass in the\nnumber of times you want the command to be executed when the function\nis hit. It will only execute if the state of the buffers are not\nalready in that state.\n\nExample:\n\n # echo do_fork:traceon:4\n\nWill enable the ring buffers if they are disabled every time it\nhits do_fork, up to 4 times.\n\n # echo sys_close:traceoff\n\nThis will disable the ring buffers every time (unlimited) when\nsys_close is called.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "988ae9d6b2bc3ebdc1a488490250a6812f85e9d4",
      "tree": "2674e810891133bc7ddb935baa6c15a0412e2a8f",
      "parents": [
        "59df055f1991c9fc0c71a9230663c39188f6972f"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 14 19:17:02 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 22:50:01 2009 -0500"
      },
      "message": "ring-buffer: add tracing_is_on to test if ring buffer is enabled\n\nThis patch adds the tracing_is_on() interface to tell if the ring\nbuffer is turned on or not.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "59df055f1991c9fc0c71a9230663c39188f6972f",
      "tree": "e1799897a8c8da924a3e933f539e8869e8725cb6",
      "parents": [
        "e6ea44e9b4c12325337cd1c06103cd515a1c02b2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 14 15:29:06 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 22:44:09 2009 -0500"
      },
      "message": "ftrace: trace different functions with a different tracer\n\nImpact: new feature\n\nCurrently, the function tracer only gives you an ability to hook\na tracer to all functions being traced. The dynamic function trace\nallows you to pick and choose which of those functions will be\ntraced, but all functions being traced will call all tracers that\nregistered with the function tracer.\n\nThis patch adds a new feature that allows a tracer to hook to specific\nfunctions, even when all functions are being traced. It allows for\ndifferent functions to call different tracer hooks.\n\nThe way this is accomplished is by a special function that will hook\nto the function tracer and will set up a hash table knowing which\ntracer hook to call with which function. This is the most general\nand easiest method to accomplish this. Later, an arch may choose\nto supply their own method in changing the mcount call of a function\nto call a different tracer. But that will be an exercise for the\nfuture.\n\nTo register a function:\n\n struct ftrace_hook_ops {\n\tvoid\t\t\t(*func)(unsigned long ip,\n\t\t\t\t\tunsigned long parent_ip,\n\t\t\t\t\tvoid **data);\n\tint\t\t\t(*callback)(unsigned long ip, void **data);\n\tvoid\t\t\t(*free)(void **data);\n };\n\n int register_ftrace_function_hook(char *glob, struct ftrace_hook_ops *ops,\n\t\t\t\t  void *data);\n\nglob is a simple glob to search for the functions to hook.\nops is a pointer to the operations (listed below)\ndata is the default data to be passed to the hook functions when traced\n\nops:\n func is the hook function to call when the functions are traced\n callback is a callback function that is called when setting up the hash.\n   That is, if the tracer needs to do something special for each\n   function, that is being traced, and wants to give each function\n   its own data. The address of the entry data is passed to this\n   callback, so that the callback may wish to update the entry to\n   whatever it would like.\n free is a callback for when the entry is freed. In case the tracer\n   allocated any data, it is give the chance to free it.\n\nTo unregister we have three functions:\n\n  void\n  unregister_ftrace_function_hook(char *glob, struct ftrace_hook_ops *ops,\n\t\t\t\tvoid *data)\n\nThis will unregister all hooks that match glob, point to ops, and\nhave its data matching data. (note, if glob is NULL, blank or \u0027*\u0027,\nall functions will be tested).\n\n  void\n  unregister_ftrace_function_hook_func(char *glob,\n\t\t\t\t struct ftrace_hook_ops *ops)\n\nThis will unregister all functions matching glob that has an entry\npointing to ops.\n\n  void unregister_ftrace_function_hook_all(char *glob)\n\nThis simply unregisters all funcs.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "e6ea44e9b4c12325337cd1c06103cd515a1c02b2",
      "tree": "01d13cb3dfb6031c220b42cedc7df7c84dc116b4",
      "parents": [
        "52baf11922db7377b580dd5448a07f71c6a35611"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 14 01:42:44 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 18:15:31 2009 -0500"
      },
      "message": "ftrace: consolidate mutexes\n\nImpact: clean up\n\nNow that ftrace_lock is a mutex, there is no reason to have three\ndifferent mutexes protecting similar data. All the mutex paths\nare not in hot paths, so having a mutex to cover more data is\nnot a problem.\n\nThis patch removes the ftrace_sysctl_lock and ftrace_start_lock\nand uses the ftrace_lock to protect the locations that were protected\nby these locks. By doing so, this change also removes some of\nthe lock nesting that was taking place.\n\nThere are still more mutexes in ftrace.c that can probably be\nconsolidated, but they can be dealt with later. We need to be careful\nabout the way the locks are nested, and by consolidating, we can cause\na recursive deadlock.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "52baf11922db7377b580dd5448a07f71c6a35611",
      "tree": "8fe8a5346da71f63d627ff3824e065efff88889b",
      "parents": [
        "f6180773d90595650e11de0118bb112018290915"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 14 01:15:39 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 17:33:14 2009 -0500"
      },
      "message": "ftrace: convert ftrace_lock from a spinlock to mutex\n\nImpact: clean up\n\nThe older versions of ftrace required doing the ftrace list\nsearch under atomic context. Now all the calls are in non-atomic\ncontext. There is no reason to keep the ftrace_lock as a spinlock.\n\nThis patch converts it to a mutex.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "f6180773d90595650e11de0118bb112018290915",
      "tree": "ccf8642d7ac584f73e7820fae64fc4daf4546f6b",
      "parents": [
        "e68746a271eb3393a2183840be9e903caddf765b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Feb 14 00:40:25 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 17:06:02 2009 -0500"
      },
      "message": "ftrace: add command interface for function selection\n\nAllow for other tracers to add their own commands for function\nselection. This interface gives a trace the ability to name a\ncommand for function selection. Right now it is pretty limited\nin what it offers, but this is a building step for more features.\n\nThe :mod: command is converted to this interface and also serves\nas a template for other implementations.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "e68746a271eb3393a2183840be9e903caddf765b",
      "tree": "106ea87792837ccee1476687d9f9a067f96488a9",
      "parents": [
        "64e7c440618998fd69eee6ab490b042d12248021"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 13 20:53:42 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 17:03:49 2009 -0500"
      },
      "message": "ftrace: enable filtering only when a function is filtered on\n\nImpact: fix to prevent empty set_ftrace_filter and no ftrace output\n\nThe function filter is used to only trace a given set of functions.\nThe filter is enabled when a function name is echoed into the\nset_ftrace_filter file. But if the name has a typo and the function\nis not found, the filter is enabled, but no function is listed.\n\nThis makes a confusing situation where set_ftrace_filter is empty\nbut no functions ever get enabled for tracing.\n\nFor example:\n\n # cat /debug/tracing/set_ftrace_filter\n\n  #### all functions enabled ####\n\n # echo bad_name \u003e set_ftrace_filter\n # cat /debug/tracing/set_ftrace_filter\n\n # echo function \u003e current_tracer\n # cat trace\n\n  # tracer: nop\n  #\n  #           TASK-PID    CPU#    TIMESTAMP  FUNCTION\n  #              | |       |          |         |\n\nThis patch changes that to only enable filtering if a function\nis set to be filtered on. Now, the filter is not enabled if\na bad name is echoed into set_ftrace_filter.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "64e7c440618998fd69eee6ab490b042d12248021",
      "tree": "384246f895f2697dd6927b776c67755cc13e901d",
      "parents": [
        "9f4801e30ad291e27284e873696da1ead92d68fa"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 13 17:08:48 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 16:55:50 2009 -0500"
      },
      "message": "ftrace: add module command function filter selection\n\nThis patch adds a \"command\" syntax to the function filtering files:\n\n  /debugfs/tracing/set_ftrace_filter\n  /debugfs/tracing/set_ftrace_notrace\n\nOf the format:  \u003cfunction\u003e:\u003ccommand\u003e:\u003cparameter\u003e\n\nThe command is optional, and dependent on the command, so are\nthe parameters.\n\n echo do_fork \u003e set_ftrace_filter\n\nWill only trace \u0027do_fork\u0027.\n\n echo \u0027sched_*\u0027 \u003e set_ftrace_filter\n\nWill only trace functions starting with the letters \u0027sched_\u0027.\n\n echo \u0027*:mod:ext3\u0027 \u003e set_ftrace_filter\n\nWill trace only the ext3 module functions.\n\n echo \u0027*write*:mod:ext3\u0027 \u003e set_ftrace_notrace\n\nWill prevent the ext3 functions with the letters \u0027write\u0027 in\nthe name from being traced.\n\n echo \u0027!*_allocate:mod:ext3\u0027 \u003e set_ftrace_filter\n\nWill remove the functions in ext3 that end with the letters\n\u0027_allocate\u0027 from the ftrace filter.\n\nAlthough this patch implements the \u0027command\u0027 format, only the\n\u0027mod\u0027 command is supported. More commands to follow.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "9f4801e30ad291e27284e873696da1ead92d68fa",
      "tree": "2a374e89f4f4ecb13cbcf8f914076539e9096517",
      "parents": [
        "7f24b31b01a271b62346d9df084b029e48612163"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 13 15:56:43 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 16:49:57 2009 -0500"
      },
      "message": "ftrace: break up ftrace_match_records into smaller components\n\nImpact: clean up\n\nftrace_match_records does a lot of things that other features\ncan use. This patch breaks up ftrace_match_records and pulls\nout ftrace_setup_glob and ftrace_match_record.\n\nftrace_setup_glob prepares a simple glob expression for use with\nftrace_match_record. ftrace_match_record compares a single record\nwith a glob type.\n\nBreaking this up will allow for more features to run on individual\nrecords.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "7f24b31b01a271b62346d9df084b029e48612163",
      "tree": "ad611a62206455b128db3032bf1a535207b1d20f",
      "parents": [
        "265c831cb03d533cbe159af45798ac9fef534260"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 13 14:37:33 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 16:33:15 2009 -0500"
      },
      "message": "ftrace: rename ftrace_match to ftrace_match_records\n\nImpact: clean up\n\nftrace_match is too generic of a name. What it really does is\nsearch all records and matches the records with the given string,\nand either sets or unsets the functions to be traced depending\non if the parameter \u0027enable\u0027 is set or not.\n\nThis allows us to make another function called ftrace_match that\ncan be used to test a single record.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "265c831cb03d533cbe159af45798ac9fef534260",
      "tree": "d00548a034b3092f8f42086f348c70b784c1df5e",
      "parents": [
        "0c75a3ed633419d75d823d5dcb05d42924c6ae61"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 13 12:43:56 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 16:25:12 2009 -0500"
      },
      "message": "ftrace: add do_for_each_ftrace_rec and while_for_each_ftrace_rec\n\nImpact: clean up\n\nTo iterate over all the functions that dynamic trace knows about\nit requires two for loops. One to iterate over the pages and the\nother to iterate over the records within the page.\n\nThere are several duplications of these loops in ftrace.c. This\npatch creates the macros do_for_each_ftrace_rec and\nwhile_for_each_ftrace_rec to handle this logic, and removes the\nduplicate code.\n\nWhile making this change, I also discovered and fixed a small\nbug that one of the iterations should exit the loop after it found the\nrecord it was searching for. This used a break when it should have\nused a goto, since there were two loops it needed to break out\nfrom.  No real harm was done by this bug since it would only continue\nto search the other records, and the code was in a slow path anyway.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "0c75a3ed633419d75d823d5dcb05d42924c6ae61",
      "tree": "1878804d15a37d1c1603d906933cee0e7b5c8787",
      "parents": [
        "5fb896a4e916e72efec4772b66be1cce3d6a9143"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 11:21:52 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 16 16:21:35 2009 -0500"
      },
      "message": "ftrace: state that all functions are enabled in set_ftrace_filter\n\nImpact: clean up, make set_ftrace_filter less confusing\n\nThe set_ftrace_filter shows only the functions that will be traced.\nBut when it is empty, it will trace all functions. This can be a bit\nconfusing.\n\nThis patch makes set_ftrace_filter show:\n\n  #### all functions enabled ####\n\nWhen all functions will be traced, and we do not filter only a select\nfew.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "72b623c73685e86b70a51855e1058ebc98a9f6ed",
      "tree": "ce0942ca907ad09480358076fd2724f8c1d10547",
      "parents": [
        "9abd60304816a5b0fd9e51034f78e3eaed89f901",
        "b5f9fd0f8a05c9bafb91a9a85b9110938d8e585b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 15 20:43:03 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 15 20:43:03 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/power-tracer\n"
    },
    {
      "commit": "a234aa9ecdf47a5461573a21dc0b154278df5ba8",
      "tree": "35b53e048a4298e43de45883b446303ba17daee9",
      "parents": [
        "9abd60304816a5b0fd9e51034f78e3eaed89f901"
      ],
      "author": {
        "name": "Rakib Mullick",
        "email": "rakib.mullick@gmail.com",
        "time": "Sat Feb 14 09:36:00 2009 +0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 15 20:41:08 2009 +0100"
      },
      "message": "tracing: fix section mismatch in trace_hw_branches.c\n\nThe function bts_trace_init() references a variable\nbts_hotcpu_notifier which is marked\nas __cpuinitdata. Thus causes section mismatch. This patch fixes it.\n\n   LD      kernel/trace/built-in.o\n WARNING: kernel/trace/built-in.o(.text+0xc90c): Section mismatch in\n reference from the function bts_trace_init() to the variable\n .cpuinit.data:bts_hotcpu_notifier\n The function bts_trace_init() references\n the variable __cpuinitdata bts_hotcpu_notifier.\n This is often because bts_trace_init lacks a __cpuinitdata\n annotation or the annotation of bts_hotcpu_notifier is wrong.\n\n WARNING: kernel/trace/built-in.o(.text+0xc92a): Section mismatch in\n reference from the function bts_trace_reset() to the variable\n .cpuinit.data:bts_hotcpu_notifier\n The function bts_trace_reset() references\n the variable __cpuinitdata bts_hotcpu_notifier.\n This is often because bts_trace_reset lacks a __cpuinitdata\n annotation or the annotation of bts_hotcpu_notifier is wrong.\n\nSigned-off-by: Rakib Mullick \u003crakib.mullick@gmail.com\u003e\nCc: markus.t.metzger@gmail.com\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9abd60304816a5b0fd9e51034f78e3eaed89f901",
      "tree": "5fb431bbfd133b6e2d19dabd196d87ea5bf281cf",
      "parents": [
        "5fb896a4e916e72efec4772b66be1cce3d6a9143",
        "f9aa28adfc6a4b01268ebb6d88566cca8627905f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 15 20:08:55 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 15 20:08:55 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027 and \u0027tracing/urgent\u0027 into tracing/core\n\nConflicts:\n\tkernel/trace/trace_mmiotrace.c\n"
    },
    {
      "commit": "6bc5c366b1a45ca18fba6851f62db5743b3f6db5",
      "tree": "c3e2a092760b2eca5ff052cbea77cc84502b8016",
      "parents": [
        "391b170f10e669dd429aa47bce998c2fa839404c"
      ],
      "author": {
        "name": "Pekka Paalanen",
        "email": "pq@iki.fi",
        "time": "Sat Jan 03 21:23:51 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 15 20:03:28 2009 +0100"
      },
      "message": "trace: mmiotrace to the tracer menu in Kconfig\n\nImpact: cosmetic change in Kconfig menu layout\n\nThis patch was originally suggested by Peter Zijlstra, but seems it\nwas forgotten.\n\nCONFIG_MMIOTRACE and CONFIG_MMIOTRACE_TEST were selectable\ndirectly under the Kernel hacking / debugging menu in the kernel\nconfiguration system. They were present only for x86 and x86_64.\n\nOther tracers that use the ftrace tracing framework are in their own\nsub-menu. This patch moves the mmiotrace configuration options there.\nSince the Kconfig file, where the tracer menu is, is not architecture\nspecific, HAVE_MMIOTRACE_SUPPORT is introduced and provided only by\nx86/x86_64. CONFIG_MMIOTRACE now depends on it.\n\nSigned-off-by: Pekka Paalanen \u003cpq@iki.fi\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "391b170f10e669dd429aa47bce998c2fa839404c",
      "tree": "0bb0cb203ced1fc1f5ed71832fbfb21fdbe8047f",
      "parents": [
        "d2f8d7ee1a9b4650b4e43325b321801264f7c37a"
      ],
      "author": {
        "name": "Pekka Paalanen",
        "email": "pq@iki.fi",
        "time": "Tue Jan 06 13:57:11 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 15 20:02:42 2009 +0100"
      },
      "message": "mmiotrace: count events lost due to not recording\n\nImpact: enhances lost events counting in mmiotrace\n\nThe tracing framework, or the ring buffer facility it uses, has a switch\nto stop recording data. When recording is off, the trace events will be\nlost. The framework does not count these, so mmiotrace has to count them\nitself.\n\nSigned-off-by: Pekka Paalanen \u003cpq@iki.fi\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fb5ae64fdde29236e1a15e0366946df7060f41f2",
      "tree": "86be58998529fa84282ec1b98040d707e4b61686",
      "parents": [
        "37bed90094fdb1eea6e4afec6a200d4e60143e55"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Fri Feb 13 14:04:21 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 13 08:07:40 2009 -0800"
      },
      "message": "User namespaces: Only put the userns when we unhash the uid\n\nuids in namespaces other than init don\u0027t get a sysfs entry.\n\nFor those in the init namespace, while we\u0027re waiting to remove\nthe sysfs entry for the uid the uid is still hashed, and\nalloc_uid() may re-grab that uid without getting a new\nreference to the user_ns, which we\u0027ve already put in free_user\nbefore scheduling remove_user_sysfs_dir().\n\nReported-and-tested-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nTested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b5f9fd0f8a05c9bafb91a9a85b9110938d8e585b",
      "tree": "14e84d393f5dd1235fc6e256564d80e965daf3a7",
      "parents": [
        "45141d4667d208421ca787a3301542b6a5e0b112"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Wed Feb 11 13:57:25 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Feb 13 09:06:18 2009 -0500"
      },
      "message": "tracing: convert c/p state power tracer to use tracepoints\n\nConvert the c/p state \"power\" tracer to use tracepoints. Avoids a\nfunction call when the tracer is disabled.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "3997ad317fdf9ecdb5702e2b4fd1f8229814ff8c",
      "tree": "be0b1802f65e85157d97acac38f1bd310ba6d626",
      "parents": [
        "37bed90094fdb1eea6e4afec6a200d4e60143e55"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Feb 12 15:00:52 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 13 13:04:05 2009 +0100"
      },
      "message": "timers: more consistently use clock vs timer\n\nWhile reviewing the manpages, I noticed I\u0027d missed some clock vs timer sites.\n\nMake sure that all timer functions call cpu_timer_sample_group() and not\ncpu_clock_sample_group(). This ensures that we enable the process wide timer\nin time, and therefore pay the O(n) thread group cost from the syscall.\n\nNot doing it here, will result in the first jiffy tick after setting the timer\ndoing this, resulting in a very expensive tick (but only once) and a delay in\nactually starting the timer.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d351c8db95953b1b673de3966cb39640dc6c2f5f",
      "tree": "a080910d3ced94780e5d16401f7aab4e3d777c8d",
      "parents": [
        "1c511f740fe7031867f51831854360e8be1ba34c",
        "45141d4667d208421ca787a3301542b6a5e0b112"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 13 10:26:45 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 13 10:26:45 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/ftrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/ftrace\n"
    },
    {
      "commit": "1c511f740fe7031867f51831854360e8be1ba34c",
      "tree": "bd678fbc8117f751a3d1f8dc93b91c215ceaf66f",
      "parents": [
        "e7669b8e329255bbcb40af65b38e342825d97a46",
        "00f62f614bb713027b9296068d1879fbca511eb7",
        "b22f4858126a6aa852ad745b94f6b25dbdea708e",
        "071a0bc2ceace31266836801510879407a3701fa"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 13 10:25:18 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 13 10:25:18 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/ftrace\u0027, \u0027tracing/ring-buffer\u0027, \u0027tracing/sysprof\u0027, \u0027tracing/urgent\u0027 and \u0027linus\u0027 into tracing/core\n"
    },
    {
      "commit": "45141d4667d208421ca787a3301542b6a5e0b112",
      "tree": "7f1cedbd431b9b01345730e338c179e6bb8029ad",
      "parents": [
        "e7669b8e329255bbcb40af65b38e342825d97a46"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 12 13:19:48 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 12 13:39:46 2009 -0500"
      },
      "message": "ring-buffer: rename label out_unlock to out_reset\n\nImpact: clean up\n\nWhile reviewing the ring buffer code, I thougth I saw a bug with\n\n\tif (!__raw_spin_trylock(\u0026cpu_buffer-\u003elock))\n\t\tgoto out_unlock;\n\nBut I forgot that we use a variable \"lock_taken\" that is set if\nthe spinlock is taken, and only unlock it if that variable is set.\n\nTo avoid further confusion from other reviewers, this patch\nrenames the label out_unlock with out_reset, which is the more\nappropriate name.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "a0490fa35dc0022ef95f64802e8edf18c411c790",
      "tree": "3d284fad3edfb960b28cfb77cc0a36c532dc075d",
      "parents": [
        "b578f3fcca1e78624dfb5f358776e63711d7fda2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 12 11:35:40 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 12 11:57:36 2009 +0100"
      },
      "message": "sched: cpu hotplug fix\n\nrq_attach_root() does a kfree() with the runqueue lock held.\n\nThat\u0027s not a very wise move, fix it.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cfebe563bd0a3ff97e1bc167123120d59c7a84db",
      "tree": "6178bf45bcccaf3d43d87cfe0eef059d849c7140",
      "parents": [
        "01c4a4283137d24c9cc3785f1f312e895a18f273"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Feb 11 13:04:36 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 11 14:25:36 2009 -0800"
      },
      "message": "cgroups: fix lockdep subclasses overflow\n\nI enabled all cgroup subsystems when compiling kernel, and then:\n # mount -t cgroup -o net_cls xxx /mnt\n # mkdir /mnt/0\n\nThis showed up immediately:\n BUG: MAX_LOCKDEP_SUBCLASSES too low!\n turning off the locking correctness validator.\n\nIt\u0027s caused by the cgroup hierarchy lock:\n\tfor (i \u003d 0; i \u003c CGROUP_SUBSYS_COUNT; i++) {\n\t\tstruct cgroup_subsys *ss \u003d subsys[i];\n\t\tif (ss-\u003eroot \u003d\u003d root)\n\t\t\tmutex_lock_nested(\u0026ss-\u003ehierarchy_mutex, i);\n\t}\n\nNow we have 9 cgroup subsystems, and the above \u0027i\u0027 for net_cls is 8, but\nMAX_LOCKDEP_SUBCLASSES is 8.\n\nThis patch uses different lockdep keys for different subsystems.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fc3501d411d34823fb9be248a95a0c44f945866f",
      "tree": "9a16de761b4c7d3401149a212b8004df23fbbcca",
      "parents": [
        "35887b1cf74dc751dd0574b26515142d3cea9376"
      ],
      "author": {
        "name": "Sven Wegener",
        "email": "sven.wegener@stealer.net",
        "time": "Wed Feb 11 13:04:23 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 11 14:25:35 2009 -0800"
      },
      "message": "mm: fix dirty_bytes/dirty_background_bytes sysctls on 64bit arches\n\nWe need to pass an unsigned long as the minimum, because it gets casted\nto an unsigned long in the sysctl handler. If we pass an int, we\u0027ll\naccess four more bytes on 64bit arches, resulting in a random minimum\nvalue.\n\n[rientjes@google.com: fix type of `old_bytes\u0027]\nSigned-off-by: Sven Wegener \u003csven.wegener@stealer.net\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2fff78c784ed97a8e5aa225ef5228f0a6d862d82",
      "tree": "2adfba52dbd8e410909a538b7c27189932acc995",
      "parents": [
        "6c6f1f0f4db31a192916eaa31ec2f114fda7d5e5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Wed Feb 11 18:10:10 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 11 18:24:08 2009 +0100"
      },
      "message": "futex: fix reference leak\n\nCatalin noticed that (38d47c1b7075: futex: rely on get_user_pages() for\nshared futexes) caused an mm_struct leak.\n\nSome tracing with the function graph tracer quickly pointed out that\nfutex_wait() has exit paths with unbalanced reference counts.\n\nThis regression was discovered by kmemleak.\n\nReported-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: \"Pallipadi, Venkatesh\" \u003cvenkatesh.pallipadi@intel.com\u003e\nTested-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6c6f1f0f4db31a192916eaa31ec2f114fda7d5e5",
      "tree": "565a79aa9db8332b6dd592ca241690e46dbc0225",
      "parents": [
        "94dba895333a4321f27360e42b807260ae36bda4",
        "fc631c82e1734d718ff0832558f64c8f5d185f26"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 11 08:25:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 11 08:25:06 2009 -0800"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: revert recent sync wakeup changes\n"
    }
  ],
  "next": "94dba895333a4321f27360e42b807260ae36bda4"
}
