)]}'
{
  "log": [
    {
      "commit": "339ae5d3c3fc2025e3657637921495fd600027c7",
      "tree": "7749cf0d5c2d4a0cfd9029038d55b94478b9b56c",
      "parents": [
        "76aa81118ddfbb3dc31533030cf3ec329dd067a6"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Apr 17 10:34:30 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 17 18:04:36 2009 +0200"
      },
      "message": "tracing: fix file mode of trace and README\n\ntrace is read-write and README is read-only.\n\n[ Impact: fix /debug/tracing/ file permissions. ]\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49E7EAB6.4070605@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9ea21c1ecdb35ecdcac5fd9d95f62a1f6a7ffec0",
      "tree": "c38a7f2f30d145e7d53b24159b99bc4734d291b5",
      "parents": [
        "69abe6a5d18a9394baa325bab8f57748b037c517"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Apr 16 12:15:44 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 17 17:10:35 2009 +0200"
      },
      "message": "tracing/events: perform function tracing in event selftests\n\nWe can find some bugs in the trace events if we stress the writes as well.\nThe function tracer is a good way to stress the events.\n\n[ Impact: extend scope of event tracer self-tests ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20090416161746.604786131@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "69abe6a5d18a9394baa325bab8f57748b037c517",
      "tree": "4432c60f73d14af510ab13b9b474e174fd2454c5",
      "parents": [
        "d1b182a8d49ed6416325b4e0a1cb0f17cd4e702a"
      ],
      "author": {
        "name": "Avadh Patel",
        "email": "avadh4all@gmail.com",
        "time": "Fri Apr 10 16:04:48 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 17 17:04:12 2009 +0200"
      },
      "message": "tracing: add saved_cmdlines file to show cached task comms\n\nExport the cached task comms to userspace. This allows user apps to translate\nthe pids from a trace into their respective task command lines.\n\n[ Impact: let userspace apps reading binary buffer know comm\u0027s of pids ]\n\nSigned-off-by: Avadh Patel \u003cavadh4all@gmail.com\u003e\n[ added error checking and use of buf pointer to index file_buf ]\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d1b182a8d49ed6416325b4e0a1cb0f17cd4e702a",
      "tree": "f482bfba39828503f32ed994829d2d3cd6b81bfe",
      "parents": [
        "e6187007d6c365b551c69ea3df46f06fd1c8bd19"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Apr 15 16:53:47 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 17 17:03:28 2009 +0200"
      },
      "message": "tracing/events/ring-buffer: expose format of ring buffer headers to users\n\nCurrently, every thing needed to read the binary output from the\nring buffers is available, with the exception of the way the ring\nbuffers handles itself internally.\n\nThis patch creates two special files in the debugfs/tracing/events\ndirectory:\n\n # cat /debug/tracing/events/header_page\n        field: u64 timestamp;   offset:0;       size:8;\n        field: local_t commit;  offset:8;       size:8;\n        field: char data;       offset:16;      size:4080;\n\n # cat /debug/tracing/events/header_event\n        type        :    2 bits\n        len         :    3 bits\n        time_delta  :   27 bits\n        array       :   32 bits\n\n        padding     : type \u003d\u003d 0\n        time_extend : type \u003d\u003d 1\n        data        : type \u003d\u003d 3\n\nThis is to allow a userspace app to see if the ring buffer format changes\nor not.\n\n[ Impact: allow userspace apps to know of ringbuffer format changes ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "e6187007d6c365b551c69ea3df46f06fd1c8bd19",
      "tree": "6607598ccbe4f10470114f3667649c603d19cc0c",
      "parents": [
        "93eb677d74a4f7d3edfb678c94f6c0544d9fbad2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Apr 15 13:36:40 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 17 17:01:37 2009 +0200"
      },
      "message": "tracing/events: add startup tests for events\n\nAs events start to become popular, and the new way to add tracing\ninfrastructure into ftrace, it is important to catch any problems\nthat might happen with a mistake in the TRACE_EVENT macro.\n\nThis patch introduces a startup self test on the registered trace\nevents. Note, it can only do a generic test, any type of testing that\nneeds more involement is needed to be implemented by the tracepoint\ncreators.\n\nThe test goes down one by one enabling a trace point and running\nsome random tasks (random in the sense that I just made them up).\nThose tasks are creating threads, grabbing mutexes and spinlocks\nand using workqueues.\n\nAfter testing each event individually, it does the same test after\nenabling each system of trace points. Like sched, irq, lockdep.\n\nThen finally it enables all tracepoints and performs the tasks again.\nThe output to the console on bootup will look like this when everything\nworks:\n\nRunning tests on trace events:\nTesting event kfree_skb: OK\nTesting event kmalloc: OK\nTesting event kmem_cache_alloc: OK\nTesting event kmalloc_node: OK\nTesting event kmem_cache_alloc_node: OK\nTesting event kfree: OK\nTesting event kmem_cache_free: OK\nTesting event irq_handler_exit: OK\nTesting event irq_handler_entry: OK\nTesting event softirq_entry: OK\nTesting event softirq_exit: OK\nTesting event lock_acquire: OK\nTesting event lock_release: OK\nTesting event sched_kthread_stop: OK\nTesting event sched_kthread_stop_ret: OK\nTesting event sched_wait_task: OK\nTesting event sched_wakeup: OK\nTesting event sched_wakeup_new: OK\nTesting event sched_switch: OK\nTesting event sched_migrate_task: OK\nTesting event sched_process_free: OK\nTesting event sched_process_exit: OK\nTesting event sched_process_wait: OK\nTesting event sched_process_fork: OK\nTesting event sched_signal_send: OK\nRunning tests on trace event systems:\nTesting event system skb: OK\nTesting event system kmem: OK\nTesting event system irq: OK\nTesting event system lockdep: OK\nTesting event system sched: OK\nRunning tests on all trace events:\nTesting all events: OK\n\n[ folded in:\n\n  tracing: add #include \u003clinux/delay.h\u003e to fix build failure in test_work()\n\n  This build failure occured on a few rare configs:\n\n   kernel/trace/trace_events.c: In function ‘test_work’:\n   kernel/trace/trace_events.c:975: error: implicit declaration of function ‘udelay’\n   kernel/trace/trace_events.c:980: error: implicit declaration of function ‘msleep’\n\n  delay.h is included in way too many other headers, hiding cases\n  where new usage is added without header inclusion.\n\n  [ Impact: build fix ]\n\n  Signed-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n]\n\n[ Impact: add event tracer self-tests ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "93eb677d74a4f7d3edfb678c94f6c0544d9fbad2",
      "tree": "8bbc46895be623a78316230362e94969dbb02135",
      "parents": [
        "f3948f8857ef5de239f28a61dddb1554a0ae4c2c"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Apr 15 13:24:06 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 17 16:59:15 2009 +0200"
      },
      "message": "ftrace: use module notifier for function tracer\n\nThe hooks in the module code for the function tracer must be called\nbefore any of that module code runs. The function tracer hooks\nmodify the module (replacing calls to mcount to nops). If the code\nis executed while the change occurs, then the CPU can take a GPF.\n\nTo handle the above with a bit of paranoia, I originally implemented\nthe hooks as calls directly from the module code.\n\nAfter examining the notifier calls, it looks as though the start up\nnotify is called before any of the module\u0027s code is executed. This makes\nthe use of the notify safe with ftrace.\n\nOnly the startup notify is required to be \"safe\". The shutdown simply\nremoves the entries from the ftrace function list, and does not modify\nany code.\n\nThis change has another benefit. It removes a issue with a reverse dependency\nin the mutexes of ftrace_lock and module_mutex.\n\n[ Impact: fix lock dependency bug, cleanup ]\n\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f3948f8857ef5de239f28a61dddb1554a0ae4c2c",
      "tree": "62e5568c18b944d086366510fb0ff8ed71682897",
      "parents": [
        "1d54ad6da9192fed5dd3b60224d9f2dfea0dcd82"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Apr 15 11:02:56 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 16 10:11:01 2009 +0200"
      },
      "message": "blktrace: fix context-info when mixed-using blk tracer and trace events\n\nWhen current tracer is set to blk tracer, TRACE_ITER_CONTEXT_INFO is\nunset, but actually context-info is printed:\n\n    pdflush-431   [000]   821.181576:   8,0    P   N [pdflush]\n\nAnd then if we enable TRACE_ITER_CONTEXT_INFO:\n\n    # echo context-info \u003e trace_options\n\nWe\u0027ll see context-info printed twice. What\u0027s worse, when we use blk\ntracer and trace events at the same time, we\u0027ll see no context-info\nfor trace events at all:\n\n    jbd2_commit_logging: dev dm-0:8 transaction 333227\n    jbd2_end_commit: dev dm-0:8 transaction 333227 head 332814\n      rm-25433 [001]  9578.307485:   8,18   m   N cfq25433 slice expired t\u003d0\n      rm-25433 [001]  9578.307486:   8,18   m   N cfq25433 put_queue\n\nThis patch adds blk_tracer-\u003eset_flags(), and context-info flag is unset\nonly when we set the output to classic mode.\n\nNote after this patch, one should unset context-info explicitly if he\nwants to get binary output that can be parsed by blkparse:\n\n    # echo nocontext-info \u003e trace_options\n    # echo bin \u003e trace_options\n    # echo blk \u003e current_tracer\n    # cat trace_pipe | blkparse -i -\n\nReported-by: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49E54E60.50408@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1d54ad6da9192fed5dd3b60224d9f2dfea0dcd82",
      "tree": "fd5917f144ec820b933795bedd7eddea96bee374",
      "parents": [
        "9908c30997b8a73c95f836170b9998dae9aa3f4a"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Apr 14 14:00:05 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 16 10:10:59 2009 +0200"
      },
      "message": "blktrace: add trace/ to /sys/block/sda\n\nImpact: allow ftrace-plugin blktrace to trace device-mapper devices\n\nTo trace a single partition:\n  # echo 1 \u003e /sys/block/sda/sda1/enable\n\nTo trace the whole sda instead:\n  # echo 1 \u003e /sys/block/sda/enable\n\nThus we also fix an issue reported by Ted, that ftrace-plugin blktrace\ncan\u0027t be used to trace device-mapper devices.\n\nNow:\n\n  # echo 1 \u003e /sys/block/dm-0/trace/enable\n  echo: write error: No such device or address\n  # mount -t ext4 /dev/dm-0 /mnt\n  # echo 1 \u003e /sys/block/dm-0/trace/enable\n  # echo blk \u003e /debug/tracing/current_tracer\n\nReported-by: Theodore Tso \u003ctytso@mit.edu\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Shawn Du \u003cduyuyang@gmail.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nLKML-Reference: \u003c49E42665.6020506@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9908c30997b8a73c95f836170b9998dae9aa3f4a",
      "tree": "d44d6d663a150c26b5d7be6edebb1abbb88ecc94",
      "parents": [
        "d0deef5b14af7d5bbd0003a0a2a1a32326e20a6d"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Apr 14 13:59:34 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 16 10:10:58 2009 +0200"
      },
      "message": "blktrace: support per-partition tracing for ftrace plugin\n\nThe previous patch adds support to trace a single partition for\nrelay+ioctl blktrace, and this patch is for ftrace plugin blktrace:\n\n  # echo 1 \u003e /sys/block/sda/sda7/enable\n  # cat start_lba\n  102398373\n  # cat end_lba\n  102703545\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Shawn Du \u003cduyuyang@gmail.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nLKML-Reference: \u003c49E42646.4060608@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d0deef5b14af7d5bbd0003a0a2a1a32326e20a6d",
      "tree": "de1d438935a4cc50dd9d7e0ccccc3cfc5c7e6c06",
      "parents": [
        "9cfe06f8cd5c8c3ad6ab323973e87dde670642b8"
      ],
      "author": {
        "name": "Shawn Du",
        "email": "duyuyang@gmail.com",
        "time": "Tue Apr 14 13:58:56 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 16 10:10:57 2009 +0200"
      },
      "message": "blktrace: support per-partition tracing\n\nThough one can specify \u0027-d /dev/sda1\u0027 when using blktrace, it still\ntraces the whole sda.\n\nTo support per-partition tracing, when we start tracing, we initialize\nbt-\u003estart_lba and bt-\u003eend_lba to the start and end sector of that\npartition.\n\nNote some actions are per device, thus we don\u0027t filter 0-sector events.\n\nThe original patch and discussion can be found here:\n\thttp://marc.info/?l\u003dlinux-btrace\u0026m\u003d122949374214540\u0026w\u003d2\n\nSigned-off-by: Shawn Du \u003cduyuyang@gmail.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nLKML-Reference: \u003c49E42620.4050701@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ad8d75fff811a6a230f7f43b05a6483099349533",
      "tree": "764f75c0785b29067b141719b6e8000f005da7fd",
      "parents": [
        "ecda8ae02a08ef065ff387f5cb2a2d4999da2408"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Apr 14 19:39:12 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 22:05:43 2009 -0400"
      },
      "message": "tracing/events: move trace point headers into include/trace/events\n\nImpact: clean up\n\nCreate a sub directory in include/trace called events to keep the\ntrace point headers in their own separate directory. Only headers that\ndeclare trace points should be defined in this directory.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "61f919a12fbdc3fd20f980a34a118d597198a392",
      "tree": "0c8ee118fabb29ff2c0be699948cb4b00627b543",
      "parents": [
        "6d723736e472f7a0cd5b62c84152fceead241328"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Apr 14 18:22:32 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 22:04:19 2009 -0400"
      },
      "message": "tracing/events: fix compile for modules disabled\n\nImpact: compile fix\n\nThe addition of TRACE_EVENT for modules breaks the build for when\nmodules are disabled. This code fixes that.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "6d723736e472f7a0cd5b62c84152fceead241328",
      "tree": "8df2f6c47ebdfdeb8979758c877a5abbd9c06aef",
      "parents": [
        "17c873ec280a03894bc718af817f7f24fa787ae1"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 10 14:53:50 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 12:58:03 2009 -0400"
      },
      "message": "tracing/events: add support for modules to TRACE_EVENT\n\nImpact: allow modules to add TRACE_EVENTS on load\n\nThis patch adds the final hooks to allow modules to use the TRACE_EVENT\nmacro. A notifier and a data structure are used to link the TRACE_EVENTs\ndefined in the module to connect them with the ftrace event tracing system.\n\nIt also adds the necessary automated clean ups to the trace events when a\nmodule is removed.\n\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "17c873ec280a03894bc718af817f7f24fa787ae1",
      "tree": "3acdcd41c2b80c207932625cc5e132056954d803",
      "parents": [
        "a59fd6027218bd7c994e39d14afe0242f895144f"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 10 18:12:50 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 12:58:01 2009 -0400"
      },
      "message": "tracing/events: add export symbols for trace events in modules\n\nImpact: let modules add trace events\n\nThe trace event code requires some functions to be exported to allow\nmodules to use TRACE_EVENT. This patch adds EXPORT_SYMBOL_GPL to the\nnecessary functions.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a59fd6027218bd7c994e39d14afe0242f895144f",
      "tree": "c22e6ff2924726319eac84c480eca72066bad660",
      "parents": [
        "f42c85e74faa422cf0bc747ed808681145448f88"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 10 13:52:20 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 12:58:00 2009 -0400"
      },
      "message": "tracing/events: convert event call sites to use a link list\n\nImpact: makes it possible to define events in modules\n\nThe events are created by reading down the section that they are linked\nin by the macros. But this is not scalable to modules. This patch converts\nthe manipulations to use a global link list, and on boot up it adds\nthe items in the section to the list.\n\nThis change will allow modules to add their tracing events to the list as\nwell.\n\nNote, this change alone does not permit modules to use the TRACE_EVENT macros,\nbut the change is needed for them to eventually do so.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f42c85e74faa422cf0bc747ed808681145448f88",
      "tree": "3775dc0a402f7da5247aa8ceb92ae89590038199",
      "parents": [
        "97f2025153499faa17267a0d4e18c7afaf73f39d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Apr 13 12:25:37 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 12:57:59 2009 -0400"
      },
      "message": "tracing/events: move the ftrace event tracing code to core\n\nThis patch moves the ftrace creation into include/trace/ftrace.h and\nsimplifies the work of developers in adding new tracepoints.\nJust the act of creating the trace points in include/trace and including\ndefine_trace.h will create the events in the debugfs/tracing/events\ndirectory.\n\nThis patch removes the need of include/trace/trace_events.h\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "97f2025153499faa17267a0d4e18c7afaf73f39d",
      "tree": "cd3ea51a93093ea5250ef38b4b5bf6c2aa3f9ed5",
      "parents": [
        "9504504cbab29ecb694186b1c5b15d3579c43c51"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Apr 13 11:20:49 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 12:57:58 2009 -0400"
      },
      "message": "tracing/events: move declarations from trace directory to core include\n\nIn preparation to allowing trace events to happen in modules, we need\nto move some of the local declarations in the kernel/trace directory\ninto include/linux.\n\nThis patch simply moves the declarations and performs no context changes.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "9504504cbab29ecb694186b1c5b15d3579c43c51",
      "tree": "fd91bec634dfff191699616523812a3d4ffe6348",
      "parents": [
        "a8d154b009168337494fbf345671bab74d3e4b8b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Apr 11 12:59:57 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 12:57:57 2009 -0400"
      },
      "message": "tracing: make trace_seq operations available for core kernel\n\nIn the process to make TRACE_EVENT macro work for modules, the trace_seq\noperations must be available for core kernel code.\n\nThese operations are quite useful and can be used for other implementations.\n\nThe main idea is that we create a trace_seq handle that acts very much\nlike the seq_file handle.\n\n\tstruct trace_seq *s \u003d kmalloc(sizeof(*s, GFP_KERNEL);\n\n\ttrace_seq_init(s);\n\ttrace_seq_printf(s, \"some data %d\\n\", variable);\n\n\tprintk(\"%s\", s-\u003ebuffer);\n\nThe main use is to allow a top level function call several other functions\nthat may store printf like data into the buffer. Then at the end, the top\nlevel function can process all the data with any method it would like to.\nIt could be passed to userspace, output via printk or even use seq_file:\n\n\ttrace_seq_to_user(s, ubuf, cnt);\n\tseq_puts(m, s-\u003ebuffer);\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a8d154b009168337494fbf345671bab74d3e4b8b",
      "tree": "4097612e1a5cc8bf7658542f7d0f51b815113eaf",
      "parents": [
        "ea20d9293ce423a39717ed4375393129a2e701f9"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 10 09:36:00 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 12:57:28 2009 -0400"
      },
      "message": "tracing: create automated trace defines\n\nThis patch lowers the number of places a developer must modify to add\nnew tracepoints. The current method to add a new tracepoint\ninto an existing system is to write the trace point macro in the\ntrace header with one of the macros TRACE_EVENT, TRACE_FORMAT or\nDECLARE_TRACE, then they must add the same named item into the C file\nwith the macro DEFINE_TRACE(name) and then add the trace point.\n\nThis change cuts out the needing to add the DEFINE_TRACE(name).\nEvery file that uses the tracepoint must still include the trace/\u003ctype\u003e.h\nfile, but the one C file must also add a define before the including\nof that file.\n\n #define CREATE_TRACE_POINTS\n #include \u003ctrace/mytrace.h\u003e\n\nThis will cause the trace/mytrace.h file to also produce the C code\nnecessary to implement the trace point.\n\nNote, if more than one trace/\u003ctype\u003e.h is used to create the C code\nit is best to list them all together.\n\n #define CREATE_TRACE_POINTS\n #include \u003ctrace/foo.h\u003e\n #include \u003ctrace/bar.h\u003e\n #include \u003ctrace/fido.h\u003e\n\nThanks to Mathieu Desnoyers and Christoph Hellwig for coming up with\nthe cleaner solution of the define above the includes over my first\ndesign to have the C code include a \"special\" header.\n\nThis patch converts sched, irq and lockdep and skb to use this new\nmethod.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ea20d9293ce423a39717ed4375393129a2e701f9",
      "tree": "30cbfd532e6541c17eb69a63044cfe7bce6cf974",
      "parents": [
        "0a19e53c1514ad8e9c3cbab40c6c3f52c86f403d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 10 08:54:16 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 09:43:40 2009 -0400"
      },
      "message": "tracing: consolidate trace and trace_event headers\n\nImpact: clean up\n\nNeil Horman (et. al.) criticized the way the trace events were broken up\ninto two files. The reason for that was that ftrace needed to separate out\nthe declarations from where the #include \u003clinux/tracepoint.h\u003e was used.\nIt then dawned on me that the tracepoint.h header only needs to define the\nTRACE_EVENT macro if it is not already defined.\n\nThe solution is simply to test if TRACE_EVENT is defined, and if it is not\nthen the linux/tracepoint.h header can define it. This change consolidates\nall the \u003ctraces\u003e.h and \u003ctraces\u003e_event_types.h into the \u003ctraces\u003e.h file.\n\nReported-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nReported-by: Theodore Tso \u003ctytso@mit.edu\u003e\nReported-by: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Zhaolei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0a19e53c1514ad8e9c3cbab40c6c3f52c86f403d",
      "tree": "1089246a64f65b2b3c2ba29182ed4f9ce9ad375e",
      "parents": [
        "b5c851a88a369854c04e511cefb84ea2d0cfa209"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Mon Apr 13 03:17:50 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 14 00:03:55 2009 +0200"
      },
      "message": "tracing/filters: allow on-the-fly filter switching\n\nThis patch allows event filters to be safely removed or switched\non-the-fly while avoiding the use of rcu or the suspension of tracing of\nprevious versions.\n\nIt does it by adding a new filter_pred_none() predicate function which\ndoes nothing and by never deallocating either the predicates or any of\nthe filter_pred members used in matching; the predicate lists are\nallocated and initialized during ftrace_event_calls initialization.\n\nWhenever a filter is removed or replaced, the filter_pred_* functions\ncurrently in use by the affected ftrace_event_call are immediately\nswitched over to to the filter_pred_none() function, while the rest of\nthe filter_pred members are left intact, allowing any currently\nexecuting filter_pred_* functions to finish up, using the values they\u0027re\ncurrently using.\n\nIn the case of filter replacement, the new predicate values are copied\ninto the old predicates after the above step, and the filter_pred_none()\nfunctions are replaced by the filter_pred_* functions for the new\nfilter.  In this case, it is possible though very unlikely that a\nprevious filter_pred_* is still running even after the\nfilter_pred_none() switch and the switch to the new filter_pred_*.  In\nthat case, however, because nothing has been deallocated in the\nfilter_pred, the worst that can happen is that the old filter_pred_*\nfunction sees the new values and as a result produces either a false\npositive or a false negative, depending on the values it finds.\n\nSo one downside to this method is that rarely, it can produce a bad\nmatch during the filter switch, but it should be possible to live with\nthat, IMHO.\n\nThe other downside is that at least in this patch the predicate lists\nare always pre-allocated, taking up memory from the start.  They could\nprobably be allocated on first-use, and de-allocated when tracing is\ncompletely stopped - if this patch makes sense, I could create another\none to do that later on.\n\nOh, and it also places a restriction on the size of __arrays in events,\ncurrently set to 128, since they can\u0027t be larger than the now embedded\nstr_val arrays in the filter_pred struct.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: paulmck@linux.vnet.ibm.com\nLKML-Reference: \u003c1239610670.6660.49.camel@tropicana\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b5c851a88a369854c04e511cefb84ea2d0cfa209",
      "tree": "55084d3d51708f90f27d0a70db5ab63916942f14",
      "parents": [
        "eb02ce017dd83985041a7e54c6449f92d53b026f",
        "80a04d3f2f94fb68b5df05e3ac6697130bc3467a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 14 00:02:16 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 14 00:02:22 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/core\n\nMerge reason: merge latest tracing fixes to avoid conflicts in\n              kernel/trace/trace_events_filter.c with upcoming change\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "eb02ce017dd83985041a7e54c6449f92d53b026f",
      "tree": "7f52a3e92bf3dae1f3c7754a58ab76fb2eceb2e1",
      "parents": [
        "5f77a88b3f8268b11940b51d2e03d26a663ceb90"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Wed Apr 08 03:15:54 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 14 00:00:56 2009 +0200"
      },
      "message": "tracing/filters: use ring_buffer_discard_commit() in filter_check_discard()\n\nThis patch changes filter_check_discard() to make use of the new\nring_buffer_discard_commit() function and modifies the current users to\ncall the old commit function in the non-discard case.\n\nIt also introduces a version of filter_check_discard() that uses the\nglobal trace buffer (filter_current_check_discard()) for those cases.\n\nv2 changes:\n\n- fix compile error noticed by Ingo Molnar\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: fweisbec@gmail.com\nLKML-Reference: \u003c1239178554.10295.36.camel@tropicana\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5f77a88b3f8268b11940b51d2e03d26a663ceb90",
      "tree": "b9540f9391b6f03860666193787619b5bdff1375",
      "parents": [
        "77d9f465d46fd67cdb82ee5e1ab99dd57a17c486"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Wed Apr 08 03:14:01 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 14 00:00:55 2009 +0200"
      },
      "message": "tracing/infrastructure: separate event tracer from event support\n\nAdd a new config option, CONFIG_EVENT_TRACING that gets selected\nwhen CONFIG_TRACING is selected and adds everything needed by the stuff\nin trace_export - basically all the event tracing support needed by e.g.\nbprint, minus the actual events, which are only included if\nCONFIG_EVENT_TRACER is selected.\n\nSo CONFIG_EVENT_TRACER can be used to turn on or off the generated events\n(what I think of as the \u0027event tracer\u0027), while CONFIG_EVENT_TRACING turns\non or off the base event tracing support used by both the event tracer and\nthe other things such as bprint that can\u0027t be configured out.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: fweisbec@gmail.com\nLKML-Reference: \u003c1239178441.10295.34.camel@tropicana\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "77d9f465d46fd67cdb82ee5e1ab99dd57a17c486",
      "tree": "c21063ae5dff55522593f29e952c8a05958c6ce6",
      "parents": [
        "fa1b47dd85453ec7d4bcfe4aa4a2d172ba452fc3"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Apr 02 01:16:59 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 14 00:00:54 2009 +0200"
      },
      "message": "tracing/filters: use ring_buffer_discard_commit for discarded events\n\nThe ring_buffer_discard_commit makes better usage of the ring_buffer\nwhen an event has been discarded. It tries to remove it completely if\npossible.\n\nThis patch converts the trace event filtering to use\nring_buffer_discard_commit instead of the ring_buffer_event_discard.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fa1b47dd85453ec7d4bcfe4aa4a2d172ba452fc3",
      "tree": "3e5f14cccd9e4ec772310c1b2792b6f4b84bf7cb",
      "parents": [
        "e45f2e2bd298e1ff687448e5fd15a3588b5807ec"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Apr 02 00:09:41 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 14 00:00:53 2009 +0200"
      },
      "message": "ring-buffer: add ring_buffer_discard_commit\n\nThe ring_buffer_discard_commit is similar to ring_buffer_event_discard\nbut it can only be done on an event that has yet to be commited.\nUnpredictable results can happen otherwise.\n\nThe main difference between ring_buffer_discard_commit and\nring_buffer_event_discard is that ring_buffer_discard_commit will try\nto free the data in the ring buffer if nothing has addded data\nafter the reserved event. If something did, then it acts almost the\nsame as ring_buffer_event_discard followed by a\nring_buffer_unlock_commit.\n\nNote, either ring_buffer_commit_discard and ring_buffer_unlock_commit\ncan be called on an event, not both.\n\nThis commit also exports both discard functions to be usable by\nGPL modules.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e45f2e2bd298e1ff687448e5fd15a3588b5807ec",
      "tree": "353f132d53ecb3e991cf59c3d43a7664cb87b743",
      "parents": [
        "e1112b4d96859367a93468027c9635e2ac04eb3f"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Tue Mar 31 00:49:16 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 14 00:00:51 2009 +0200"
      },
      "message": "tracing/filters: add TRACE_EVENT_FORMAT_NOFILTER event macro\n\nFrederic Weisbecker suggested that the trace_special event shouldn\u0027t be\nfilterable; this patch adds a TRACE_EVENT_FORMAT_NOFILTER event macro\nthat allows an event format to be exported without having a filter\nattached, and removes filtering from the trace_special event.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e1112b4d96859367a93468027c9635e2ac04eb3f",
      "tree": "5170980ea71ee4bb5d0196880b58dbc997211b65",
      "parents": [
        "66de7792c02693b49671afe58c771fde3b092fc7"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Tue Mar 31 00:48:49 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 14 00:00:50 2009 +0200"
      },
      "message": "tracing/filters: add run-time field descriptions to TRACE_EVENT_FORMAT events\n\nThis patch adds run-time field descriptions to all the event formats\nexported using TRACE_EVENT_FORMAT.  It also hooks up all the tracers\nthat use them (i.e. the tracers in the \u0027ftrace subsystem\u0027) so they can\nalso have their output filtered by the event-filtering mechanism.\n\nWhen I was testing this, there were a couple of things that fooled me\ninto thinking the filters weren\u0027t working, when actually they were -\nI\u0027ll mention them here so others don\u0027t make the same mistakes (and file\nbug reports. ;-)\n\nOne is that some of the tracers trace multiple events e.g. the\nsched_switch tracer uses the context_switch and wakeup events, and if\nyou don\u0027t set filters on all of the traced events, the unfiltered output\nfrom the events without filters on them can make it look like the\nfiltering as a whole isn\u0027t working properly, when actually it is doing\nwhat it was asked to do - it just wasn\u0027t asked to do the right thing.\n\nThe other is that for the really high-volume tracers e.g. the function\ntracer, the volume of filtered events can be so high that it pushes the\nunfiltered events out of the ring buffer before they can be read so e.g.\ncat\u0027ing the trace file repeatedly shows either no output, or once in\nawhile some output but that isn\u0027t there the next time you read the\ntrace, which isn\u0027t what you normally expect when reading the trace file.\nIf you read from the trace_pipe file though, you can catch them before\nthey disappear.\n\nChanges from v1:\n\nAs suggested by Frederic Weisbecker:\n\n- get rid of externs in functions\n- added unlikely() to filter_check_discard()\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c751085943362143f84346d274e0011419c84202",
      "tree": "5323da4e3eba8126bf44e5107960ee2323d28a16",
      "parents": [
        "7b11428d37fe65643172feff66cd0a4d72d1932a"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Apr 12 20:06:56 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 11:37:07 2009 -0700"
      },
      "message": "PM/Hibernate: Wait for SCSI devices scan to complete during resume\n\nThere is a race between resume from hibernation and the asynchronous\nscanning of SCSI devices and to prevent it from happening we need to\ncall scsi_complete_async_scans() during resume from hibernation.\n\nIn addition, if the resume from hibernation is userland-driven, it\u0027s\nbetter to wait for all device probes in the kernel to complete before\nattempting to open the resume device.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8255309b887fcac11f791913a2d1d0b966a40d32",
      "tree": "ae2d43366b946ab0968762a2b68cc862983db372",
      "parents": [
        "bf20753c0cdf842c5c65af688c2cefd1eafa7630",
        "44e9c8b7adc52079f0535f9de0c2c2477831389b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 11:31:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 11:31:28 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing/filters: return proper error code when writing filter file\n  tracing/filters: allow user input integer to be oct or hex\n  tracing/filters: fix NULL pointer dereference\n  tracing/filters: NIL-terminate user input filter\n  ftrace: Output REC-\u003evar instead of __entry-\u003evar for trace format\n  Make __stringify support variable argument macros too\n  tracing: fix document references\n  tracing: fix splice return too large\n  tracing: update file-\u003ef_pos when splice(2) it\n  tracing: allocate page when needed\n  tracing: disable seeking for trace_pipe_raw\n"
    },
    {
      "commit": "bf20753c0cdf842c5c65af688c2cefd1eafa7630",
      "tree": "8431fb73349b928d93ce02e24c1c993562fa1f95",
      "parents": [
        "01599fca6758d2cd133e78f87426fc851c9ea725",
        "574bbe782057fdf0490dc7dec906a2dc26363e20"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 11:30:26 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 11:30:26 2009 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  lockdep: continue lock debugging despite some taints\n  lockdep: warn about lockdep disabling after kernel taint\n"
    },
    {
      "commit": "d811f236d90e58c67092eaadacab609e76c38749",
      "tree": "52b7d911948cf6a50f9a54abb6b91890ff9a8a72",
      "parents": [
        "29a1e26febf4bd6eecab2a17a056c177d3627788",
        "066123a535927b3f17cac2305258cc71abdb0d92"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 08:22:43 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 08:22:43 2009 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  percpu: unbreak alpha percpu\n  mutex: have non-spinning mutexes on s390 by default\n"
    },
    {
      "commit": "574bbe782057fdf0490dc7dec906a2dc26363e20",
      "tree": "b322a752f4feb603fe2b2669fad682a79e7479c3",
      "parents": [
        "9eeba6138cefc0435695463ddadb0d95e0a6bcd2"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Apr 11 03:17:18 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 12 16:10:52 2009 +0200"
      },
      "message": "lockdep: continue lock debugging despite some taints\n\nImpact: broaden lockdep checks\n\nLockdep is disabled after any kernel taints. This might be convenient\nto ignore bad locking issues which sources come from outside the kernel\ntree. Nevertheless, it might be a frustrating experience for the\nstaging developers or those who experience a warning but are focused\non another things that require lockdep.\n\nThe v2 of this patch simply don\u0027t disable anymore lockdep in case\nof TAINT_CRAP and TAINT_WARN events.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: LTP \u003cltp-list@lists.sourceforge.net\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Greg KH \u003cgregkh@suse.de\u003e\nLKML-Reference: \u003c1239412638-6739-2-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9eeba6138cefc0435695463ddadb0d95e0a6bcd2",
      "tree": "daba646e5ddd27132e9679aa3eabec389bf4722e",
      "parents": [
        "066123a535927b3f17cac2305258cc71abdb0d92"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Apr 11 03:17:17 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 12 16:10:51 2009 +0200"
      },
      "message": "lockdep: warn about lockdep disabling after kernel taint\n\nImpact: provide useful missing info for developers\n\nKernel taint can occur in several situations such as warnings,\nload of prorietary or staging modules, bad page, etc...\n\nBut when such taint happens, a developer might still be working on\nthe kernel, expecting that lockdep is still enabled. But a taint\ndisables lockdep without ever warning about it.\nSuch a kernel behaviour doesn\u0027t really help for kernel development.\n\nThis patch adds this missing warning.\n\nSince the taint is done most of the time after the main message that\nexplain the real source issue, it seems safe to warn about it inside\nadd_taint() so that it appears at last, without hurting the main\ninformation.\n\nv2: Use a generic helper to disable lockdep instead of an\n    open coded xchg().\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c1239412638-6739-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "66de7792c02693b49671afe58c771fde3b092fc7",
      "tree": "de50b82ef212c6f9a3f950282b45485e8d87b0a3",
      "parents": [
        "b78825d608f30a47e3154ab6872a03f0de0c9d45"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Apr 01 16:19:19 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 12 15:32:46 2009 +0200"
      },
      "message": "blktrace: fix output of BLK_TC_PC events\n\nBLK_TC_PC events should be treated differently with BLK_TC_FS events.\n\nBefore this patch:\n\n # echo 1 \u003e /sys/block/sda/sda1/trace/enable\n # echo pc \u003e /sys/block/sda/sda1/trace/act_mask\n # echo blk \u003e /debugfs/tracing/current_tracer\n # (generate some BLK_TC_PC events)\n # cat trace\n        bash-2184  [000]  1774.275413:   8,7    I   N [bash]\n        bash-2184  [000]  1774.275435:   8,7    D   N [bash]\n        bash-2184  [000]  1774.275540:   8,7    I   R [bash]\n        bash-2184  [000]  1774.275547:   8,7    D   R [bash]\n ksoftirqd/0-4     [000]  1774.275580:   8,7    C   N 0 [0]\n        bash-2184  [000]  1774.275648:   8,7    I   R [bash]\n        bash-2184  [000]  1774.275653:   8,7    D   R [bash]\n ksoftirqd/0-4     [000]  1774.275682:   8,7    C   N 0 [0]\n        bash-2184  [000]  1774.275739:   8,7    I   R [bash]\n        bash-2184  [000]  1774.275744:   8,7    D   R [bash]\n ksoftirqd/0-4     [000]  1774.275771:   8,7    C   N 0 [0]\n        bash-2184  [000]  1774.275804:   8,7    I   R [bash]\n        bash-2184  [000]  1774.275808:   8,7    D   R [bash]\n ksoftirqd/0-4     [000]  1774.275836:   8,7    C   N 0 [0]\n\nAfter this patch:\n\n # cat trace\n        bash-2263  [000]   366.782149:   8,7    I   N 0 (00 ..) [bash]\n        bash-2263  [000]   366.782323:   8,7    D   N 0 (00 ..) [bash]\n        bash-2263  [000]   366.782557:   8,7    I   R 8 (25 00 ..) [bash]\n        bash-2263  [000]   366.782560:   8,7    D   R 8 (25 00 ..) [bash]\n ksoftirqd/0-4     [000]   366.782582:   8,7    C   N (25 00 ..) [0]\n        bash-2263  [000]   366.782648:   8,7    I   R 8 (5a 00 3f 00) [bash]\n        bash-2263  [000]   366.782650:   8,7    D   R 8 (5a 00 3f 00) [bash]\n ksoftirqd/0-4     [000]   366.782669:   8,7    C   N (5a 00 3f 00) [0]\n        bash-2263  [000]   366.782710:   8,7    I   R 8 (5a 00 08 00) [bash]\n        bash-2263  [000]   366.782713:   8,7    D   R 8 (5a 00 08 00) [bash]\n ksoftirqd/0-4     [000]   366.782730:   8,7    C   N (5a 00 08 00) [0]\n        bash-2263  [000]   366.783375:   8,7    I   R 36 (5a 00 08 00) [bash]\n        bash-2263  [000]   366.783379:   8,7    D   R 36 (5a 00 08 00) [bash]\n ksoftirqd/0-4     [000]   366.783404:   8,7    C   N (5a 00 08 00) [0]\n\nThis is what we do with PC events in user-space blktrace.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c49D32387.9040106@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b78825d608f30a47e3154ab6872a03f0de0c9d45",
      "tree": "a20ac6c33f67749466fe21ebc8edf8e3c139f579",
      "parents": [
        "fc182a4330fc22ea1b68fa3d5064dd85a73a4c4a"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Apr 01 16:18:53 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 12 15:32:45 2009 +0200"
      },
      "message": "blktrace: fix output of unknown events\n\nNot all events are pc (packet command) events. An event is a pc\nevent only if it has BLK_TC_PC bit set.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c49D3236D.3090705@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "02af61bb50f5d5f0322dbe5ab2a0d75808d25c7b",
      "tree": "fa087ed8a584d7b66016e6a1421e538369d52e5a",
      "parents": [
        "abd41443ac76d3e9c29a8c1d9e9a3312306cc55e"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Fri Apr 10 14:26:18 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 12 15:22:55 2009 +0200"
      },
      "message": "tracing, kmemtrace: Separate include/trace/kmemtrace.h to kmemtrace part and tracepoint part\n\nImpact: refactor code for future changes\n\nCurrent kmemtrace.h is used both as header file of kmemtrace and kmem\u0027s\ntracepoints definition.\n\nTracepoints\u0027 definition file may be used by other code, and should only have\ndefinition of tracepoint.\n\nWe can separate include/trace/kmemtrace.h into 2 files:\n\n  include/linux/kmemtrace.h: header file for kmemtrace\n  include/trace/kmem.h:      definition of kmem tracepoints\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003c49DEE68A.5040902@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "44e9c8b7adc52079f0535f9de0c2c2477831389b",
      "tree": "4c021dd16a8329f8543a97310081724015c81fc6",
      "parents": [
        "a3e0ab050774117d4a6173087c8bf3888662a83f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sat Apr 11 15:55:28 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 12 11:59:29 2009 +0200"
      },
      "message": "tracing/filters: return proper error code when writing filter file\n\n- propagate return value of filter_add_pred() to the user\n\n- return -ENOSPC but not -ENOMEM or -EINVAL when the filter array\n  is full\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49E04CF0.3010105@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a3e0ab050774117d4a6173087c8bf3888662a83f",
      "tree": "91d0f5c56a6b01d06c18864e5bcd8ec2c3405eb8",
      "parents": [
        "bcabd91c271e50eebc0cb9220ac92700332b452e"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sat Apr 11 15:52:51 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 12 11:59:28 2009 +0200"
      },
      "message": "tracing/filters: allow user input integer to be oct or hex\n\nBefore patch:\n\n # echo \u0027parent_pid \u003d\u003d 0x10\u0027 \u003e events/sched/sched_process_fork/filter\n # cat sched/sched_process_fork/filter\n parent_pid \u003d\u003d 0\n\nAfter patch:\n\n # cat sched/sched_process_fork/filter\n parent_pid \u003d\u003d 16\n\nAlso check the input more strictly.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49E04C53.4010600@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bcabd91c271e50eebc0cb9220ac92700332b452e",
      "tree": "5513a154d06b4ad1737e6787feeab5d2573f2c43",
      "parents": [
        "8433a40eb7f2c4883ad57f9900f63e4d59240eb7"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sat Apr 11 15:52:35 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 12 11:59:28 2009 +0200"
      },
      "message": "tracing/filters: fix NULL pointer dereference\n\nTry this, and you\u0027ll see NULL pointer dereference bug:\n\n  # echo -n \u0027parent_comm \u003d\u003d\u0027 \u003e sched/sched_process_fork/filter\n\nBecause we passed NULL ptr to simple_strtoull().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49E04C43.1050504@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8433a40eb7f2c4883ad57f9900f63e4d59240eb7",
      "tree": "7fab36945d0266ca00a9a13c2061cc2a0a2ae5dc",
      "parents": [
        "0462b5664b2bda5a18fef7efb5bb32ce36590c1a"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sat Apr 11 15:52:18 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 12 11:59:27 2009 +0200"
      },
      "message": "tracing/filters: NIL-terminate user input filter\n\nMake sure messages from user space are NIL-terminated strings,\notherwise we could dump random memory while reading filter file.\n\nTry this:\n # echo \u0027parent_comm \u003d\u003d\u0027 \u003e events/sched/sched_process_fork/filter\n # cat events/sched/sched_process_fork/filter\n parent_comm \u003d\u003d �\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49E04C32.6060508@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d6de2c80e9d758d2e36c21699117db6178c0f517",
      "tree": "8f581ff1b8bce93fdeac949e0549c791d1ce52f9",
      "parents": [
        "7933a3cfba017330ebb25f9820cb25ec9cdd67cc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 10 12:17:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 11 12:44:49 2009 -0700"
      },
      "message": "async: Fix module loading async-work regression\n\nSeveral drivers use asynchronous work to do device discovery, and we\nsynchronize with them in the compiled-in case before we actually try to\nmount root filesystems etc.\n\nHowever, when compiled as modules, that synchronization is missing - the\nmodule loading completes, but the driver hasn\u0027t actually finished\nprobing for devices, and that means that any user mode that expects to\nuse the devices after the \u0027insmod\u0027 is now potentially broken.\n\nWe already saw one case of a similar issue in the ACPI battery code,\nwhere the kernel itself expected the module to be all done, and unmapped\nthe init memory - but the async device discovery was still running.\nThat got hacked around by just removing the \"__init\" (see commit\n5d38258ec026921a7b266f4047ebeaa75db358e5 \"ACPI battery: fix async boot\noops\"), but the real fix is to just make the module loading wait for all\nasync work to be completed.\n\nIt will slow down module loading, but since common devices should be\nbuilt in anyway, and since the bug is really annoying and hard to handle\nfrom user space (and caused several S3 resume regressions), the simple\nfix to wait is the right one.\n\nThis fixes at least\n\n\thttp://bugzilla.kernel.org/show_bug.cgi?id\u003d13063\n\nbut probably a few other bugzilla entries too (12936, for example), and\nis confirmed to fix Rafael\u0027s storage driver breakage after resume bug\nreport (no bugzilla entry).\n\nWe should also be able to now revert that ACPI battery fix.\n\nReported-and-tested-by: Rafael J. Wysocki \u003crjw@suse.com\u003e\nTested-by: Heinz Diehl \u003chtd@fancy-poultry.org\u003e\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0462b5664b2bda5a18fef7efb5bb32ce36590c1a",
      "tree": "99a67a1af4e275d6654b6c2dd4bc00d2d70406ba",
      "parents": [
        "8f7c2c37319a81ef4c2bfdec67b1ccd5744d97e4"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Wed Apr 08 17:00:13 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 10 15:48:53 2009 +0200"
      },
      "message": "ftrace: Output REC-\u003evar instead of __entry-\u003evar for trace format\n\nprint fmt: \"irq\u003d%d return\u003d%s\", __entry-\u003eirq, __entry-\u003eret ? \\\"handled\\\" : \\\"unhandled\\\"\n\n\"__entry\" should be convert to \"REC\" by __stringify() macro.\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c49DC679D.2090901@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4d1f4372dbea068ba4ee3d98231133a4a4ee15bd",
      "tree": "ddde3be45174648efd3f151c40220b07bb6ca757",
      "parents": [
        "93cfb3c9fd83d877a8f1ffad9ff862b617b32828"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Apr 10 08:48:36 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 10 13:08:50 2009 +0200"
      },
      "message": "tracing: fix document references\n\nWhen moving documents to Documentation/trace/, I forgot to\ngrep Kconfig to find out those references.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Pekka Paalanen \u003cpq@iki.fi\u003e\nCc: eduard.munteanu@linux360.ro\nLKML-Reference: \u003c49DE97EF.7080208@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2062501ae6505dbc5bff3a792246c2661d114050",
      "tree": "59792987c9e9fd1ae657c2e4a5cdb14545523e24",
      "parents": [
        "1cad1252ed279ea59f3f8d3d3a5817eeb2f7a4d3"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Apr 06 01:49:33 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 10 12:50:56 2009 +0200"
      },
      "message": "tracing/lockdep: report the time waited for a lock\n\nWhile trying to optimize the new lock on reiserfs to replace\nthe bkl, I find the lock tracing very useful though it lacks\nsomething important for performance (and latency) instrumentation:\nthe time a task waits for a lock.\n\nThat\u0027s what this patch implements:\n\n  bash-4816  [000]   202.652815: lock_contended: lock_contended: \u0026sb-\u003es_type-\u003ei_mutex_key\n  bash-4816  [000]   202.652819: lock_acquired: \u0026rq-\u003elock (0.000 us)\n \u003c...\u003e-4787  [000]   202.652825: lock_acquired: \u0026rq-\u003elock (0.000 us)\n \u003c...\u003e-4787  [000]   202.652829: lock_acquired: \u0026rq-\u003elock (0.000 us)\n  bash-4816  [000]   202.652833: lock_acquired: \u0026sb-\u003es_type-\u003ei_mutex_key (16.005 us)\n\nAs shown above, the \"lock acquired\" field is followed by the time\nit has been waiting for the lock. Usually, a lock contended entry\nis followed by a near lock_acquired entry with a non-zero time waited.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1238975373-15739-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1cad1252ed279ea59f3f8d3d3a5817eeb2f7a4d3",
      "tree": "ec5af7a70f58ad27ad21fc27815ca164ccf92c36",
      "parents": [
        "dcef788eb9659b61a2110284fcce3ca6e63480d2",
        "93cfb3c9fd83d877a8f1ffad9ff862b617b32828"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 10 12:46:28 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 10 12:46:51 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/urgent\u0027 into tracing/core\n\nMerge reason: pick up both v2.6.30-rc1 [which includes tracing/urgent fixes]\n              and pick up the current lineup of tracing/urgent fixes as well\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "93cfb3c9fd83d877a8f1ffad9ff862b617b32828",
      "tree": "a88753a44117b9dcfdd65bb0d0572eb5b945e961",
      "parents": [
        "c7625a555f55d7ae49236cde551786c88f5a5ce1"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Thu Apr 02 15:17:08 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 10 12:44:46 2009 +0200"
      },
      "message": "tracing: fix splice return too large\n\nI got these from strace:\n\n splice(0x3, 0, 0x5, 0, 0x1000, 0x1) \u003d 12288\n splice(0x3, 0, 0x5, 0, 0x1000, 0x1) \u003d 12288\n splice(0x3, 0, 0x5, 0, 0x1000, 0x1) \u003d 12288\n splice(0x3, 0, 0x5, 0, 0x1000, 0x1) \u003d 16384\n splice(0x3, 0, 0x5, 0, 0x1000, 0x1) \u003d 8192\n splice(0x3, 0, 0x5, 0, 0x1000, 0x1) \u003d 8192\n splice(0x3, 0, 0x5, 0, 0x1000, 0x1) \u003d 8192\n\nI wanted to splice_read 4096 bytes, but it returns 8192 or larger.\n\nIt is because the return value of tracing_buffers_splice_read()\ndoes not include \"zero out any left over data\" bytes.\n\nBut tracing_buffers_read() includes these bytes, we make them\nconsistent.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nLKML-Reference: \u003c49D46674.9030804@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c7625a555f55d7ae49236cde551786c88f5a5ce1",
      "tree": "4cca942d46412d708945f574ef4c4b87adf92d1d",
      "parents": [
        "ddd538f3e6a1a4bec2f6942f83a753263e6577b4"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Thu Apr 02 15:17:04 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 10 12:44:44 2009 +0200"
      },
      "message": "tracing: update file-\u003ef_pos when splice(2) it\n\nImpact: Cleanup\n\nThese two lines:\n\n\tif (unlikely(*ppos))\n\t\treturn -ESPIPE;\n\nin tracing_buffers_splice_read() are not needed, VFS layer\nhas disabled seek(2).\n\nWe remove these two lines, and then we can update file-\u003ef_pos.\n\nAnd tracing_buffers_read() updates file-\u003ef_pos, this fix\nmake tracing_buffers_splice_read() updates file-\u003ef_pos too.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nLKML-Reference: \u003c49D46670.4010503@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ddd538f3e6a1a4bec2f6942f83a753263e6577b4",
      "tree": "b28047205b75d7e06ecf3eb0aca08c056ed4f51c",
      "parents": [
        "d1e7e02f30be672c6f6ee40908be83877a0d49d1"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Thu Apr 02 15:16:59 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 10 12:44:43 2009 +0200"
      },
      "message": "tracing: allocate page when needed\n\nImpact: Cleanup\n\nSometimes, we open trace_pipe_raw, but we don\u0027t read(2) it,\nwe just splice(2) it, thus, the page is not used.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nLKML-Reference: \u003c49D4666B.4010608@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d1e7e02f30be672c6f6ee40908be83877a0d49d1",
      "tree": "24f958961d8de3ef0c1d16a407041d096fc1f098",
      "parents": [
        "62b8e680e61d3f48f2a12ee248ca03ea8f376926"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Thu Apr 02 15:16:56 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 10 12:44:42 2009 +0200"
      },
      "message": "tracing: disable seeking for trace_pipe_raw\n\nImpact: disable pread()\n\nWe set tracing_buffers_fops.llseek to no_llseek,\nbut we can still perform pread() to read this file.\n\nThat is not expected.\n\nThis fix uses nonseekable_open() to disable it.\n\ntracing_buffers_fops.llseek is still set to no_llseek,\nit mark this file is a \"non-seekable device\" and is used by\nsys_splice(). See also do_splice() or manual of splice(2):\n\nERRORS\n       EINVAL Target file system doesn\u0027t support  splicing;\n              neither  of the descriptors refers to a pipe;\n              or offset given for non-seekable device.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nLKML-Reference: \u003c49D46668.8030806@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c2ea122cd7c4a094be71641f3961796398035513",
      "tree": "7150db3e27a078c8a4183964a882bb15ba9f3f64",
      "parents": [
        "17b2e9bf27d417bc186cc922b4d6d5eaa048f9d8",
        "66bb74888eb4bef4ba7c87c931ecb7ecca3a240c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 09 10:37:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 09 10:37:46 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: consolidate documents\n  blktrace: pass the right pointer to kfree()\n  tracing/syscalls: use a dedicated file header\n  tracing: append a comma to INIT_FTRACE_GRAPH\n"
    },
    {
      "commit": "17b2e9bf27d417bc186cc922b4d6d5eaa048f9d8",
      "tree": "7ae99be289ec2ffe68aa38926d9e9a13e4387ee0",
      "parents": [
        "422a253483aa5de71a2bcdc27b0aa023053f97f8",
        "e3c8ca8336707062f3f7cb1cd7e6b3c753baccdd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 09 10:37:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 09 10:37:28 2009 -0700"
      },
      "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: do not count frozen tasks toward load\n  sched: refresh MAINTAINERS entry\n  sched: Print sched_group::__cpu_power in sched_domain_debug\n  cpuacct: add per-cgroup utime/stime statistics\n  posixtimers, sched: Fix posix clock monotonicity\n  sched_rt: don\u0027t allocate cpumask in fastpath\n  cpuacct: make cpuacct hierarchy walk in cpuacct_charge() safe when rcupreempt is used -v2\n"
    },
    {
      "commit": "422a253483aa5de71a2bcdc27b0aa023053f97f8",
      "tree": "3e25aaf65b8eaf275bb01982a89fb0cd631c4367",
      "parents": [
        "91e58b6e95a9c6b9efd928ae352eae5e75ae598c",
        "022624a758dc9489388a99ad29577b4c8c09237c",
        "9756b15e1b58453a6fd54b85c1ad8515209e10bb",
        "8f2e586567b1bad72dac7c3810fe9a2ef7117506"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 09 10:35:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 09 10:35:30 2009 -0700"
      },
      "message": "Merge branches \u0027core-fixes-for-linus\u0027, \u0027irq-fixes-for-linus\u0027 and \u0027timers-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  printk: fix wrong format string iter for printk\n  futex: comment requeue key reference semantics\n\n* \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  irq: fix cpumask memory leak on offstack cpumask kernels\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  posix-timers: fix RLIMIT_CPU \u0026\u0026 setitimer(CPUCLOCK_PROF)\n  posix-timers: fix RLIMIT_CPU \u0026\u0026 fork()\n  timers: add missing kernel-doc\n"
    },
    {
      "commit": "36cd3c9f925b9307236505ae7ad1ad7ac4d4357c",
      "tree": "d9be68502d0f11b2259427e9ee8320891367143c",
      "parents": [
        "022624a758dc9489388a99ad29577b4c8c09237c"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Apr 09 18:48:34 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 09 19:28:24 2009 +0200"
      },
      "message": "mutex: have non-spinning mutexes on s390 by default\n\nImpact: performance regression fix for s390\n\nThe adaptive spinning mutexes will not always do what one would expect on\nvirtualized architectures like s390. Especially the cpu_relax() loop in\nmutex_spin_on_owner might hurt if the mutex holding cpu has been scheduled\naway by the hypervisor.\n\nWe would end up in a cpu_relax() loop when there is no chance that the\nstate of the mutex changes until the target cpu has been scheduled again by\nthe hypervisor.\n\nFor that reason we should change the default behaviour to no-spin on s390.\n\nWe do have an instruction which allows to yield the current cpu in favour of\na different target cpu. Also we have an instruction which allows us to figure\nout if the target cpu is physically backed.\n\nHowever we need to do some performance tests until we can come up with\na solution that will do the right thing on s390.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nLKML-Reference: \u003c20090409184834.7a0df7b2@osiris.boeblingen.de.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9eb85125ce218a8b8d9a7c982510388e227adbec",
      "tree": "320b87113d2c6b151f14e39d3a7e60174e19b0be",
      "parents": [
        "47788c58e66c050982241d9a05eb690daceb05a9"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Apr 09 11:19:40 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 09 05:52:40 2009 +0200"
      },
      "message": "blktrace: pass the right pointer to kfree()\n\nImpact: fix kfree crash with non-standard act_mask string\n\nIf passing a string with leading white spaces to strstrip(),\nthe returned ptr !\u003d the original ptr.\n\nThis bug was introduced by me.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003c49DD694C.8020902@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "47788c58e66c050982241d9a05eb690daceb05a9",
      "tree": "96b8658e36bad85d1e77345b7be1edb6fdb9e1d1",
      "parents": [
        "f876d346e3807647b1de411de6a86c44821896ca"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Apr 08 20:40:59 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 09 05:43:32 2009 +0200"
      },
      "message": "tracing/syscalls: use a dedicated file header\n\nImpact: fix build warnings and possibe compat misbehavior on IA64\n\nBuilding a kernel on ia64 might trigger these ugly build warnings:\n\nCC      arch/ia64/ia32/sys_ia32.o\nIn file included from arch/ia64/ia32/sys_ia32.c:55:\narch/ia64/ia32/ia32priv.h:290:1: warning: \"elf_check_arch\" redefined\nIn file included from include/linux/elf.h:7,\n                 from include/linux/module.h:14,\n                 from include/linux/ftrace.h:8,\n                 from include/linux/syscalls.h:68,\n                 from arch/ia64/ia32/sys_ia32.c:18:\narch/ia64/include/asm/elf.h:19:1: warning: this is the location of the previous definition\n[...]\n\nsys_ia32.c includes linux/syscalls.h which in turn includes linux/ftrace.h\nto import the syscalls tracing prototypes.\n\nBut including ftrace.h can pull too much things for a low level file,\nespecially on ia64 where the ia32 private headers conflict with higher\nlevel headers.\n\nNow we isolate the syscall tracing headers in their own lightweight file.\n\nReported-by: Tony Luck \u003ctony.luck@intel.com\u003e\nTested-by: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: \"Frank Ch. Eigler\" \u003cfche@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Michael Rubin \u003cmrubin@google.com\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: Michael Davidson \u003cmd@google.com\u003e\nLKML-Reference: \u003c20090408184058.GB6017@nowhere\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6b44003e5ca66a3fffeb5bc90f40ada2c4340896",
      "tree": "d9dce0a39b5e66d8e760344a51ffb6de9594cd2f",
      "parents": [
        "1c99315bb36b5d776210546d438ca928dc9b1f22"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Apr 09 09:50:37 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Apr 09 09:50:37 2009 +0930"
      },
      "message": "work_on_cpu(): rewrite it to create a kernel thread on demand\n\nImpact: circular locking bugfix\n\nThe various implemetnations and proposed implemetnations of work_on_cpu()\nare vulnerable to various deadlocks because they all used queues of some\nform.\n\nUnrelated pieces of kernel code thus gained dependencies wherein if one\nwork_on_cpu() caller holds a lock which some other work_on_cpu() callback\nalso takes, the kernel could rarely deadlock.\n\nFix this by creating a short-lived kernel thread for each work_on_cpu()\ninvokation.\n\nThis is not terribly fast, but the only current caller of work_on_cpu() is\npci_call_probe().\n\nIt would be nice to find some other way of doing the node-local\nallocations in the PCI probe code so that we can zap work_on_cpu()\naltogether.  The code there is rather nasty.  I can\u0027t think of anything\nsimple at this time...\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "1c99315bb36b5d776210546d438ca928dc9b1f22",
      "tree": "aa43f3ffe76fd1aed66ed9e4a433c5f310fd7e74",
      "parents": [
        "3217ab97f14c5c8f9f975ed8c40c351164b0b10e"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Thu Apr 09 09:50:36 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Apr 09 09:50:37 2009 +0930"
      },
      "message": "kthread: move sched-realeted initialization from kthreadd context\n\nkthreadd is the single thread which implements ths \"create\" request, move\nsched_setscheduler/etc from create_kthread() to kthread_create() to\nimprove the scalability.\n\nWe should be careful with sched_setscheduler(), use _nochek helper.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: Vitaliy Gusev \u003cvgusev@openvz.org\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "3217ab97f14c5c8f9f975ed8c40c351164b0b10e",
      "tree": "3bb4b32e9a1e5b96915fbce57184d55f74e43fe9",
      "parents": [
        "7b85a88ca7760d6d5f34bdaa793c71d921a3e853"
      ],
      "author": {
        "name": "Vitaliy Gusev",
        "email": "vgusev@openvz.org",
        "time": "Thu Apr 09 09:50:35 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Apr 09 09:50:36 2009 +0930"
      },
      "message": "kthread: Don\u0027t looking for a task in create_kthread() #2\n\nRemove the unnecessary find_task_by_pid_ns(). kthread() can just\nuse \"current\" to get the same result.\n\nSigned-off-by: Vitaliy Gusev \u003cvgusev@openvz.org\u003e\nAcked-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "3a709703538c471530405556dda136fd0d82b0dc",
      "tree": "0479d66b10b6d77bacc269471285bd2be344ccb9",
      "parents": [
        "4c967291fc875a53de7126d256ad5e48f42a6521"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Tue Apr 07 23:21:06 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 08 10:21:44 2009 -0700"
      },
      "message": "ptrace: some checkpatch fixes\n\nThis fixes all the checkpatch --file complaints about kernel/ptrace.c\nand also removes an unused #include.  I\u0027ve verified that there are no\nchanges to the compiled code on x86_64.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\n[ Removed the parts that just split a line  - Linus ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8f2e586567b1bad72dac7c3810fe9a2ef7117506",
      "tree": "23da00a7e4b78f71c5d32ba350d0039b5016124e",
      "parents": [
        "6279a751fe096a21dc7704e918d570d3ff06e769"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Mar 27 01:06:10 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 17:51:39 2009 +0200"
      },
      "message": "posix-timers: fix RLIMIT_CPU \u0026\u0026 setitimer(CPUCLOCK_PROF)\n\nupdate_rlimit_cpu() tries to optimize out set_process_cpu_timer() in case\nwhen we already have CPUCLOCK_PROF timer which should expire first. But it\nuses cputime_lt() instead of cputime_gt().\n\nTest case:\n\n\tint main(void)\n\t{\n\t\tstruct itimerval it \u003d {\n\t\t\t.it_value \u003d { .tv_sec \u003d 1000 },\n\t\t};\n\n\t\tassert(!setitimer(ITIMER_PROF, \u0026it, NULL));\n\n\t\tstruct rlimit rl \u003d {\n\t\t\t.rlim_cur \u003d 1,\n\t\t\t.rlim_max \u003d 1,\n\t\t};\n\n\t\tassert(!setrlimit(RLIMIT_CPU, \u0026rl));\n\n\t\tfor (;;)\n\t\t\t;\n\n\t\treturn 0;\n\t}\n\nWithout this patch, the task is not killed as RLIMIT_CPU demands.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Peter Lojkin \u003cia6432@inbox.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: stable@kernel.org\nLKML-Reference: \u003c20090327000610.GA10108@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6279a751fe096a21dc7704e918d570d3ff06e769",
      "tree": "2b24e0ecf004802a890f77195489f8aa76fa745d",
      "parents": [
        "633fe795b80693a8198e7d82f66538a72d2bbba2"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Mar 27 01:06:07 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 17:51:38 2009 +0200"
      },
      "message": "posix-timers: fix RLIMIT_CPU \u0026\u0026 fork()\n\nSee http://bugzilla.kernel.org/show_bug.cgi?id\u003d12911\n\ncopy_signal() copies signal-\u003erlim, but RLIMIT_CPU is \"lost\". Because\nposix_cpu_timers_init_group() sets cputime_expires.prof_exp \u003d 0 and thus\nfastpath_timer_check() returns false unless we have other expired cpu timers.\n\nChange copy_signal() to set cputime_expires.prof_exp if we have RLIMIT_CPU.\nAlso, set cputimer.running \u003d 1 in that case. This is not strictly necessary,\nbut imho makes sense.\n\nReported-by: Peter Lojkin \u003cia6432@inbox.ru\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Peter Lojkin \u003cia6432@inbox.ru\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: stable@kernel.org\nLKML-Reference: \u003c20090327000607.GA10104@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5af8c4e0fac9838428bd718040b664043a05f37c",
      "tree": "75a01d98ed244db45fe3c734c4a81c1a3d92ac37",
      "parents": [
        "46e0bb9c12f4bab539736f1714cbf16600f681ec",
        "577c9c456f0e1371cbade38eaf91ae8e8a308555"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 17:25:42 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 17:26:00 2009 +0200"
      },
      "message": "Merge commit \u0027v2.6.30-rc1\u0027 into sched/urgent\n\nMerge reason: update to latest upstream to queue up fix\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ff96e612cba32510e263e17b213235fe5746397e",
      "tree": "a8df57d76b10e0901a4fb76cd2987eb9826a560a",
      "parents": [
        "cd84a42f315e50edd454c27a3da3951ccd3d735a",
        "577c9c456f0e1371cbade38eaf91ae8e8a308555"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 17:02:50 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 08 17:02:57 2009 +0200"
      },
      "message": "Merge commit \u0027v2.6.30-rc1\u0027 into core/urgent\n\nMerge reason: need latest upstream to queue up dependent fix\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1551260d1f0fb1d23f264582092b862fce5e2dbd",
      "tree": "d06a0d20c74adda44a78bc2dc9a3e3016de380d6",
      "parents": [
        "c93f216b5b985a12a18323e5ca2eb01db3d2f000",
        "5e34437840d33554f69380584311743b39e8fbeb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 14:11:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 14:11:07 2009 -0700"
      },
      "message": "Merge branch \u0027core/softlockup\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core/softlockup\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  softlockup: make DETECT_HUNG_TASK default depend on DETECT_SOFTLOCKUP\n  softlockup: move \u0027one\u0027 to the softlockup section in sysctl.c\n  softlockup: ensure the task has been switched out once\n  softlockup: remove timestamp checking from hung_task\n  softlockup: convert read_lock in hung_task to rcu_read_lock\n  softlockup: check all tasks in hung_task\n  softlockup: remove unused definition for spawn_softlockup_task\n  softlockup: fix potential race in hung_task when resetting timeout\n  softlockup: fix to allow compiling with !DETECT_HUNG_TASK\n  softlockup: decouple hung tasks check from softlockup detection\n"
    },
    {
      "commit": "c93f216b5b985a12a18323e5ca2eb01db3d2f000",
      "tree": "45fa35b290005f8b241dd76b6342875b81432fc3",
      "parents": [
        "c61b79b6ef266890954213a701d8f6021d8c1289",
        "ab3c9c686e22ab264269337ce7b75d9760211198"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 14:10:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 14:10:10 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  branch tracer, intel-iommu: fix build with CONFIG_BRANCH_TRACER\u003dy\n  branch tracer: Fix for enabling branch profiling makes sparse unusable\n  ftrace: Correct a text align for event format output\n  Update /debug/tracing/README\n  tracing/ftrace: alloc the started cpumask for the trace file\n  tracing, x86: remove duplicated #include\n  ftrace: Add check of sched_stopped for probe_sched_wakeup\n  function-graph: add proper initialization for init task\n  tracing/ftrace: fix missing include string.h\n  tracing: fix incorrect return type of ns2usecs()\n  tracing: remove CALLER_ADDR2 from wakeup tracer\n  blktrace: fix pdu_len when tracing packet command requests\n  blktrace: small cleanup in blk_msg_write()\n  blktrace: NUL-terminate user space messages\n  tracing: move scripts/trace/power.pl to scripts/tracing/power.pl\n"
    },
    {
      "commit": "c61b79b6ef266890954213a701d8f6021d8c1289",
      "tree": "9b000a7dae5a782a0d667137ab43e4f1bea70d58",
      "parents": [
        "2b2ec7554cf7ec5e4412f89a5af6abe8ce950700",
        "9efe21cb82b5dbe3b0b2ae4de4eccc64ecb94e95"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 14:07:52 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 14:07:52 2009 -0700"
      },
      "message": "Merge branch \u0027irq/threaded\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq/threaded\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  genirq: fix devres.o build for GENERIC_HARDIRQS\u003dn\n  genirq: provide old request_irq() for CONFIG_GENERIC_HARDIRQ\u003dn\n  genirq: threaded irq handlers review fixups\n  genirq: add support for threaded interrupts to devres\n  genirq: add threaded interrupt handler support\n"
    },
    {
      "commit": "de5bd88d5a5cce3cacea904d3503e5ebdb3852a2",
      "tree": "da24ac8b38d371ee03a21ed0f3647c518689ebd3",
      "parents": [
        "e579abeb58eb4b8d7321c6eb44dd9e2d0cbaebaa"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Mon Apr 06 19:01:02 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:08 2009 -0700"
      },
      "message": "kprobes: support per-kprobe disabling\n\nAdd disable_kprobe() and enable_kprobe() to disable/enable kprobes\ntemporarily.\n\ndisable_kprobe() asynchronously disables probe handlers of specified\nkprobe.  So, after calling it, some handlers can be called at a while.\nenable_kprobe() enables specified kprobe.\n\naggr_pre_handler and aggr_post_handler check disabled probes.  On the\nother hand aggr_break_handler and aggr_fault_handler don\u0027t check it\nbecause these handlers will be called while executing pre or post handlers\nand usually those help error handling.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nAcked-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e579abeb58eb4b8d7321c6eb44dd9e2d0cbaebaa",
      "tree": "56ebd4b392408ddba88a5da54004fd0a1bfbccf9",
      "parents": [
        "cc00e9cfe0e5c4c31057c722e49fdf2c76dd5953"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Mon Apr 06 19:01:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:08 2009 -0700"
      },
      "message": "kprobes: rename kprobe_enabled to kprobes_all_disarmed\n\nRename kprobe_enabled to kprobes_all_disarmed and invert logic due to\navoiding naming confusion from per-probe disabling.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nAcked-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "99081ab553d6a88dd6b3774af5eef94dbb8faad7",
      "tree": "a78c2a07ec780b110e49939c8b954e2468398e16",
      "parents": [
        "b918e5e60d775549478e4268155142156a95aa17"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Mon Apr 06 19:00:59 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:08 2009 -0700"
      },
      "message": "kprobes: move EXPORT_SYMBOL_GPL just after function definitions\n\nClean up positions of EXPORT_SYMBOL_GPL in kernel/kprobes.c according to\ncheckpatch.pl.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nAcked-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b918e5e60d775549478e4268155142156a95aa17",
      "tree": "92e7d435088772803b24b1d9901ea3e17e6a9189",
      "parents": [
        "96a6d9aa096aeb758273a8fb6388c279ecef5e7e"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Mon Apr 06 19:00:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:07 2009 -0700"
      },
      "message": "kprobes: cleanup aggr_kprobe related code\n\nCurrently, kprobes can disable all probes at once, but can\u0027t disable it\nindividually (not unregister, just disable an kprobe, because\nunregistering needs to wait for scheduler synchronization).  These patches\nintroduce APIs for on-the-fly per-probe disabling and re-enabling by\ndis-arming/re-arming its breakpoint instruction.\n\nThis patch:\n\nChange old_p to ap in add_new_kprobe() for readability, copy flags member\nin add_aggr_kprobe(), and simplify the code flow of\nregister_aggr_kprobe().\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nAcked-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fafd688e4c0c34da0f3de909881117d374e4c7af",
      "tree": "5c61d499b96d78f5b56507a5d34af0ccd7c69060",
      "parents": [
        "a56ed663047fc9927ec8b35750d23ece54f85dc7"
      ],
      "author": {
        "name": "Peter W Morreale",
        "email": "pmorreale@novell.com",
        "time": "Mon Apr 06 19:00:29 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:03 2009 -0700"
      },
      "message": "mm: add /proc controls for pdflush threads\n\nAdd /proc entries to give the admin the ability to control the minimum and\nmaximum number of pdflush threads.  This allows finer control of pdflush\non both large and small machines.\n\nThe rationale is simply one size does not fit all.  Admins on large and/or\nsmall systems may want to tune the min/max pdflush thread count to best\nsuit their needs.  Right now the min/max is hardcoded to 2/8.  While\nprobably a fair estimate for smaller machines, large machines with large\nnumbers of CPUs and large numbers of filesystems/block devices may benefit\nfrom larger numbers of threads working on different block devices.\n\nEven if the background flushing algorithm is radically changed, it is\nstill likely that multiple threads will be involved and admins would still\ndesire finer control on the min/max other than to have to recompile the\nkernel.\n\nThe patch adds \u0027/proc/sys/vm/nr_pdflush_threads_min\u0027 and\n\u0027/proc/sys/vm/nr_pdflush_threads_max\u0027 with r/w permissions.\n\nThe minimum value for nr_pdflush_threads_min is 1 and the maximum value is\nthe current value of nr_pdflush_threads_max.  This minimum is required\nsince additional thread creation is performed in a pdflush thread itself.\n\nThe minimum value for nr_pdflush_threads_max is the current value of\nnr_pdflush_threads_min and the maximum value can be 1000.\n\nDocumentation/sysctl/vm.txt is also updated.\n\n[akpm@linux-foundation.org: fix comment, fix whitespace, use __read_mostly]\nSigned-off-by: Peter W Morreale \u003cpmorreale@novell.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dcef788eb9659b61a2110284fcce3ca6e63480d2",
      "tree": "b888723a3131d37afdae47e2d80a63796d19a6db",
      "parents": [
        "597af81537654097b67fd7a0c92775e66d4a86fe"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Tue Mar 31 15:26:14 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 14:43:09 2009 +0200"
      },
      "message": "ftrace: clean up enable logic for sched_switch\n\nUnify sched_switch and sched_wakeup\u0027s action to following logic:\nDo record_cmdline when start_cmdline_record() is called.\nStart tracing events when the tracer is started.\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nLKML-Reference: \u003c49D1C596.5050203@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "597af81537654097b67fd7a0c92775e66d4a86fe",
      "tree": "e258b2ce6e6027609a3aa488b697e189872d9cf7",
      "parents": [
        "5452af664f6fba26b80eb2c8c4ceae2999d5cf56"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 03 15:24:12 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 14:43:08 2009 +0200"
      },
      "message": "function-graph: use int instead of atomic for ftrace_graph_active\n\nImpact: cleanup\n\nThe variable ftrace_graph_active is only modified under the\nftrace_lock mutex, thus an atomic is not necessary for modification.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "5452af664f6fba26b80eb2c8c4ceae2999d5cf56",
      "tree": "08fb64bfc3242ad96b65719a55424db729585f17",
      "parents": [
        "a5dec5573f3c7e63f2f9b5852b9759ea342a5ff9"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Mar 27 00:25:38 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 14:43:07 2009 +0200"
      },
      "message": "tracing/ftrace: factorize the tracing files creation\n\nImpact: cleanup\n\nMost of the tracing files creation follow the same pattern:\n\nret \u003d debugfs_create_file(...)\nif (!ret)\n\tpr_warning(\"Couldn\u0027t create ... entry\\n\")\n\nUnify it!\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1238109938-11840-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a5dec5573f3c7e63f2f9b5852b9759ea342a5ff9",
      "tree": "5d5cb96136fc304bc01bc9cfeb072a6ab86230be",
      "parents": [
        "86665c75da41889f92b774f31ea5a9a436f392a8"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 27 14:55:44 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 14:43:06 2009 +0200"
      },
      "message": "tracing: use macros to denote usec and nsec per second\n\nImpact: cleanup\n\nUse USEC_PER_SEC and NSEC_PER_SEC instead of 1000000 and 1000000000.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c49CC7870.9000309@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "86665c75da41889f92b774f31ea5a9a436f392a8",
      "tree": "94b003ab677a64b7d0a6dcca1f636bbbc2a187c9",
      "parents": [
        "93776a8ec746cf9d32c36e5a5b23d28d8be28826",
        "1bbe2a83ab68e5cf8c66c372c7cb3b51910c2cfe"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 14:41:14 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 14:41:17 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/urgent\u0027 into tracing/ftrace\n"
    },
    {
      "commit": "1bbe2a83ab68e5cf8c66c372c7cb3b51910c2cfe",
      "tree": "6973301d436978f1cd2324927ee40b60ce91347d",
      "parents": [
        "bc2b6871c17b3aff79fb14e1a1c06c5f5a187f76"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Fri Apr 03 18:24:46 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 14:02:42 2009 +0200"
      },
      "message": "ftrace: Correct a text align for event format output\n\nIf we cat debugfs/tracing/events/ftrace/bprint/format, we\u0027ll see:\nname: bprint\nID: 6\nformat:\n\tfield:unsigned char common_type;\toffset:0;\tsize:1;\n\tfield:unsigned char common_flags;\toffset:1;\tsize:1;\n\tfield:unsigned char common_preempt_count;\toffset:2;\tsize:1;\n\tfield:int common_pid;\toffset:4;\tsize:4;\n\tfield:int common_tgid;\toffset:8;\tsize:4;\n\n\tfield:unsigned long ip;\toffset:12;\tsize:4;\n\tfield:char * fmt;\toffset:16;\tsize:4;\n\tfield: char buf;\toffset:20;\tsize:0;\n\nprint fmt: \"%08lx (%d) fmt:%p %s\"\n\nThere is an inconsistent blank before char buf.\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nLKML-Reference: \u003c49D5E3EE.70201@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bc2b6871c17b3aff79fb14e1a1c06c5f5a187f76",
      "tree": "2be32adf56b100f5bc565bbf641651a8067f8608",
      "parents": [
        "b0dfa978c7a1699fb3506fbfcba0b6a5c4bd17ae"
      ],
      "author": {
        "name": "Nikanth Karthikesan",
        "email": "knikanth@suse.de",
        "time": "Mon Mar 23 11:58:31 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 14:02:36 2009 +0200"
      },
      "message": "Update /debug/tracing/README\n\nSome of the tracers have been renamed, which was not updated in the in-kernel\nrun-time README file. Update it.\n\nSigned-off-by: Nikanth Karthikesan \u003cknikanth@suse.de\u003e\nLKML-Reference: \u003c200903231158.32151.knikanth@suse.de\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b0dfa978c7a1699fb3506fbfcba0b6a5c4bd17ae",
      "tree": "4e52215e4d2f67c7063f813b9d788763d6f341a8",
      "parents": [
        "5ab8026a3016fbed5c73aa070d9f6989cf791099"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Apr 01 22:53:08 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 14:02:03 2009 +0200"
      },
      "message": "tracing/ftrace: alloc the started cpumask for the trace file\n\nImpact: fix a crash while cat trace file\n\nCurrently we are using a cpumask to remind each cpu where a\ntrace occured. It lets us notice the user that a cpu just had\nits first trace.\n\nBut on latest -tip we have the following crash once we cat the trace\nfile:\n\nIP: [\u003cc0270c4a\u003e] print_trace_fmt+0x45/0xe7\n*pde \u003d 00000000\nOops: 0000 [#1] PREEMPT SMP\nlast sysfs file: /sys/class/net/eth0/carrier\nPid: 3897, comm: cat Not tainted (2.6.29-tip-02825-g0f22972-dirty #81)\nEIP: 0060:[\u003cc0270c4a\u003e] EFLAGS: 00010297 CPU: 0\nEIP is at print_trace_fmt+0x45/0xe7\nEAX: 00000000 EBX: 00000000 ECX: c12d9e98 EDX: ccdb7010\nESI: d31f4000 EDI: 00322401 EBP: d31f3f10 ESP: d31f3efc\nDS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068\nProcess cat (pid: 3897, ti\u003dd31f2000 task\u003dd3b3cf20 task.ti\u003dd31f2000)\nStack:\nd31f4080 ccdb7010 d31f4000 d691fe70 ccdb7010 d31f3f24 c0270e5c d31f4000\nd691fe70 d31f4000 d31f3f34 c02718e8 c12d9e98 d691fe70 d31f3f70 c02bfc33\n00001000 09130000 d3b46e00 d691fe98 00000000 00000079 00000001 00000000\nCall Trace:\n[\u003cc0270e5c\u003e] ? print_trace_line+0x170/0x17c\n[\u003cc02718e8\u003e] ? s_show+0xa7/0xbd\n[\u003cc02bfc33\u003e] ? seq_read+0x24a/0x327\n[\u003cc02bf9e9\u003e] ? seq_read+0x0/0x327\n[\u003cc02ab18b\u003e] ? vfs_read+0x86/0xe1\n[\u003cc02ab289\u003e] ? sys_read+0x40/0x65\n[\u003cc0202d8f\u003e] ? sysenter_do_call+0x12/0x3c\nCode: 00 00 00 89 45 ec f7 c7 00 20 00 00 89 55 f0 74 4e f6 86 98 10 00 00 02 74 45 8b 86 8c 10 00 00 8b 9e a8 10 00 00 e8 52 f3 ff ff \u003c0f\u003e a3 03 19 c0 85 c0 75 2b 8b 86 8c 10 00 00 8b 9e a8 10 00 00\nEIP: [\u003cc0270c4a\u003e] print_trace_fmt+0x45/0xe7 SS:ESP 0068:d31f3efc\nCR2: 0000000000000000\n---[ end trace aa9cf38e5ebed9dd ]---\n\nThis is because we alloc the iter-\u003estarted cpumask on tracing_pipe_open but\nnot on tracing_open.\n\nIt hadn\u0027t been noticed until now because we need to have ring buffer overruns\nto activate the starting of cpu buffer detection.\n\nAlso, we need a check to not print the messagge for the first trace on the file.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1238619188-6109-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8bcae09b93e7f96f700b6bb372c2b3f2b36636dc",
      "tree": "035ba58e3d2faaf639da6225b52c6d8428ac9307",
      "parents": [
        "5ac9f62267dc92c7735c642a5942d9e6c1190308"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Tue Mar 31 15:24:51 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 14:01:11 2009 +0200"
      },
      "message": "ftrace: Add check of sched_stopped for probe_sched_wakeup\n\nThe wakeup tracing in sched_switch does not stop when a user\ndisables tracing. This is because the probe_sched_wakeup() is missing\nthe check to prevent the wakeup from being traced.\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nLKML-Reference: \u003c49D1C543.3010307@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5f0c6c03c5fee91c02c696bc9bf4c0d41392abe7",
      "tree": "54d45e35314d28d835b85ed623a79c3b5501affa",
      "parents": [
        "cf8e3474654f20433aab9aa35826d43b5f245008"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Mar 27 14:22:10 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 14:00:18 2009 +0200"
      },
      "message": "tracing/ftrace: fix missing include string.h\n\nBuilding a kernel with tracing can raise the following warning on\ntip/master:\n\nkernel/trace/trace.c:1249: error: implicit declaration of function \u0027vbin_printf\u0027\n\nWe are missing an include to string.h\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1238160130-7437-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cf8e3474654f20433aab9aa35826d43b5f245008",
      "tree": "bbb3e87ca324ae4192fd524c0777047ee075c5d9",
      "parents": [
        "301fd748e2c81e78e74edbc694a64caa7b95dda2"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Mon Mar 30 13:48:00 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 13:59:23 2009 +0200"
      },
      "message": "tracing: fix incorrect return type of ns2usecs()\n\nImpact: fix time output bug in 32bits system\n\nns2usecs() returns \u0027long\u0027, it\u0027s incorrect.\n\n(In i386)\n...\n          \u003cidle\u003e-0     [000]   521.442100: _spin_lock \u003c-tick_do_update_jiffies64\n          \u003cidle\u003e-0     [000]   521.442101: do_timer \u003c-tick_do_update_jiffies64\n          \u003cidle\u003e-0     [000]   521.442102: update_wall_time \u003c-do_timer\n          \u003cidle\u003e-0     [000]   521.442102: update_xtime_cache \u003c-update_wall_time\n....\n(It always print the time less than 2200 seconds besides ...)\nBecause \u0027long\u0027 is 32bits in i386. ( (1\u003c\u003c31) useconds is about 2200 seconds)\n\n...\n          \u003cidle\u003e-0     [001] 4154502640.134759: rcu_bh_qsctr_inc \u003c-__do_softirq\n          \u003cidle\u003e-0     [001] 4154502640.134760: _local_bh_enable \u003c-__do_softirq\n          \u003cidle\u003e-0     [001] 4154502640.134761: idle_cpu \u003c-irq_exit\n...\n(very large value)\nBecause \u0027long\u0027 is a signed type and it is 32bits in i386.\n\nChanges in v2:\nreturn \u0027unsigned long long\u0027 instead of \u0027cycle_t\u0027\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c49D05D10.4030009@cn.fujitsu.com\u003e\nReported-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "301fd748e2c81e78e74edbc694a64caa7b95dda2",
      "tree": "563f5e7796b451fbefb49fa441f18374a4a761a1",
      "parents": [
        "a053958f073740219df1da596b42bfefdab634c4"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 03 11:12:23 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 13:58:54 2009 +0200"
      },
      "message": "tracing: remove CALLER_ADDR2 from wakeup tracer\n\nManeesh Soni was getting a crash when running the wakeup tracer.\nWe debugged it down to the recording of the function with the\nCALLER_ADDR2 macro.  This is used to get the location of the caller\nto schedule.\n\nBut the problem comes when schedule is called by assmebly. In the case\nthat Maneesh had, retint_careful would call schedule. But retint_careful\ndoes not set up a proper frame pointer. CALLER_ADDR2 is defined as\n__builtin_return_address(2). This produces the following assembly in\nthe wakeup tracer code.\n\n   mov    0x0(%rbp),%rcx  \u003c--- get the frame pointer of the caller\n   mov    %r14d,%r8d\n   mov    0xf2de8e(%rip),%rdi\n\n   mov    0x8(%rcx),%rsi  \u003c-- this is __builtin_return_address(1)\n   mov    0x28(%rdi,%rax,8),%rbx\n\n   mov    (%rcx),%rax  \u003c-- get the frame pointer of the caller\u0027s caller\n   mov    %r12,%rcx\n   mov    0x8(%rax),%rdx \u003c-- this is __builtin_return_address(2)\n\nAt the reading of 0x8(%rax) Maneesh\u0027s machine would take a fault.\nThe reason is that retint_careful did not set up the return address\nand the content of %rax here was zero.\n\nTo verify this, I sent Maneesh a patch to create a frame pointer\nin retint_careful. He ran the test again but this time he would take\nthe same type of fault from sysret_careful. The retint_careful was no\nlonger an issue, but there are other callers that still have issues.\n\nInstead of adding frame pointers for all callers to schedule (in possibly\nall archs), it is much safer to simply not use CALLER_ADDR2. This\nloses out on knowing what called schedule, but the function tracer\nwill help there if needed.\n\nReported-by: Maneesh Soni \u003cmaneesh@in.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "93776a8ec746cf9d32c36e5a5b23d28d8be28826",
      "tree": "6c472ae9f709246ee5268e1d71559d07839fb965",
      "parents": [
        "34886c8bc590f078d4c0b88f50d061326639198d",
        "d508afb437daee7cf07da085b635c44a4ebf9b38"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 13:47:33 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 13:47:45 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/core\n\nMerge reason: update to upstream tracing facilities\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a053958f073740219df1da596b42bfefdab634c4",
      "tree": "f681f808db3d5df5d7987199c8224031982bcf3f",
      "parents": [
        "4fafd5b03875612a24a5b17dac0c63217a65de42",
        "e2494e1b42ebac402324105d57646489d19e2b01"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 13:40:49 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 13:40:55 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/blktrace-fixes\u0027 into tracing/urgent\n\nMerge reason: this used to be a tracing/blktrace-v2 devel topic still\n              cooking during the merge window - has propagated to fixes\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5e34437840d33554f69380584311743b39e8fbeb",
      "tree": "e081135619ee146af5efb9ee883afca950df5757",
      "parents": [
        "77d05632baee21b1cef8730d7c06aa69601e4dca",
        "d508afb437daee7cf07da085b635c44a4ebf9b38"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 11:15:40 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 07 11:15:40 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/softlockup\n\nConflicts:\n\tkernel/sysctl.c\n"
    },
    {
      "commit": "2e45e77787c9d0720b046eb69856edf43b17e33e",
      "tree": "56c2bd470e3eec849bb8bb0a2263a6ef0b4b7694",
      "parents": [
        "d508afb437daee7cf07da085b635c44a4ebf9b38"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Apr 07 17:12:43 2009 +0930"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Apr 07 17:12:43 2009 +0930"
      },
      "message": "Revert \"module: remove the SHF_ALLOC flag on the __versions section.\"\n\nThis reverts commit 9cb610d8e35fe3ec95a2fe2030b02f85aeea83c1.\n\nThis was an impressively stupid patch.  Firstly, we reset the SHF_ALLOC\nflag lower down in the same function, so the patch was useless.  Even\nbetter, find_sec() ignores sections with SHF_ALLOC not set, so\nit breaks CONFIG_MODVERSIONS\u003dy with CONFIG_MODULE_FORCE_LOAD\u003dn, which\nrefuses to load the module since it can\u0027t find the __versions section.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "432870dab85a2f69dc417022646cb9a70acf7f94",
      "tree": "4c9c08d7fb77744b1fd04615a76ab0a9105fad07",
      "parents": [
        "22ae77bc7ac115b9d518d5cbc13d39317079b2b0"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Apr 06 16:16:02 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 06 14:57:23 2009 -0700"
      },
      "message": "exit_notify: kill the wrong capable(CAP_KILL) check\n\nThe CAP_KILL check in exit_notify() looks just wrong, kill it.\n\nWhatever logic we have to reset -\u003eexit_signal, the malicious user\ncan bypass it if it execs the setuid application before exiting.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd5f9a4c3199b090e91ea0064cb110985ba54814",
      "tree": "67d4da296ab85a96f28580420bf4cdef84d3aaaa",
      "parents": [
        "609862be074cc20e007c640fd936ffe798b41abc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 06 13:38:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 06 13:38:46 2009 -0700"
      },
      "message": "kernel/sysctl.c: avoid annoying warnings\n\nSome of the limit constants are used only depending on some complex\nconfiguration dependencies, yet it\u0027s not worth making the simple\nvariables depend on those configuration details.  Just mark them as\nperhaps not being unused, and avoid the warning.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "609862be074cc20e007c640fd936ffe798b41abc",
      "tree": "2ebcacf036fce1b075fe267f608b6abe3f196c67",
      "parents": [
        "12fe32e4f942ac5c71a4ab70b039fee65c0dc29d",
        "eedeeabdeeadb016b8c783e3620d06b98d0cb4e1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 06 13:37:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 06 13:37:30 2009 -0700"
      },
      "message": "Merge branch \u0027locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  lockdep: add stack dumps to asserts\n  hrtimer: fix rq-\u003elock inversion (again)\n"
    },
    {
      "commit": "12fe32e4f942ac5c71a4ab70b039fee65c0dc29d",
      "tree": "b0878e49e9fab1fd154fde1dd57057391831b668",
      "parents": [
        "a63856252d2112e7c452696037a86ceb12f47f80",
        "2121db74ba0fd2259f0e2265511684fadda9ac49"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 06 13:30:00 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 06 13:30:00 2009 -0700"
      },
      "message": "Merge branch \u0027kmemtrace-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027kmemtrace-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  kmemtrace: trace kfree() calls with NULL or zero-length objects\n  kmemtrace: small cleanups\n  kmemtrace: restore original tracing data binary format, improve ABI\n  kmemtrace: kmemtrace_alloc() must fill type_id\n  kmemtrace: use tracepoints\n  kmemtrace, rcu: don\u0027t include unnecessary headers, allow kmemtrace w/ tracepoints\n  kmemtrace, rcu: fix rcupreempt.c data structure dependencies\n  kmemtrace, rcu: fix rcu_tree_trace.c data structure dependencies\n  kmemtrace, rcu: fix linux/rcutree.h and linux/rcuclassic.h dependencies\n  kmemtrace, mm: fix slab.h dependency problem in mm/failslab.c\n  kmemtrace, kbuild: fix slab.h dependency problem in lib/decompress_unlzma.c\n  kmemtrace, kbuild: fix slab.h dependency problem in lib/decompress_bunzip2.c\n  kmemtrace, kbuild: fix slab.h dependency problem in lib/decompress_inflate.c\n  kmemtrace, squashfs: fix slab.h dependency problem in squasfs\n  kmemtrace, befs: fix slab.h dependency problem\n  kmemtrace, security: fix linux/key.h header file dependencies\n  kmemtrace, fs: fix linux/fdtable.h header file dependencies\n  kmemtrace, fs: uninline simple_transaction_set()\n  kmemtrace, fs, security: move alloc_secdata() and free_secdata() to linux/security.h\n"
    },
    {
      "commit": "9efe21cb82b5dbe3b0b2ae4de4eccc64ecb94e95",
      "tree": "7ff8833745d2f268f897f6fa4a27263b4a572245",
      "parents": [
        "de18836e447c2dc30120c0919b8db8ddc0401cc4",
        "0221c81b1b8eb0cbb6b30a0ced52ead32d2b4e4c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 06 01:41:22 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 06 01:41:22 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into irq/threaded\n\nConflicts:\n\tinclude/linux/irq.h\n\tkernel/irq/handle.c\n"
    },
    {
      "commit": "0221c81b1b8eb0cbb6b30a0ced52ead32d2b4e4c",
      "tree": "fe96cf58638e23d123d43eab2f6c56d1af341d9c",
      "parents": [
        "48f286a28fe13fcbc510720fcffb872a184b51dd",
        "def57543418a5f47debae28a0a9dea2effc11692"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 05 12:36:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 05 12:36:11 2009 -0700"
      },
      "message": "Merge branch \u0027audit.b62\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current\n\n* \u0027audit.b62\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current:\n  Audit: remove spaces from audit_log_d_path\n  audit: audit_set_auditable defined but not used\n  audit: incorrect ref counting in audit tree tag_chunk\n  audit: Fix possible return value truncation in audit_get_context()\n  audit: ignore terminating NUL in AUDIT_USER_TTY messages\n  Audit: fix handling of \u0027strings\u0027 with NULL characters\n  make the e-\u003erule.xxx shorter in kernel auditfilter.c\n  auditsc: fix kernel-doc notation\n  audit: EXECVE record - removed bogus newline\n"
    },
    {
      "commit": "714f83d5d9f7c785f622259dad1f4fad12d64664",
      "tree": "20563541ae438e11d686b4d629074eb002a481b7",
      "parents": [
        "8901e7ffc2fa78ede7ce9826dbad68a3a25dc2dc",
        "645dae969c3b8651c5bc7c54a1835ec03820f85f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 05 11:04:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 05 11:04:19 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (413 commits)\n  tracing, net: fix net tree and tracing tree merge interaction\n  tracing, powerpc: fix powerpc tree and tracing tree interaction\n  ring-buffer: do not remove reader page from list on ring buffer free\n  function-graph: allow unregistering twice\n  trace: make argument \u0027mem\u0027 of trace_seq_putmem() const\n  tracing: add missing \u0027extern\u0027 keywords to trace_output.h\n  tracing: provide trace_seq_reserve()\n  blktrace: print out BLK_TN_MESSAGE properly\n  blktrace: extract duplidate code\n  blktrace: fix memory leak when freeing struct blk_io_trace\n  blktrace: fix blk_probes_ref chaos\n  blktrace: make classic output more classic\n  blktrace: fix off-by-one bug\n  blktrace: fix the original blktrace\n  blktrace: fix a race when creating blk_tree_root in debugfs\n  blktrace: fix timestamp in binary output\n  tracing, Text Edit Lock: cleanup\n  tracing: filter fix for TRACE_EVENT_FORMAT events\n  ftrace: Using FTRACE_WARN_ON() to check \"freed record\" in ftrace_release()\n  x86: kretprobe-booster interrupt emulation code fix\n  ...\n\nFix up trivial conflicts in\n arch/parisc/include/asm/ftrace.h\n include/linux/memory.h\n kernel/extable.c\n kernel/module.c\n"
    },
    {
      "commit": "def57543418a5f47debae28a0a9dea2effc11692",
      "tree": "9f27756c75502f6331c5c4260f36779a7b9555bc",
      "parents": [
        "679173b724631f49e537a15fa48ea2000bdc1808"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Mar 10 18:00:14 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Apr 05 13:49:04 2009 -0400"
      },
      "message": "Audit: remove spaces from audit_log_d_path\n\naudit_log_d_path had spaces in the strings which would be emitted on the\nerror paths.  This patch simply replaces those spaces with an _ or removes\nthe needless spaces entirely.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "679173b724631f49e537a15fa48ea2000bdc1808",
      "tree": "f5211fea378788dab49654e15916f6ba73faa4b4",
      "parents": [
        "318b6d3d7ddbcad3d6867e630711b8a705d873d7"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Jan 26 18:09:45 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Apr 05 13:48:52 2009 -0400"
      },
      "message": "audit: audit_set_auditable defined but not used\n\nafter 0590b9335a1c72a3f0defcc6231287f7817e07c8 audit_set_auditable() is now only\nused by the audit tree code.  If CONFIG_AUDIT_TREE is unset it will be defined\nbut unused.  This patch simply moves the function inside a CONFIG_AUDIT_TREE\nblock.\n\ncc1: warnings being treated as errors\n/home/acme_unencrypted/git/linux-2.6-tip/kernel/auditsc.c:745: error: ‘audit_set_auditable’ defined but not used\nmake[2]: *** [kernel/auditsc.o] Error 1\nmake[1]: *** [kernel] Error 2\nmake[1]: *** Waiting for unfinished jobs....\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "318b6d3d7ddbcad3d6867e630711b8a705d873d7",
      "tree": "bdf1d75e26b1dc5ea4db67c6061f444c26eb9799",
      "parents": [
        "6d208da89aabee8502debe842832ca0ab298d16d"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 13 17:32:40 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Apr 05 13:48:26 2009 -0400"
      },
      "message": "audit: incorrect ref counting in audit tree tag_chunk\n\ntag_chunk has bad exit paths in which the inotify ref counting is wrong.\nAt the top of the function we found \u0026old_watch using  inotify_find_watch().\ninotify_find_watch takes a reference to the watch.  This is never dropped\non an error path.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6d208da89aabee8502debe842832ca0ab298d16d",
      "tree": "3ed68e7cab94ac7887dcd1d03f1b1fd9a927a001",
      "parents": [
        "55ad2f8d340678397de5916b9cd960f17ebd7150"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Wed Apr 01 15:47:27 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Apr 05 13:46:19 2009 -0400"
      },
      "message": "audit: Fix possible return value truncation in audit_get_context()\n\nThe audit subsystem treats syscall return codes as type long, unfortunately\nthe audit_get_context() function mistakenly converts the return code to an\nint type in the parameters which could cause problems on systems where the\nsizeof(int) !\u003d sizeof(long).\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "55ad2f8d340678397de5916b9cd960f17ebd7150",
      "tree": "6df2974acdd023948fda996119ff94a3eaf6ab5d",
      "parents": [
        "b3897f567100d18e0597f638b911d23aa5e0dd23"
      ],
      "author": {
        "name": "Miloslav Trmac",
        "email": "mitr@redhat.com",
        "time": "Thu Mar 19 09:52:47 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Apr 05 13:43:36 2009 -0400"
      },
      "message": "audit: ignore terminating NUL in AUDIT_USER_TTY messages\n\nAUDIT_USER_TTY, like all other messages sent from user-space, is sent\nNUL-terminated.  Unlike other user-space audit messages, which come only\nfrom trusted sources, AUDIT_USER_TTY messages are processed using\naudit_log_n_untrustedstring().\n\nThis patch modifies AUDIT_USER_TTY handling to ignore the trailing NUL\nand use the \"quoted_string\" representation of the message if possible.\n\nSigned-off-by: Miloslav Trmac \u003cmitr@redhat.com\u003e\nCc: Eric Paris \u003ceparis@redhat.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Steve Grubb \u003csgrubb@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    }
  ],
  "next": "b3897f567100d18e0597f638b911d23aa5e0dd23"
}
