)]}'
{
  "log": [
    {
      "commit": "73937f5face75e05ec2a72966d04f4e20aa18379",
      "tree": "f3c12b4daec9f72dbecc33001f33ee210c046fec",
      "parents": [
        "3063b5a519b392dd13afd2ffe820eba312db2759"
      ],
      "author": {
        "name": "Maya Erez",
        "email": "merez@codeaurora.org",
        "time": "Thu May 24 23:33:05 2012 +0300"
      },
      "committer": {
        "name": "Maya Erez",
        "email": "merez@codeaurora.org",
        "time": "Thu May 24 23:33:05 2012 +0300"
      },
      "message": "block: ioctl support for sanitize in eMMC 4.5\n\nAdding a new ioctl to support sanitize operation in eMMC\ncards version 4.5.\nThe sanitize ioctl support helps performing this operation\nvia user application.\n\nChange-Id: I79aa4163e7753a75bed5a26a9a92de902b4b9c21\nSigned-off-by: Yaniv Gardi \u003cygardi@codeaurora.org\u003e\nSigned-off-by: Maya Erez \u003cmerez@codeaurora.org\u003e\n"
    },
    {
      "commit": "a76e99abc558aed633ba28ff61c5328116292bf3",
      "tree": "60f7677f0baafa00825accc1214839246b3e78dd",
      "parents": [
        "a54734678ff9cb97938b9f7648547174f3b118e4",
        "1d05f993784973189395051cc711fdd6dd5eb389"
      ],
      "author": {
        "name": "Rohit Vaswani",
        "email": "rvaswani@codeaurora.org",
        "time": "Fri Mar 30 00:09:34 2012 -0700"
      },
      "committer": {
        "name": "Rohit Vaswani",
        "email": "rvaswani@codeaurora.org",
        "time": "Fri Mar 30 00:09:34 2012 -0700"
      },
      "message": "Merge branch \u0027Linux 3.0.21\u0027 into msm-3.0\n\nMerge Upstream\u0027s stable 3.0.21 branch into msm-3.0\nThis consists 814 commits and some merge conflicts.\n\nThe merge conflicts are because of some local changes to\nmsm-3.0 as well as some conflicts between google\u0027s tree and\nthe upstream tree.\n\nConflicts:\n\tarch/arm/kernel/head.S\n\tdrivers/bluetooth/ath3k.c\n\tdrivers/bluetooth/btusb.c\n\tdrivers/mmc/core/core.c\n\tdrivers/tty/serial/serial_core.c\n\tdrivers/usb/host/ehci-hub.c\n\tdrivers/usb/serial/qcserial.c\n\tfs/namespace.c\n\tfs/proc/base.c\n\nChange-Id: I62e2edbe213f84915e27f8cd6e4f6ce23db22a21\nSigned-off-by: Rohit Vaswani \u003crvaswani@codeaurora.org\u003e\n"
    },
    {
      "commit": "da8ae089a79cdc37589cab581a2ca9cf48f98904",
      "tree": "aa95891ffdec00d331c6e0c97e83c848957e35c0",
      "parents": [
        "2ffe3ccf80eba0ac9ca71c41e7357d92f1c08fc3"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Mon Dec 05 18:22:48 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Feb 03 09:18:54 2012 -0800"
      },
      "message": "ftrace: Fix unregister ftrace_ops accounting\n\ncommit 30fb6aa74011dcf595f306ca2727254d708b786e upstream.\n\nMultiple users of the function tracer can register their functions\nwith the ftrace_ops structure. The accounting within ftrace will\nupdate the counter on each function record that is being traced.\nWhen the ftrace_ops filtering adds or removes functions, the\nfunction records will be updated accordingly if the ftrace_ops is\nstill registered.\n\nWhen a ftrace_ops is removed, the counter of the function records,\nthat the ftrace_ops traces, are decremented. When they reach zero\nthe functions that they represent are modified to stop calling the\nmcount code.\n\nWhen changes are made, the code is updated via stop_machine() with\na command passed to the function to tell it what to do. There is an\nENABLE and DISABLE command that tells the called function to enable\nor disable the functions. But the ENABLE is really a misnomer as it\nshould just update the records, as records that have been enabled\nand now have a count of zero should be disabled.\n\nThe DISABLE command is used to disable all functions regardless of\ntheir counter values. This is the big off switch and is not the\ncomplement of the ENABLE command.\n\nTo make matters worse, when a ftrace_ops is unregistered and there\nis another ftrace_ops registered, neither the DISABLE nor the\nENABLE command are set when calling into the stop_machine() function\nand the records will not be updated to match their counter. A command\nis passed to that function that will update the mcount code to call\nthe registered callback directly if it is the only one left. This\nmeans that the ftrace_ops that is still registered will have its callback\ncalled by all functions that have been set for it as well as the ftrace_ops\nthat was just unregistered.\n\nHere\u0027s a way to trigger this bug. Compile the kernel with\nCONFIG_FUNCTION_PROFILER set and with CONFIG_FUNCTION_GRAPH not set:\n\n CONFIG_FUNCTION_PROFILER\u003dy\n # CONFIG_FUNCTION_GRAPH is not set\n\nThis will force the function profiler to use the function tracer instead\nof the function graph tracer.\n\n  # cd /sys/kernel/debug/tracing\n  # echo schedule \u003e set_ftrace_filter\n  # echo function \u003e current_tracer\n  # cat set_ftrace_filter\n schedule\n  # cat trace\n # tracer: nop\n #\n # entries-in-buffer/entries-written: 692/68108025   #P:4\n #\n #                              _-----\u003d\u003e irqs-off\n #                             / _----\u003d\u003e need-resched\n #                            | / _---\u003d\u003e hardirq/softirq\n #                            || / _--\u003d\u003e preempt-depth\n #                            ||| /     delay\n #           TASK-PID   CPU#  ||||    TIMESTAMP  FUNCTION\n #              | |       |   ||||       |         |\n      kworker/0:2-909   [000] ....   531.235574: schedule \u003c-worker_thread\n           \u003cidle\u003e-0     [001] .N..   531.235575: schedule \u003c-cpu_idle\n      kworker/0:2-909   [000] ....   531.235597: schedule \u003c-worker_thread\n             sshd-2563  [001] ....   531.235647: schedule \u003c-schedule_hrtimeout_range_clock\n\n  # echo 1 \u003e function_profile_enabled\n  # echo 0 \u003e function_porfile_enabled\n  # cat set_ftrace_filter\n schedule\n  # cat trace\n # tracer: function\n #\n # entries-in-buffer/entries-written: 159701/118821262   #P:4\n #\n #                              _-----\u003d\u003e irqs-off\n #                             / _----\u003d\u003e need-resched\n #                            | / _---\u003d\u003e hardirq/softirq\n #                            || / _--\u003d\u003e preempt-depth\n #                            ||| /     delay\n #           TASK-PID   CPU#  ||||    TIMESTAMP  FUNCTION\n #              | |       |   ||||       |         |\n           \u003cidle\u003e-0     [002] ...1   604.870655: local_touch_nmi \u003c-cpu_idle\n           \u003cidle\u003e-0     [002] d..1   604.870655: enter_idle \u003c-cpu_idle\n           \u003cidle\u003e-0     [002] d..1   604.870656: atomic_notifier_call_chain \u003c-enter_idle\n           \u003cidle\u003e-0     [002] d..1   604.870656: __atomic_notifier_call_chain \u003c-atomic_notifier_call_chain\n\nThe same problem could have happened with the trace_probe_ops,\nbut they are modified with the set_frace_filter file which does the\nupdate at closure of the file.\n\nThe simple solution is to change ENABLE to UPDATE and call it every\ntime an ftrace_ops is unregistered.\n\nLink: http://lkml.kernel.org/r/1323105776-26961-3-git-send-email-jolsa@redhat.com\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "2ffe3ccf80eba0ac9ca71c41e7357d92f1c08fc3",
      "tree": "b25759efa685d002b043e657fa3d05624c85eaaa",
      "parents": [
        "f935e6192f9e068da8f8395f032ff4b721fe8510"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jul 13 15:08:31 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Feb 03 09:18:54 2012 -0800"
      },
      "message": "ftrace: Update filter when tracing enabled in set_ftrace_filter()\n\ncommit 072126f4529196f71a97960248bca54fd4554c2d upstream.\n\nCurrently, if set_ftrace_filter() is called when the ftrace_ops is\nactive, the function filters will not be updated. They will only be updated\nwhen tracing is disabled and re-enabled.\n\nUpdate the functions immediately during set_ftrace_filter().\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "f935e6192f9e068da8f8395f032ff4b721fe8510",
      "tree": "d98c511790df01d7e362a50b72a169ae11008b61",
      "parents": [
        "3ce5564096c4444197e6f7dc83a9dbc63392b084"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jul 13 15:03:44 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Feb 03 09:18:53 2012 -0800"
      },
      "message": "ftrace: Balance records when updating the hash\n\ncommit 41fb61c2d08107ce96a5dcb3a6289b2afd3e135c upstream.\n\nWhenever the hash of the ftrace_ops is updated, the record counts\nmust be balance. This requires disabling the records that are set\nin the original hash, and then enabling the records that are set\nin the updated hash.\n\nMoving the update into ftrace_hash_move() removes the bug where the\nhash was updated but the records were not, which results in ftrace\ntriggering a warning and disabling itself because the ftrace_ops filter\nis updated while the ftrace_ops was registered, and then the failure\nhappens when the ftrace_ops is unregistered.\n\nThe current code will not trigger this bug, but new code will.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "72153812cf48340558f6436dabd3390b987ed5f5",
      "tree": "01d05853512e0512b15bda3de26e542383fd0025",
      "parents": [
        "56b42db68ddf6aac9bc33130535e2a52d309ceea"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Jan 14 22:53:54 2012 -0800"
      },
      "committer": {
        "name": "Rohit Vaswani",
        "email": "rvaswani@codeaurora.org",
        "time": "Mon Jan 16 13:20:27 2012 -0800"
      },
      "message": "tracing: Clean up tb_fmt to not give faulty compile warning\n\ngcc incorrectly states that the variable \"fmt\" is uninitialized when\nCC_OPITMIZE_FOR_SIZE is set.\n\nInstead of just blindly setting fmt to NULL, the code is cleaned up\na little to be a bit easier for humans to follow, as well as gcc\nto know the variables are initialized.\n\nChange-Id: Ia5fb9cc6be8eadae9af3a5636a2459ed7cd48662\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Rohit Vaswani \u003crvaswani@codeaurora.org\u003e\n"
    },
    {
      "commit": "eda31b190f7c7033b86ff6e8de3866a4ca25b7df",
      "tree": "ed17bff7b228d122699d232e4d62fe70bea64a08",
      "parents": [
        "4ebbdc2c9aad8e28e1335755c728d31032b24cfb"
      ],
      "author": {
        "name": "Ilya Dryomov",
        "email": "idryomov@gmail.com",
        "time": "Mon Oct 31 11:07:42 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:48 2011 -0800"
      },
      "message": "tracing: fix event_subsystem ref counting\n\ncommit cb59974742aea24adf6637eb0c4b8e7b48bca6fb upstream.\n\nFix a bug introduced by e9dbfae5, which prevents event_subsystem from\never being released.\n\nRef_count was added to keep track of subsystem users, not for counting\nevents.  Subsystem is created with ref_count \u003d 1, so there is no need to\nincrement it for every event, we have nr_events for that.  Fix this by\ntouching ref_count only when we actually have a new user -\nsubsystem_open().\n\nSigned-off-by: Ilya Dryomov \u003cidryomov@gmail.com\u003e\nLink: http://lkml.kernel.org/r/1320052062-7846-1-git-send-email-idryomov@gmail.com\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "4e3cd8129cf10c92c8e88251b519703dc65523be",
      "tree": "1cec02db446345585db2afbfeb480d9b8b95042b",
      "parents": [
        "e006de470fa793b770cb098b39b46212a35b1b2b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Nov 23 08:49:49 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:47 2011 -0800"
      },
      "message": "trace_events_filter: Use rcu_assign_pointer() when setting ftrace_event_call-\u003efilter\n\ncommit d3d9acf646679c1981032b0985b386d12fccc60c upstream.\n\nftrace_event_call-\u003efilter is sched RCU protected but didn\u0027t use\nrcu_assign_pointer().  Use it.\n\nTODO: Add proper __rcu annotation to call-\u003efilter and all its users.\n\n-v2: Use RCU_INIT_POINTER() for %NULL clearing as suggested by Eric.\n\nLink: http://lkml.kernel.org/r/20111123164949.GA29639@google.com\n\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "12cb3e734a5616ea0057aee938c553ff6ccbdfbd",
      "tree": "828c560746757c997c97a76777444a036a5ef9ac",
      "parents": [
        "d59892017c5f6de2fdee221f2a7788696e9f2cda"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Oct 14 10:44:25 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:35:53 2011 -0800"
      },
      "message": "tracing: Fix returning of duplicate data after EOF in trace_pipe_raw\n\ncommit 436fc280261dcfce5af38f08b89287750dc91cd2 upstream.\n\nThe trace_pipe_raw handler holds a cached page from the time the file\nis opened to the time it is closed. The cached page is used to handle\nthe case of the user space buffer being smaller than what was read from\nthe ring buffer. The left over buffer is held in the cache so that the\nnext read will continue where the data left off.\n\nAfter EOF is returned (no more data in the buffer), the index of\nthe cached page is set to zero. If a user app reads the page again\nafter EOF, the check in the buffer will see that the cached page\nis less than page size and will return the cached page again. This\nwill cause reading the trace_pipe_raw again after EOF to return\nduplicate data, making the output look like the time went backwards\nbut instead data is just repeated.\n\nThe fix is to not reset the index right after all data is read\nfrom the cache, but to reset it after all data is read and more\ndata exists in the ring buffer.\n\nReported-by: Jeremy Eder \u003cjeder@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9374622a9923b2343ee2f5083ebe6c51fcc914c5",
      "tree": "e8bb3d4a219b791361b4c9d716350d17be0b7d8f",
      "parents": [
        "d7f04c486e494bf96166ff53b0957369e32509c6"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jul 14 23:02:27 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Oct 16 14:14:55 2011 -0700"
      },
      "message": "ftrace: Fix regression where ftrace breaks when modules are loaded\n\ncommit f7bc8b61f65726ff98f52e286b28e294499d7a08 upstream.\n\nEnabling function tracer to trace all functions, then load a module and\nthen disable function tracing will cause ftrace to fail.\n\nThis can also happen by enabling function tracing on the command line:\n\n  ftrace\u003dfunction\n\nand during boot up, modules are loaded, then you disable function tracing\nwith \u0027echo nop \u003e current_tracer\u0027 you will trigger a bug in ftrace that\nwill shut itself down.\n\nThe reason is, the new ftrace code keeps ref counts of all ftrace_ops that\nare registered for tracing. When one or more ftrace_ops are registered,\nall the records that represent the functions that the ftrace_ops will\ntrace have a ref count incremented. If this ref count is not zero,\nwhen the code modification runs, that function will be enabled for tracing.\nIf the ref count is zero, that function will be disabled from tracing.\n\nTo make sure the accounting was working, FTRACE_WARN_ON()s were added\nto updating of the ref counts.\n\nIf the ref count hits its max (\u003e 2^30 ftrace_ops added), or if\nthe ref count goes below zero, a FTRACE_WARN_ON() is triggered which\ndisables all modification of code.\n\nSince it is common for ftrace_ops to trace all functions in the kernel,\ninstead of creating \u003e 20,000 hash items for the ftrace_ops, the hash\ncount is just set to zero, and it represents that the ftrace_ops is\nto trace all functions. This is where the issues arrise.\n\nIf you enable function tracing to trace all functions, and then add\na module, the modules function records do not get the ref count updated.\nWhen the function tracer is disabled, all function records ref counts\nare subtracted. Since the modules never had their ref counts incremented,\nthey go below zero and the FTRACE_WARN_ON() is triggered.\n\nThe solution to this is rather simple. When modules are loaded, and\ntheir functions are added to the the ftrace pool, look to see if any\nftrace_ops are registered that trace all functions. And for those,\nupdate the ref count for the module function records.\n\nReported-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n\n"
    },
    {
      "commit": "d7f04c486e494bf96166ff53b0957369e32509c6",
      "tree": "5f133f3a4b823bcbdbe66aa1265254bf8f7e316f",
      "parents": [
        "e35c99bc50ef74c02244d6e6d40868f9a49a59be"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jul 07 11:09:22 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Oct 16 14:14:55 2011 -0700"
      },
      "message": "ftrace: Fix regression of :mod:module function enabling\n\ncommit 43dd61c9a09bd413e837df829e6bfb42159be52a upstream.\n\nThe new code that allows different utilities to pick and choose\nwhat functions they trace broke the :mod: hook that allows users\nto trace only functions of a particular module.\n\nThe reason is that the :mod: hook bypasses the hash that is setup\nto allow individual users to trace their own functions and uses\nthe global hash directly. But if the global hash has not been\nset up, it will cause a bug:\n\necho \u0027*:mod:radeon\u0027 \u003e /sys/kernel/debug/set_ftrace_filter\n\nproduces:\n\n [drm:drm_mode_getfb] *ERROR* invalid framebuffer id\n [drm:radeon_crtc_page_flip] *ERROR* failed to reserve new rbo buffer before flip\n BUG: unable to handle kernel paging request at ffffffff8160ec90\n IP: [\u003cffffffff810d9136\u003e] add_hash_entry+0x66/0xd0\n PGD 1a05067 PUD 1a09063 PMD 80000000016001e1\n Oops: 0003 [#1] SMP Jul  7 04:02:28 phyllis kernel: [55303.858604] CPU 1\n Modules linked in: cryptd aes_x86_64 aes_generic binfmt_misc rfcomm bnep ip6table_filter hid radeon r8169 ahci libahci mii ttm drm_kms_helper drm video i2c_algo_bit intel_agp intel_gtt\n\n Pid: 10344, comm: bash Tainted: G        WC  3.0.0-rc5 #1 Dell Inc. Inspiron N5010/0YXXJJ\n RIP: 0010:[\u003cffffffff810d9136\u003e]  [\u003cffffffff810d9136\u003e] add_hash_entry+0x66/0xd0\n RSP: 0018:ffff88003a96bda8  EFLAGS: 00010246\n RAX: ffff8801301735c0 RBX: ffffffff8160ec80 RCX: 0000000000306ee0\n RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffff880137c92940\n RBP: ffff88003a96bdb8 R08: ffff880137c95680 R09: 0000000000000000\n R10: 0000000000000001 R11: 0000000000000000 R12: ffffffff81c9df78\n R13: ffff8801153d1000 R14: 0000000000000000 R15: 0000000000000000\n FS: 00007f329c18a700(0000) GS:ffff880137c80000(0000) knlGS:0000000000000000\n CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\n CR2: ffffffff8160ec90 CR3: 000000003002b000 CR4: 00000000000006e0\n DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n Process bash (pid: 10344, threadinfo ffff88003a96a000, task ffff88012fcfc470)\n Stack:\n  0000000000000fd0 00000000000000fc ffff88003a96be38 ffffffff810d92f5\n  ffff88011c4c4e00 ffff880000000000 000000000b69f4d0 ffffffff8160ec80\n  ffff8800300e6f06 0000000081130295 0000000000000282 ffff8800300e6f00\n Call Trace:\n  [\u003cffffffff810d92f5\u003e] match_records+0x155/0x1b0\n  [\u003cffffffff810d940c\u003e] ftrace_mod_callback+0xbc/0x100\n  [\u003cffffffff810dafdf\u003e] ftrace_regex_write+0x16f/0x210\n  [\u003cffffffff810db09f\u003e] ftrace_filter_write+0xf/0x20\n  [\u003cffffffff81166e48\u003e] vfs_write+0xc8/0x190\n  [\u003cffffffff81167001\u003e] sys_write+0x51/0x90\n  [\u003cffffffff815c7e02\u003e] system_call_fastpath+0x16/0x1b\n Code: 48 8b 33 31 d2 48 85 f6 75 33 49 89 d4 4c 03 63 08 49 8b 14 24 48 85 d2 48 89 10 74 04 48 89 42 08 49 89 04 24 4c 89 60 08 31 d2\n RIP [\u003cffffffff810d9136\u003e] add_hash_entry+0x66/0xd0\n  RSP \u003cffff88003a96bda8\u003e\n CR2: ffffffff8160ec90\n ---[ end trace a5d031828efdd88e ]---\n\nReported-by: Brian Marete \u003cmarete@toshnix.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ff7b3dc6a634832a912445db8bffd18b05c15043",
      "tree": "f43c5cd10398a1c91f8ff6b061a8b663663d84fb",
      "parents": [
        "f35869d69b65ac9323a0d7ee13c062e1636d4a1b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Jul 05 14:32:51 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:38 2011 -0700"
      },
      "message": "tracing: Have \"enable\" file use refcounts like the \"filter\" file\n\ncommit 40ee4dffff061399eb9358e0c8fcfbaf8de4c8fe upstream.\n\nThe \"enable\" file for the event system can be removed when a module\nis unloaded and the event system only has events from that module.\nAs the event system nr_events count goes to zero, it may be freed\nif its ref_count is also set to zero.\n\nLike the \"filter\" file, the \"enable\" file may be opened by a task and\nreferenced later, after a module has been unloaded and the events for\nthat event system have been removed.\n\nAlthough the \"filter\" file referenced the event system structure,\nthe \"enable\" file only references a pointer to the event system\nname. Since the name is freed when the event system is removed,\nit is possible that an access to the \"enable\" file may reference\na freed pointer.\n\nUpdate the \"enable\" file to use the subsystem_open() routine that\nthe \"filter\" file uses, to keep a reference to the event system\nstructure while the \"enable\" file is opened.\n\nReported-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f35869d69b65ac9323a0d7ee13c062e1636d4a1b",
      "tree": "4923438fa988ce2602b00f2607d8b8d58c39da00",
      "parents": [
        "a3b573350c48edd314b4bdd4f3025b4fda13f0dd"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Jul 05 11:36:06 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:38 2011 -0700"
      },
      "message": "tracing: Fix bug when reading system filters on module removal\n\ncommit e9dbfae53eeb9fc3d4bb7da3df87fa9875f5da02 upstream.\n\nThe event system is freed when its nr_events is set to zero. This happens\nwhen a module created an event system and then later the module is\nremoved. Modules may share systems, so the system is allocated when\nit is created and freed when the modules are unloaded and all the\nevents under the system are removed (nr_events set to zero).\n\nThe problem arises when a task opened the \"filter\" file for the\nsystem. If the module is unloaded and it removed the last event for\nthat system, the system structure is freed. If the task that opened\nthe filter file accesses the \"filter\" file after the system has\nbeen freed, the system will access an invalid pointer.\n\nBy adding a ref_count, and using it to keep track of what\nis using the event system, we can free it after all users\nare finished with the event system.\n\nReported-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "db5e7ecc4abc91b9f26f0c0d79ef88a51e987d90",
      "tree": "022c475cc132e64f01c0765d2d965c0aa5df2286",
      "parents": [
        "5cf42f7055648aaba68ce95ecec69128d7fbf65f"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jun 09 08:40:59 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jun 09 08:42:15 2011 -0400"
      },
      "message": "tracing: Fix regression in printk_formats file\n\nThe fix to fix the printk_formats of modules broke the\nprintk_formats of trace_printks in the kernel.\n\nThe update of what to show via the seq_file was only updated\nif the passed in fmt was NULL, which happens only on the first\niteration. The result was showing the first format every time\ninstead of iterating through the available formats.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a4f18ed11a4ddf327dd91cd19e237278600ad327",
      "tree": "bbe96241c6db2be16e881920a3312ec937ed7cd1",
      "parents": [
        "265a5b7ee3eb21a4d0e53e17d59ba6eada91af39"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Jun 07 09:26:46 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jun 07 14:49:19 2011 -0400"
      },
      "message": "ftrace: Revert 8ab2b7efd ftrace: Remove unnecessary disabling of irqs\n\nRevert the commit that removed the disabling of interrupts around\nthe initial modifying of mcount callers to nops, and update the comment.\n\nThe original comment was outdated and stated that the interrupts were\nbeing disabled to prevent kstop machine, which was required with the\nold ftrace daemon, but was no longer the case.\n\nWhat the comment failed to mention was that interrupts needed to be\ndisabled to keep interrupts from preempting the modifying of the code\nand then executing the code that was partially modified.\n\nRevert the commit and update the comment.\n\nReported-by: Richard W.M. Jones \u003crjones@redhat.com\u003e\nTested-by: Richard W.M. Jones \u003crjones@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "265a5b7ee3eb21a4d0e53e17d59ba6eada91af39",
      "tree": "52ad853f49e8949a307f475115cc682d44753287",
      "parents": [
        "0aff1c0cef13b34c17e81a502336fad738151c37"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Jun 06 22:35:13 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jun 07 14:47:36 2011 -0400"
      },
      "message": "kprobes/trace: Fix kprobe selftest for gcc 4.6\n\nWith gcc 4.6, the self test kprobe function:\n\n kprobe_trace_selftest_target()\n\nis optimized such that kallsyms does not list it. The kprobes\ntest uses this function to insert a probe and test it. But\nit will fail the test if the function is not listed in kallsyms.\n\nAdding a __used annotation keeps the symbol in the kallsyms table.\n\nSuggested-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nCc: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0aff1c0cef13b34c17e81a502336fad738151c37",
      "tree": "3bf383429c3d948bd34ff71ae78d82bb2439fab5",
      "parents": [
        "d7ebe75b065a7c2d58ffc12f9d2e00d5ea4e71eb"
      ],
      "author": {
        "name": "GuoWen Li",
        "email": "guowen.li.linux@gmail.com",
        "time": "Wed Jun 01 19:18:47 2011 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jun 06 22:34:25 2011 -0400"
      },
      "message": "ftrace: Fix possible undefined return code\n\nkernel/trace/ftrace.c: In function \u0027ftrace_regex_write.clone.15\u0027:\nkernel/trace/ftrace.c:2743:6: warning: \u0027ret\u0027 may be used uninitialized in this\nfunction\n\nSigned-off-by: GuoWen Li \u003cguowen.li.linux@gmail.com\u003e\nLink: http://lkml.kernel.org/r/201106011918.47939.guowen.li.linux@gmail.com\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b1cff0ad1062621ae63cb6c5dc4165191fe2e9f1",
      "tree": "81c35a8fe57b1a139416aac637b0fc198f67199d",
      "parents": [
        "7f34b746f79c1e1f8fd6d09799d133263ae7a504"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 25 14:27:43 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 25 22:13:49 2011 -0400"
      },
      "message": "ftrace: Add internal recursive checks\n\nWitold reported a reboot caused by the selftests of the dynamic function\ntracer. He sent me a config and I used ktest to do a config_bisect on it\n(as my config did not cause the crash). It pointed out that the problem\nconfig was CONFIG_PROVE_RCU.\n\nWhat happened was that if multiple callbacks are attached to the\nfunction tracer, we iterate a list of callbacks. Because the list is\nmanaged by synchronize_sched() and preempt_disable, the access to the\npointers uses rcu_dereference_raw().\n\nWhen PROVE_RCU is enabled, the rcu_dereference_raw() calls some\ndebugging functions, which happen to be traced. The tracing of the debug\nfunction would then call rcu_dereference_raw() which would then call the\ndebug function and then... well you get the idea.\n\nI first wrote two different patches to solve this bug.\n\n1) add a __rcu_dereference_raw() that would not do any checks.\n2) add notrace to the offending debug functions.\n\nBoth of these patches worked.\n\nTalking with Paul McKenney on IRC, he suggested to add recursion\ndetection instead. This seemed to be a better solution, so I decided to\nimplement it. As the task_struct already has a trace_recursion to detect\nrecursion in the ring buffer, and that has a very small number it\nallows, I decided to use that same variable to add flags that can detect\nthe recursion inside the infrastructure of the function tracer.\n\nI plan to change it so that the task struct bit can be checked in\nmcount, but as that requires changes to all archs, I will hold that off\nto the next merge window.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nLink: http://lkml.kernel.org/r/1306348063.1465.116.camel@gandalf.stny.rr.com\nReported-by: Witold Baryluk \u003cbaryluk@smp.if.uj.edu.pl\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "2fc1b6f0d0a719e1e2a30bf076a3a799feaf6af2",
      "tree": "3101c47095ef438b6657b7e0dbb57b2f7188666f",
      "parents": [
        "3b6cfdb1714a33ae4d2ca9fbc818a42cf7adee69"
      ],
      "author": {
        "name": "liubo",
        "email": "liubo2009@cn.fujitsu.com",
        "time": "Tue Apr 19 09:35:28 2011 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 25 22:13:44 2011 -0400"
      },
      "message": "tracing: Add __print_symbolic_u64 to avoid warnings on 32bit machine\n\nFilesystem, like Btrfs, has some \"ULL\" macros, and when these macros are passed\nto tracepoints\u0027__print_symbolic(), there will be 64-\u003e32 truncate WARNINGS during\ncompiling on 32bit box.\n\nSigned-off-by: Liu Bo \u003cliubo2009@cn.fujitsu.com\u003e\nLink: http://lkml.kernel.org/r/4DACE6E0.7000507@cn.fujitsu.com\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "3b6cfdb1714a33ae4d2ca9fbc818a42cf7adee69",
      "tree": "1fc1ca6ff17da6c7ab30d2dffa99d3cb6d4cfca4",
      "parents": [
        "17bb615ad4f8d2d2c0f02794d27d7f83e0009ef4"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon May 23 15:33:49 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 25 22:13:42 2011 -0400"
      },
      "message": "ftrace: Set ops-\u003eflag to enabled even on static function tracing\n\nWhen dynamic ftrace is not configured, the ops-\u003eflags still needs\nto have its FTRACE_OPS_FL_ENABLED bit set in ftrace_startup().\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "17bb615ad4f8d2d2c0f02794d27d7f83e0009ef4",
      "tree": "6d312c4fc2c35c057e77f257ec9b82be0ce27cce",
      "parents": [
        "a1cd6173596c6f7d1f0b41ac7d33ecf03c581edc"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon May 23 15:27:46 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 25 22:13:39 2011 -0400"
      },
      "message": "tracing: Have event with function tracer check error return\n\nThe self tests for event tracer does not check if the function\ntracing was successfully activated. It needs to before it continues\nthe tests, otherwise the wrong errors may be reported.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a1cd6173596c6f7d1f0b41ac7d33ecf03c581edc",
      "tree": "413ed775a2c48d8ad003740fa6ef0d912f784842",
      "parents": [
        "7cbc5b8d4a775a43875a09e29c49a2a8195b5b2d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon May 23 15:24:25 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 25 22:13:37 2011 -0400"
      },
      "message": "ftrace: Have ftrace_startup() return failure code\n\nThe register_ftrace_function() returns an error code on failure\nexcept if the call to ftrace_startup() fails. Add a error return to\nftrace_startup() if it fails to start, allowing register_ftrace_funtion()\nto return a proper error value.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "80fe02b5daf176f99d3afc8f6c9dc9dece019836",
      "tree": "970b90d56870e1b87b4c8efff7ec31fc454445a7",
      "parents": [
        "df48d8716eab9608fe93924e4ae06ff110e8674f",
        "db670dac49b5423b39b5e523d28fe32045d71b10",
        "ec514c487c3d4b652943da7b0afbc094eee08cfa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:41:22 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:41:22 2011 -0700"
      },
      "message": "Merge branches \u0027sched-core-for-linus\u0027 and \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (60 commits)\n  sched: Fix and optimise calculation of the weight-inverse\n  sched: Avoid going ahead if -\u003ecpus_allowed is not changed\n  sched, rt: Update rq clock when unthrottling of an otherwise idle CPU\n  sched: Remove unused parameters from sched_fork() and wake_up_new_task()\n  sched: Shorten the construction of the span cpu mask of sched domain\n  sched: Wrap the \u0027cfs_rq-\u003enr_spread_over\u0027 field with CONFIG_SCHED_DEBUG\n  sched: Remove unused \u0027this_best_prio arg\u0027 from balance_tasks()\n  sched: Remove noop in alloc_rt_sched_group()\n  sched: Get rid of lock_depth\n  sched: Remove obsolete comment from scheduler_tick()\n  sched: Fix sched_domain iterations vs. RCU\n  sched: Next buddy hint on sleep and preempt path\n  sched: Make set_*_buddy() work on non-task entities\n  sched: Remove need_migrate_task()\n  sched: Move the second half of ttwu() to the remote cpu\n  sched: Restructure ttwu() some more\n  sched: Rename ttwu_post_activation() to ttwu_do_wakeup()\n  sched: Remove rq argument from ttwu_stat()\n  sched: Remove rq-\u003elock from the first half of ttwu()\n  sched: Drop rq-\u003elock from sched_exec()\n  ...\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Fix rt_rq runtime leakage bug\n"
    },
    {
      "commit": "95950c2ecb31314ef827428e43ff771cf3b037e5",
      "tree": "1ecf9605cc280d362a5a9ddf96bf538cdb47c1aa",
      "parents": [
        "936e074b286ae779f134312178dbab139ee7ea52"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri May 06 00:08:51 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 19:24:51 2011 -0400"
      },
      "message": "ftrace: Add self-tests for multiple function trace users\n\nAdd some basic sanity tests for multiple users of the function\ntracer at startup.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "936e074b286ae779f134312178dbab139ee7ea52",
      "tree": "6b0497be4d5e6258ad9b1ec99b2a9feb25b2dd22",
      "parents": [
        "cdbe61bfe70440939e457fb4a8d0995eaaed17de"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu May 05 22:54:01 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 19:22:52 2011 -0400"
      },
      "message": "ftrace: Modify ftrace_set_filter/notrace to take ops\n\nSince users of the function tracer can now pick and choose which\nfunctions they want to trace agnostically from other users of the\nfunction tracer, we need to pass the ops struct to the ftrace_set_filter()\nfunctions.\n\nThe functions ftrace_set_global_filter() and ftrace_set_global_notrace()\nis added to keep the old filter functions which are used to modify\nthe generic function tracers.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "cdbe61bfe70440939e457fb4a8d0995eaaed17de",
      "tree": "6e82066db25ab6fa42455a42bb77783dac5260b8",
      "parents": [
        "b848914ce39589d89ee0078a6d1ef452b464729e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu May 05 21:14:55 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:51 2011 -0400"
      },
      "message": "ftrace: Allow dynamically allocated function tracers\n\nNow that functions may be selected individually, it only makes sense\nthat we should allow dynamically allocated trace structures to\nbe traced. This will allow perf to allocate a ftrace_ops structure\nat runtime and use it to pick and choose which functions that\nstructure will trace.\n\nNote, a dynamically allocated ftrace_ops will always be called\nindirectly instead of being called directly from the mcount in\nentry.S. This is because there\u0027s no safe way to prevent mcount\nfrom being preempted before calling the function, unless we\nmodify every entry.S to do so (not likely). Thus, dynamically allocated\nfunctions will now be called by the ftrace_ops_list_func() that\nloops through the ops that are allocated if there are more than\none op allocated at a time. This loop is protected with a\npreempt_disable.\n\nTo determine if an ftrace_ops structure is allocated or not, a new\nutil function was added to the kernel/extable.c called\ncore_kernel_data(), which returns 1 if the address is between\n_sdata and _edata.\n\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b848914ce39589d89ee0078a6d1ef452b464729e",
      "tree": "542bf09ae3c2d9118833132621585fb458e2a003",
      "parents": [
        "07fd5515f3b5c20704707f63e7f4485b534508a8"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed May 04 09:27:52 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:50 2011 -0400"
      },
      "message": "ftrace: Implement separate user function filtering\n\nftrace_ops that are registered to trace functions can now be\nagnostic to each other in respect to what functions they trace.\nEach ops has their own hash of the functions they want to trace\nand a hash to what they do not want to trace. A empty hash for\nthe functions they want to trace denotes all functions should\nbe traced that are not in the notrace hash.\n\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "07fd5515f3b5c20704707f63e7f4485b534508a8",
      "tree": "f018ec497f8c6b49a0fcfcd7a92a600e670f90f2",
      "parents": [
        "2b499381bc50ede01b3d8eab164ca2fad00655f0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu May 05 18:03:47 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:50 2011 -0400"
      },
      "message": "ftrace: Free hash with call_rcu_sched()\n\nWhen a hash is modified and might be in use, we need to perform\na schedule RCU operation on it, as the hashes will soon be used\ndirectly in the function tracer callback.\n\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "2b499381bc50ede01b3d8eab164ca2fad00655f0",
      "tree": "3140c277582b03b1645fffcb829763d62e2f01fa",
      "parents": [
        "bd69c30b1d08032d97ab0dabd7a1eb7fb73ca2b2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue May 03 22:49:52 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:49 2011 -0400"
      },
      "message": "ftrace: Have global_ops store the functions that are to be traced\n\nThis is a step towards each ops structure defining its own set\nof functions to trace. As the current code with pid\u0027s and such\nare specific to the global_ops, it is restructured to be used\nwith the global ops.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "bd69c30b1d08032d97ab0dabd7a1eb7fb73ca2b2",
      "tree": "e8bd00dc87de4f10f049e0c41fd09f630b96585d",
      "parents": [
        "647bcd03d5b2fb44fd9c9ef1a4f50c2eee8f779a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue May 03 21:55:54 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:48 2011 -0400"
      },
      "message": "ftrace: Add ops parameter to ftrace_startup/shutdown functions\n\nIn order to allow different ops to enable different functions,\nthe ftrace_startup() and ftrace_shutdown() functions need the\nops parameter passed to them.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "647bcd03d5b2fb44fd9c9ef1a4f50c2eee8f779a",
      "tree": "32946158175458f16ae95c383ca7985162eefe09",
      "parents": [
        "ed926f9b35cda0988234c356e16a7cb30f4e5338"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue May 03 14:39:21 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:47 2011 -0400"
      },
      "message": "ftrace: Add enabled_functions file\n\nAdd the enabled_functions file that is used to show all the\nfunctions that have been enabled for tracing as well as their\nref counts. This helps seeing if any function has been registered\nand what functions are being traced.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ed926f9b35cda0988234c356e16a7cb30f4e5338",
      "tree": "32169b7aaf6b0ef7815b095a544cce93e884bb73",
      "parents": [
        "33dc9b1267d59cef46ff0bd6bc043190845dc919"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue May 03 13:25:24 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:47 2011 -0400"
      },
      "message": "ftrace: Use counters to enable functions to trace\n\nEvery function has its own record that stores the instruction\npointer and flags for the function to be traced. There are only\ntwo flags: enabled and free. The enabled flag states that tracing\nfor the function has been enabled (actively traced), and the free\nflag states that the record no longer points to a function and can\nbe used by new functions (loaded modules).\n\nThese flags are now moved to the MSB of the flags (actually just\nthe top 32bits). The rest of the bits (30 bits) are now used as\na ref counter. Everytime a tracer register functions to trace,\nthose functions will have its counter incremented.\n\nWhen tracing is enabled, to determine if a function should be traced,\nthe counter is examined, and if it is non-zero it is set to trace.\n\nWhen a ftrace_ops is registered to trace functions, its hashes\nare examined. If the ftrace_ops filter_hash count is zero, then\nall functions are set to be traced, otherwise only the functions\nin the hash are to be traced. The exception to this is if a function\nis also in the ftrace_ops notrace_hash. Then that function\u0027s counter\nis not incremented for this ftrace_ops.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "33dc9b1267d59cef46ff0bd6bc043190845dc919",
      "tree": "d5a3f78a6aabcd33b9848d3bf86b9b53ff6ea2e0",
      "parents": [
        "f45948e898e7bc76a73a468796d2ce80dd040058"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon May 02 17:34:47 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:46 2011 -0400"
      },
      "message": "ftrace: Separate hash allocation and assignment\n\nWhen filtering, allocate a hash to insert the function records.\nAfter the filtering is complete, assign it to the ftrace_ops structure.\n\nThis allows the ftrace_ops structure to have a much smaller array of\nhash buckets instead of wasting a lot of memory.\n\nA read only empty_hash is created to be the minimum size that any ftrace_ops\ncan point to.\n\nWhen a new hash is created, it has the following steps:\n\no Allocate a default hash.\no Walk the function records assigning the filtered records to the hash\no Allocate a new hash with the appropriate size buckets\no Move the entries from the default hash to the new hash.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f45948e898e7bc76a73a468796d2ce80dd040058",
      "tree": "483979d8030cc2cf156ed65218c03a2d6825d9f5",
      "parents": [
        "1cf41dd79993389b012e4542ab502ce36ae7343f"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon May 02 12:29:25 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:45 2011 -0400"
      },
      "message": "ftrace: Create a global_ops to hold the filter and notrace hashes\n\nCombine the filter and notrace hashes to be accessed by a single entity,\nthe global_ops. The global_ops is a ftrace_ops structure that is passed\nto different functions that can read or modify the filtering of the\nfunction tracer.\n\nThe ftrace_ops structure was modified to hold a filter and notrace\nhashes so that later patches may allow each ftrace_ops to have its own\nset of rules to what functions may be filtered.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "1cf41dd79993389b012e4542ab502ce36ae7343f",
      "tree": "e1d0b58b2256d5936cff0c9d29ca8f68a80cedd8",
      "parents": [
        "b448c4e3ae6d20108dba1d7833f2c0d3dbad87ce"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 29 20:59:51 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:44 2011 -0400"
      },
      "message": "ftrace: Use hash instead for FTRACE_FL_FILTER\n\nWhen multiple users are allowed to have their own set of functions\nto trace, having the FTRACE_FL_FILTER flag will not be enough to\nhandle the accounting of those users. Each user will need their own\nset of functions.\n\nReplace the FTRACE_FL_FILTER with a filter_hash instead. This is\ntemporary until the rest of the function filtering accounting\ngets in.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b448c4e3ae6d20108dba1d7833f2c0d3dbad87ce",
      "tree": "504e5a3640328458e652e41cfd2ed74e4652e5b3",
      "parents": [
        "94692349c4fc1bc74c19a28f9379509361a06a3b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 29 15:12:32 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:44 2011 -0400"
      },
      "message": "ftrace: Replace FTRACE_FL_NOTRACE flag with a hash of ignored functions\n\nTo prepare for the accounting system that will allow multiple users of\nthe function tracer, having the FTRACE_FL_NOTRACE as a flag in the\ndyn_trace record does not make sense.\n\nAll ftrace_ops will soon have a hash of functions they should trace\nand not trace. By making a global hash of functions not to trace makes\nthis easier for the transition.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "9cb5baba5e3acba0994ad899ee908799104c9965",
      "tree": "d5ff16000256a0bf56279926e6114b4603ede2b4",
      "parents": [
        "7142d17e8f935fa842e9f6eece2281b6d41625d6",
        "693d92a1bbc9e42681c42ed190bd42b636ca876f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 12 09:36:18 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 12 09:36:18 2011 +0200"
      },
      "message": "Merge commit \u0027v2.6.39-rc7\u0027 into sched/core\n"
    },
    {
      "commit": "932fed4e2e42c3d730c01bb63b1c4f812c533d5b",
      "tree": "11b1afac3a40d253cdb905c42901edfaae5e196e",
      "parents": [
        "57d524154ffe99d27fb55e0e30ddbad9f4c35806",
        "693d92a1bbc9e42681c42ed190bd42b636ca876f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue May 10 17:05:24 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue May 10 17:05:45 2011 +0200"
      },
      "message": "Merge commit \u0027v2.6.39-rc7\u0027 into perf/core\n\nMerge reason: pull in the latest fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a3a4a5acd3bd2f6f1e102e1f1b9d2e2bb320a7fd",
      "tree": "8ed40e1c0bb654d824e39e6b42d1619a2807e75d",
      "parents": [
        "e5e06985bec89414ce2b3f301c24d884f609b020"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Thu May 05 23:55:18 2011 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 06 13:20:59 2011 -0700"
      },
      "message": "Regression: partial revert \"tracing: Remove lock_depth from event entry\"\n\nThis partially reverts commit e6e1e2593592a8f6f6380496655d8c6f67431266.\n\nThat commit changed the structure layout of the trace structure, which\nin turn broke PowerTOP (1.9x generation) quite badly.\n\nI appreciate not wanting to expose the variable in question, and\nPowerTOP was not using it, so I\u0027ve replaced the variable with just a\npadding field - that way if in the future a new field is needed it can\njust use this padding field.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ac0a3260f37b8616da8d33488ec94b94e6ae5b31",
      "tree": "0db61f7492d45f1d548b0bcef06a0df9c904442c",
      "parents": [
        "809435ff4f43a5c0cb0201b3b89176253d5ade18",
        "b9df92d2a94eef8811061aecb1396290df440e2e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun May 01 19:11:42 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun May 01 19:11:42 2011 +0200"
      },
      "message": "Merge branch \u0027tip/perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "809435ff4f43a5c0cb0201b3b89176253d5ade18",
      "tree": "607d673c02117656a956b54dd2bb80fe94edea61",
      "parents": [
        "32673822e440eb92eb334631eb0a199d0c532d13",
        "058e297d34a404caaa5ed277de15698d8dc43000"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun May 01 19:09:39 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun May 01 19:09:39 2011 +0200"
      },
      "message": "Merge branch \u0027tip/perf/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "b9df92d2a94eef8811061aecb1396290df440e2e",
      "tree": "313ad90dd3cd726af8da4d7768c912f96b3daa9a",
      "parents": [
        "491d0dcfb9707e1f83eff93ca503eb7573162ef2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Apr 28 20:32:08 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 29 22:53:14 2011 -0400"
      },
      "message": "ftrace: Consolidate the function match routines for normal and mods\n\nThe code used for matching functions is almost identical between normal\nselecting of functions and using the :mod: feature of set_ftrace_notrace.\n\nConsolidate the two users into one function.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "491d0dcfb9707e1f83eff93ca503eb7573162ef2",
      "tree": "ab156f8c4bc8ebfcc7429533a34726226a11bbba",
      "parents": [
        "996e87be7f537fb34638875dd37083166c733425"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Apr 27 21:43:36 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 29 22:53:11 2011 -0400"
      },
      "message": "ftrace: Consolidate updating of ftrace_trace_function\n\nThere are three locations that perform almost identical functions in order\nto update the ftrace_trace_function (the ftrace function variable that gets\ncalled by mcount).\n\nConsolidate these into a single function called update_ftrace_function().\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "996e87be7f537fb34638875dd37083166c733425",
      "tree": "0d961a4870b39450470b117cde45c3c2c1931959",
      "parents": [
        "d2c8c3eafbf715306ec891e7ca52d3d999acbe31"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Apr 26 16:11:03 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 29 22:53:08 2011 -0400"
      },
      "message": "ftrace: Move record update for normal and modules into a separate function\n\nThe updating of a function record is moved to a single function. This will allow\nus to add specific changes in one location for both modules and kernel\nfunctions.\n\nLater patches will determine if the function record itself needs to be updated\n(which enables the mcount caller), or just the ftrace_ops needs the update.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d2c8c3eafbf715306ec891e7ca52d3d999acbe31",
      "tree": "1dd5b7ae74f1dd951b542df3eb455af445a349c1",
      "parents": [
        "45a4a2372b364107cabea79f255b333236626416"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Apr 25 14:32:42 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 29 22:53:04 2011 -0400"
      },
      "message": "ftrace: Remove FTRACE_FL_CONVERTED flag\n\nSince we disable all function tracer processing if we detect\nthat a modification of a instruction had failed, we do not need\nto track that the record has failed. No more ftrace processing\nis allowed, and the FTRACE_FL_CONVERTED flag is pointless.\n\nThe FTRACE_FL_CONVERTED flag was used to denote records that were\nsuccessfully converted from mcount calls into nops. But if a single\nrecord fails, all of ftrace is disabled.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "45a4a2372b364107cabea79f255b333236626416",
      "tree": "dfe3e1c3b55451fedc8896aaa8359677d583a0e5",
      "parents": [
        "3499e461147636bf55c41128d83b679ac6ab2d86"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Apr 21 23:16:46 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 29 22:53:01 2011 -0400"
      },
      "message": "ftrace: Remove FTRACE_FL_FAILED flag\n\nSince we disable all function tracer processing if we detect\nthat a modification of a instruction had failed, we do not need\nto track that the record has failed. No more ftrace processing\nis allowed, and the FTRACE_FL_FAILED flag is pointless.\n\nRemoving this flag simplifies some of the code, but some ftrace_disabled\nchecks needed to be added or move around a little.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "3499e461147636bf55c41128d83b679ac6ab2d86",
      "tree": "2e79e9becedf3ac971b02160502c2384f9c3018a",
      "parents": [
        "8ab2b7efd3e2ccf2c2dda3206b8171ecdbd0af40"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Apr 21 22:59:12 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 29 22:52:58 2011 -0400"
      },
      "message": "ftrace: Remove failures file\n\nThe failures file in the debugfs tracing directory would list the\nfunctions that failed to convert when the old dead ftrace daemon\ntried to update code but failed. Since this code is now dead along\nwith the daemon the failures file is useless. Remove it.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "8ab2b7efd3e2ccf2c2dda3206b8171ecdbd0af40",
      "tree": "69b3bbcdbbe7deecf3910ee28ee62e07c004a2ea",
      "parents": [
        "0778d9ad33898faab7bf6316108b471790376e35"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Apr 21 22:41:35 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 29 22:52:55 2011 -0400"
      },
      "message": "ftrace: Remove unnecessary disabling of irqs\n\nThe disabling of interrupts around ftrace_update_code() was used\nto protect against the evil ftrace daemon from years past. But that\ndaemon has long been killed. It is safe to keep interrupts enabled\nwhile updating the initial mcount into nops.\n\nThe ftrace_mutex is also held which keeps other users at bay.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0778d9ad33898faab7bf6316108b471790376e35",
      "tree": "c096fedf744e114a01acac52930f2bc8a741e863",
      "parents": [
        "32673822e440eb92eb334631eb0a199d0c532d13"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 29 10:36:31 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 29 22:52:52 2011 -0400"
      },
      "message": "ftrace: Make FTRACE_WARN_ON() work in if condition\n\nLet FTRACE_WARN_ON() be used as a stand alone statement or\ninside a conditional: if (FTRACE_WARN_ON(x))\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "058e297d34a404caaa5ed277de15698d8dc43000",
      "tree": "0a4cfa547a4cf466f8c746978ff5fe464cbe88ab",
      "parents": [
        "2bce5daca28346f19c190dbdb5542c9fe3e8c6e6"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 29 22:35:33 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Apr 29 22:42:59 2011 -0400"
      },
      "message": "ftrace: Only update the function code on write to filter files\n\nIf function tracing is enabled, a read of the filter files will\ncause the call to stop_machine to update the function trace sites.\nIt should only call stop_machine on write.\n\nCc: stable@kernel.org\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "32673822e440eb92eb334631eb0a199d0c532d13",
      "tree": "c1e55c1793fa17937d9b8e0a9a2946583f1948d5",
      "parents": [
        "fa7b69475a6c192853949ba496dd9c37b497b548",
        "5373db886b791b2bc7811e2c115377916c409a5d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 10:38:30 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 10:40:21 2011 +0200"
      },
      "message": "Merge branch \u0027tip/perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n\nConflicts:\n\tinclude/linux/perf_event.h\n\nMerge reason: pick up the latest jump-label enhancements, they are cooked ready.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6c8a7213278324f381cbcbf51510711ed745d8e6",
      "tree": "1b83e24917d58dcf4af6d6b4d8c26ce012cff43c",
      "parents": [
        "ec75a71634dabe439db91c1ef51d5099f4493808",
        "d20ac252821ab9780ddf00b95629547d3cebc857"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 10:31:29 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 10:31:29 2011 +0200"
      },
      "message": "Merge branch \u0027tip/perf/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/urgent\n"
    },
    {
      "commit": "625f2a378e5a10f45fdc37932fc9f8a21676de9e",
      "tree": "1bf966a8e65463cdcc313c559533f032657c9dcf",
      "parents": [
        "d3bf52e998056a6002b2aecfe1d25486376382ac"
      ],
      "author": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Fri Apr 22 11:19:10 2011 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 24 13:18:38 2011 +0200"
      },
      "message": "sched: Get rid of lock_depth\n\nNeil Brown pointed out that lock_depth somehow escaped the BKL\nremoval work.  Let\u0027s get rid of it now.\n\nNote that the perf scripting utilities still have a bunch of\ncode for dealing with common_lock_depth in tracepoints; I have\nleft that in place in case anybody wants to use that code with\nolder kernels.\n\nSuggested-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Jonathan Corbet \u003ccorbet@lwn.net\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/20110422111910.456c0e84@bike.lwn.net\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d20ac252821ab9780ddf00b95629547d3cebc857",
      "tree": "bfa57e921857575fea57e696b7d1da7ef66234ba",
      "parents": [
        "855357a21744e488cbee23a47d2b124035160a87"
      ],
      "author": {
        "name": "Michal Simek",
        "email": "monstr@monstr.eu",
        "time": "Mon Apr 04 11:20:12 2011 +0200"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Apr 21 09:06:24 2011 -0400"
      },
      "message": "ftrace: Build without frame pointers on Microblaze\n\nMicroblaze doesn\u0027t need/support FRAME_POINTERS in order to have a working\nfunction tracer.\n\nThe patch remove Kconfig warning.\n\nWarning log:\nwarning: (LOCKDEP \u0026\u0026 FAULT_INJECTION_STACKTRACE_FILTER \u0026\u0026 LATENCYTOP \u0026\u0026\nFUNCTION_TRACER \u0026\u0026 KMEMCHECK) selects FRAME_POINTER which has unmet direct\ndependencies (DEBUG_KERNEL \u0026\u0026 (CRIS || M68K || FRV || UML || AVR32 ||\nSUPERH || BLACKFIN || MN10300) || ARCH_WANT_FRAME_POINTERS)\n\nSigned-off-by: Michal Simek \u003cmonstr@monstr.eu\u003e\nLink: http://lkml.kernel.org/r/1301908812-8119-2-git-send-email-monstr@monstr.eu\nCC: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCC: Ingo Molnar \u003cmingo@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "49cac01e1fa74174d72adb0e872504a7fefd7c01",
      "tree": "a1ab1974eceea3179a604413955ad8369ba715d7",
      "parents": [
        "a237c1c5bc5dc5c76a21be922dca4826f3eca8ca"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Apr 16 13:51:05 2011 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Apr 16 13:51:05 2011 +0200"
      },
      "message": "block: make unplug timer trace event correspond to the schedule() unplug\n\nIt\u0027s a pretty close match to what we had before - the timer triggering\nwould mean that nobody unplugged the plug in due time, in the new\nscheme this matches very closely what the schedule() unplug now is.\nIt\u0027s essentially the difference between an explicit unplug (IO unplug)\nor an implicit unplug (timer unplug, we scheduled with pending IO\nqueued).\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "94b5eb28b41cc79d9713696e0005ae167b5afd1b",
      "tree": "404680c86a360bfe623b5a287ee87dd5263b5a8e",
      "parents": [
        "d9c97833179036408e53ef5f3f5c7eaf781769bc"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Tue Apr 12 10:12:19 2011 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Tue Apr 12 10:12:19 2011 +0200"
      },
      "message": "block: fixup block IO unplug trace call\n\nIt was removed with the on-stack plugging, readd it and track the\ndepth of requests added when flushing the plug.\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "d9c97833179036408e53ef5f3f5c7eaf781769bc",
      "tree": "3c0a6d7942f61fcdbeb029664400c3a9b7d65494",
      "parents": [
        "109b81296c63228578d4760794d8dd46e02eddfb"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Tue Apr 12 10:06:33 2011 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Tue Apr 12 10:06:33 2011 +0200"
      },
      "message": "block: remove block_unplug_timer() trace point\n\nWe no longer have an unplug timer running, so no point in keeping\nthe trace point.\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "ee5e51f51be755830f57445e268ba50e88ccbdbb",
      "tree": "059d6c5843275a5ab94ae01408c1dc6dbe00b2ea",
      "parents": [
        "1813dc3776c22ad4b0294a6df8434b9a02c98109"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Fri Mar 25 12:05:18 2011 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Apr 04 12:18:24 2011 -0400"
      },
      "message": "tracing: Avoid soft lockup in trace_pipe\n\nrunning following commands:\n\n  # enable the binary option\n  echo 1 \u003e ./options/bin\n  # disable context info option\n  echo 0 \u003e ./options/context-info\n  # tracing only events\n  echo 1 \u003e ./events/enable\n  cat trace_pipe\n\nplus forcing system to generate many tracing events,\nis causing lockup (in NON preemptive kernels) inside\ntracing_read_pipe function.\n\nThe issue is also easily reproduced by running ltp stress test.\n(ftrace_stress_test.sh)\n\nThe reasons are:\n - bin/hex/raw output functions for events are set to\n   trace_nop_print function, which prints nothing and\n   returns TRACE_TYPE_HANDLED value\n - LOST EVENT trace do not handle trace_seq overflow\n\nThese reasons force the while loop in tracing_read_pipe\nfunction never to break.\n\nThe attached patch fixies handling of lost event trace, and\nchanges trace_nop_print to print minimal info, which is needed\nfor the correct tracing_read_pipe processing.\n\nv2 changes:\n - omit the cond_resched changes by trace_nop_print changes\n - WARN changed to WARN_ONCE and added info to be able\n   to find out the culprit\n\nv3 changes:\n - make more accurate patch comment\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nLKML-Reference: \u003c20110325110518.GC1922@jolsa.brq.redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "1813dc3776c22ad4b0294a6df8434b9a02c98109",
      "tree": "b768010ffd8986d2e1df11a067aa8c47c7a0ae62",
      "parents": [
        "0588fa30db44fd2d4032b36a061c87478a43fbee"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 21 23:36:31 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Apr 04 12:18:24 2011 -0400"
      },
      "message": "tracing: Print trace_bprintk() formats for modules too\n\nThe file debugfs/tracing/printk_formats maps the addresses\nto the formats that are used by trace_bprintk() so that userspace\ntools can read the buffer and be able to decode trace_bprintk events\nto get the format saved when reading the ring buffer directly.\n\nThis is because trace_bprintk() does not store the format into the\nbuffer, but just the address of the format, which is hidden in\nthe kernel memory.\n\nBut currently it only exports trace_bprintk()s from the kernel core\nand not for modules. The modules need their formats exported\nas well.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0588fa30db44fd2d4032b36a061c87478a43fbee",
      "tree": "2c58392c0c3bd24ae2831189aea2586de754c8f1",
      "parents": [
        "176fcc5c5f0131504a55e1e1d35389c49a9177c2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 21 22:59:21 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Apr 04 12:18:24 2011 -0400"
      },
      "message": "tracing: Convert trace_printk() formats for module to const char *\n\nThe trace_printk() formats for modules do not show up in the\ndebugfs/tracing/printk_formats file. Only the formats that are\nfor trace_printk()s that are in the kernel core.\n\nTo facilitate the change to add trace_printk() formats from modules\ninto that file as well, we need to convert the structure that\nholds the formats from char fmt[], into const char *fmt,\nand allocate them separately.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "25985edcedea6396277003854657b5f3cb31a628",
      "tree": "f026e810210a2ee7290caeb737c23cb6472b7c38",
      "parents": [
        "6aba74f2791287ec407e0f92487a725a25908067"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Wed Mar 30 22:57:33 2011 -0300"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Thu Mar 31 11:26:23 2011 -0300"
      },
      "message": "Fix common misspellings\n\nFixes generated by \u0027codespell\u0027 and manually reviewed.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "2a20b02c055a14eb60ac8da737d79dc940bb9ee0",
      "tree": "1cf09a5e13f8ed24bc66386c153969ad49f8f098",
      "parents": [
        "839767e79e7bdf06f241a47701f0f64b8e2d3f61",
        "45daae575e08bbf7405c5a3633e956fa364d1b4f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 25 17:53:09 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 25 17:53:09 2011 -0700"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf, x86: Complain louder about BIOSen corrupting CPU/PMU state and continue\n  perf, x86: P4 PMU - Read proper MSR register to catch unflagged overflows\n  perf symbols: Look at .dynsym again if .symtab not found\n  perf build-id: Add quirk to deal with perf.data file format breakage\n  perf session: Pass evsel in event_ops-\u003esample()\n  perf: Better fit max unprivileged mlock pages for tools needs\n  perf_events: Fix stale -\u003ecgrp pointer in update_cgrp_time_from_cpuctx()\n  perf top: Fix uninitialized \u0027counter\u0027 variable\n  tracing: Fix set_ftrace_filter probe function display\n  perf, x86: Fix Intel fixed counters base initialization\n"
    },
    {
      "commit": "6c5103890057b1bb781b26b7aae38d33e4c517d8",
      "tree": "e6e57961dcddcb5841acb34956e70b9dc696a880",
      "parents": [
        "3dab04e6978e358ad2307bca563fabd6c5d2c58b",
        "9d2e157d970a73b3f270b631828e03eb452d525e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 24 10:16:26 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 24 10:16:26 2011 -0700"
      },
      "message": "Merge branch \u0027for-2.6.39/core\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.39/core\u0027 of git://git.kernel.dk/linux-2.6-block: (65 commits)\n  Documentation/iostats.txt: bit-size reference etc.\n  cfq-iosched: removing unnecessary think time checking\n  cfq-iosched: Don\u0027t clear queue stats when preempt.\n  blk-throttle: Reset group slice when limits are changed\n  blk-cgroup: Only give unaccounted_time under debug\n  cfq-iosched: Don\u0027t set active queue in preempt\n  block: fix non-atomic access to genhd inflight structures\n  block: attempt to merge with existing requests on plug flush\n  block: NULL dereference on error path in __blkdev_get()\n  cfq-iosched: Don\u0027t update group weights when on service tree\n  fs: assign sb-\u003es_bdi to default_backing_dev_info if the bdi is going away\n  block: Require subsystems to explicitly allocate bio_set integrity mempool\n  jbd2: finish conversion from WRITE_SYNC_PLUG to WRITE_SYNC and explicit plugging\n  jbd: finish conversion from WRITE_SYNC_PLUG to WRITE_SYNC and explicit plugging\n  fs: make fsync_buffers_list() plug\n  mm: make generic_writepages() use plugging\n  blk-cgroup: Add unaccounted time to timeslice_used.\n  block: fixup plugging stubs for !CONFIG_BLOCK\n  block: remove obsolete comments for blkdev_issue_zeroout.\n  blktrace: Use rq-\u003ecmd_flags directly in blk_add_trace_rq.\n  ...\n\nFix up conflicts in fs/{aio.c,super.c}\n"
    },
    {
      "commit": "e1eb029081f9cd4f73bdd05d495e5011839546f5",
      "tree": "31686542695d0932ec09c8197db0ad94c30d7d33",
      "parents": [
        "fc66c5210ec2539e800e87d7b3a985323c7be96e",
        "1106b6997df7d0c0487e21fd9c9dd2ce3d4a52db"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 23 10:35:17 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 23 10:35:17 2011 +0100"
      },
      "message": "Merge branch \u0027tip/perf/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/urgent\n"
    },
    {
      "commit": "1106b6997df7d0c0487e21fd9c9dd2ce3d4a52db",
      "tree": "638a067a0d407948fb5362b794d8de397c6aa421",
      "parents": [
        "8df341cf251f3b77eaaef66f806570e74ab44452"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Wed Feb 16 17:35:34 2011 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Mar 22 12:52:03 2011 -0400"
      },
      "message": "tracing: Fix set_ftrace_filter probe function display\n\nIf one or more function probes (like traceon) are enabled,\nand there\u0027s no other function filter, the first probe\nfunc is skipped (which one depends on the position in the hash).\n\n$ echo sys_open:traceon sys_close:traceon \u003e ./set_ftrace_filter\n$ cat set_ftrace_filter\n#### all functions enabled ####\nsys_close:traceon:unlimited\n$\n\nThe reason was, that in the case of no other function filter,\nthe func_pos was not properly updated before calling t_hash_start.\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nLKML-Reference: \u003c1297874134-7008-1-git-send-email-jolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "619297855aa16646246ea4b1f6e05f1b2455c808",
      "tree": "a07fe1b24c372f5eabf244555db41fdf574c1205",
      "parents": [
        "e16b396ce314b2bcdfe6c173fe075bf8e3432368",
        "1ef1d1c2353967e2d61ecaddf76edfd058a778b4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 18 10:38:34 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 18 10:38:34 2011 -0700"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (30 commits)\n  trace, filters: Initialize the match variable in process_ops() properly\n  trace, documentation: Fix branch profiling location in debugfs\n  oprofile, s390: Cleanups\n  oprofile, s390: Remove hwsampler_files.c and merge it into init.c\n  perf: Fix tear-down of inherited group events\n  perf: Reorder \u0026 optimize perf_event_context to remove alignment padding on 64 bit builds\n  perf: Handle stopped state with tracepoints\n  perf: Fix the software events state check\n  perf, powerpc: Handle events that raise an exception without overflowing\n  perf, x86: Use INTEL_*_CONSTRAINT() for all PEBS event constraints\n  perf, x86: Clean up SandyBridge PEBS events\n  perf lock: Fix sorting by wait_min\n  perf tools: Version incorrect with some versions of grep\n  perf evlist: New command to list the names of events present in a perf.data file\n  perf script: Add support for H/W and S/W events\n  perf script: Add support for dumping symbols\n  perf script: Support custom field selection for output\n  perf script: Move printing of \u0027common\u0027 data from print_event and rename\n  perf tracing: Remove print_graph_cpu and print_graph_proc from trace-event-parse\n  perf script: Change process_event prototype\n  ...\n"
    },
    {
      "commit": "e16b396ce314b2bcdfe6c173fe075bf8e3432368",
      "tree": "640f0f56f2ea676647af4eb42d32fa56be2ee549",
      "parents": [
        "7fd23a24717a327a66f3c32d11a20a2f169c824f",
        "e6e8dd5055a974935af1398c8648d4a9359b0ecb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 18 10:37:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 18 10:37:40 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (47 commits)\n  doc: CONFIG_UNEVICTABLE_LRU doesn\u0027t exist anymore\n  Update cpuset info \u0026 webiste for cgroups\n  dcdbas: force SMI to happen when expected\n  arch/arm/Kconfig: remove one to many l\u0027s in the word.\n  asm-generic/user.h: Fix spelling in comment\n  drm: fix printk typo \u0027sracth\u0027\n  Remove one to many n\u0027s in a word\n  Documentation/filesystems/romfs.txt: fixing link to genromfs\n  drivers:scsi Change printk typo initate -\u003e initiate\n  serial, pch uart: Remove duplicate inclusion of linux/pci.h header\n  fs/eventpoll.c: fix spelling\n  mm: Fix out-of-date comments which refers non-existent functions\n  drm: Fix printk typo \u0027failled\u0027\n  coh901318.c: Change initate to initiate.\n  mbox-db5500.c Change initate to initiate.\n  edac: correct i82975x error-info reported\n  edac: correct i82975x mci initialisation\n  edac: correct commented info\n  fs: update comments to point correct document\n  target: remove duplicate include of target/target_core_device.h from drivers/target/target_core_hba.c\n  ...\n\nTrivial conflict in fs/eventpoll.c (spelling vs addition)\n"
    },
    {
      "commit": "1ef1d1c2353967e2d61ecaddf76edfd058a778b4",
      "tree": "9afe636fd68d27093d84ef0b10063e085e33af5b",
      "parents": [
        "8df341cf251f3b77eaaef66f806570e74ab44452"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 18 14:41:27 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 18 14:41:27 2011 +0100"
      },
      "message": "trace, filters: Initialize the match variable in process_ops() properly\n\nMake sure the \u0027match\u0027 variable always has a value.\n\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "13e5befaddcf8d542ae45610b552105490a0010b",
      "tree": "62bf2a661bdb847221cd5fdf0107b59932230e9c",
      "parents": [
        "38b435b16c36b0d863efcf3f07b34a6fac9873fd"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Wed Mar 16 17:17:08 2011 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 17 09:10:45 2011 +0100"
      },
      "message": "trace, documentation: Fix branch profiling location in debugfs\n\nThe debugfs interface for branch profiling is through\n\n\t/sys/kernel/debug/tracing/trace_stat/branch_annotated\n\t/sys/kernel/debug/tracing/trace_stat/branch_all\n\nso update the Kconfig accordingly.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003calpine.DEB.2.00.1103161716320.11407@chino.kir.corp.google.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "805f6b5e1cbfedfb9b3d354013e7f4b13a79270f",
      "tree": "73b3380e28c642418a0fa3e5f1da9990919325b5",
      "parents": [
        "4c63f5646e405b5010cc9499419060bf2e838f5b"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "boyu.mt@taobao.com",
        "time": "Fri Mar 11 20:11:59 2011 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Mar 11 20:11:59 2011 +0100"
      },
      "message": "blktrace: Use rq-\u003ecmd_flags directly in blk_add_trace_rq.\n\nIn blk_add_trace_rq, we only chose the minor 2 bits from\nrequest\u0027s cmd_flags and did some check for discard.\nso most of other flags(e.g, REQ_SYNC) are missing.\n\nFor example, with a sync write after blkparse we get:\n  8,16   1        1     0.001776503  7509  A  WS 1349632 + 1024 \u003c- (8,17) 1347584\n  8,16   1        2     0.001776813  7509  Q  WS 1349632 + 1024 [dd]\n  8,16   1        3     0.001780395  7509  G  WS 1349632 + 1024 [dd]\n  8,16   1        5     0.001783186  7509  I   W 1349632 + 1024 [dd]\n  8,16   1       11     0.001816987  7509  D   W 1349632 + 1024 [dd]\n  8,16   0        2     0.006218192     0  C   W 1349632 + 1024 [0]\n\nSince now we have integrated the flags of both bio and request,\nit is safe to pass rq-\u003ecmd_flags directly to __blk_add_trace.\n\nWith this patch, after a sync write we get:\n  8,16   1        1     0.001776900  5425  A  WS 1189888 + 1024 \u003c- (8,17) 1187840\n  8,16   1        2     0.001777179  5425  Q  WS 1189888 + 1024 [dd]\n  8,16   1        3     0.001780797  5425  G  WS 1189888 + 1024 [dd]\n  8,16   1        5     0.001783402  5425  I  WS 1189888 + 1024 [dd]\n  8,16   1       11     0.001817468  5425  D  WS 1189888 + 1024 [dd]\n  8,16   0        2     0.005640709     0  C  WS 1189888 + 1024 [0]\n\nSigned-off-by: Tao Ma \u003cboyu.mt@taobao.com\u003e\nAcked-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "4a0b1665db09cf2da9ad7d0f12da386373c10bfa",
      "tree": "aecfb7f1d6df7920fc7134125bfe24647c98cdc4",
      "parents": [
        "9a24470b2826e4665b1484836c7ae6aba1ddea32"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 09 20:09:26 2011 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:34:58 2011 -0500"
      },
      "message": "tracing: Fix irqoff selftest expanding max buffer\n\nIf the kernel command line declares a tracer \"ftrace\u003dsometracer\" and\nthat tracer is either not defined or is enabled after irqsoff,\nthen the irqs off selftest will fail with the following error:\n\nTesting tracer irqsoff:\n------------[ cut here ]------------\nWARNING: at /home/rostedt/work/autotest/nobackup/linux-test.git/kernel/trace/tra\nce.c:713 update_max_tr_single+0xfa/0x11b()\nHardware name:\nModules linked in:\nPid: 1, comm: swapper Not tainted 2.6.38-rc8-test #1\nCall Trace:\n [\u003cc0441d9d\u003e] ? warn_slowpath_common+0x65/0x7a\n [\u003cc049adb2\u003e] ? update_max_tr_single+0xfa/0x11b\n [\u003cc0441dc1\u003e] ? warn_slowpath_null+0xf/0x13\n [\u003cc049adb2\u003e] ? update_max_tr_single+0xfa/0x11b\n [\u003cc049e454\u003e] ? stop_critical_timing+0x154/0x204\n [\u003cc049b54b\u003e] ? trace_selftest_startup_irqsoff+0x5b/0xc1\n [\u003cc049b54b\u003e] ? trace_selftest_startup_irqsoff+0x5b/0xc1\n [\u003cc049b54b\u003e] ? trace_selftest_startup_irqsoff+0x5b/0xc1\n [\u003cc049e529\u003e] ? time_hardirqs_on+0x25/0x28\n [\u003cc0468bca\u003e] ? trace_hardirqs_on_caller+0x18/0x12f\n [\u003cc0468cec\u003e] ? trace_hardirqs_on+0xb/0xd\n [\u003cc049b54b\u003e] ? trace_selftest_startup_irqsoff+0x5b/0xc1\n [\u003cc049b6b8\u003e] ? register_tracer+0xf8/0x1a3\n [\u003cc14e93fe\u003e] ? init_irqsoff_tracer+0xd/0x11\n [\u003cc040115e\u003e] ? do_one_initcall+0x71/0x121\n [\u003cc14e93f1\u003e] ? init_irqsoff_tracer+0x0/0x11\n [\u003cc14ce3a9\u003e] ? kernel_init+0x13a/0x1b6\n [\u003cc14ce26f\u003e] ? kernel_init+0x0/0x1b6\n [\u003cc0403842\u003e] ? kernel_thread_helper+0x6/0x10\n---[ end trace e93713a9d40cd06c ]---\n.. no entries found ..FAILED!\n\nWhat happens is the \"ftrace\u003d...\" will expand the ring buffer to its\ndefault size (from its minimum size) but it will not expand the\nmax ring buffer (the ring buffer to store maximum latencies).\nWhen the irqsoff test runs, it will call the ring buffer swap routine\nthat checks if the max ring buffer is the same size as the normal\nring buffer, and will fail if it is not. This causes the test to fail.\n\nThe solution is to expand the max ring buffer before running the self\ntest if the max ring buffer is used by that tracer and the normal ring\nbuffer is expanded. The max ring buffer should be shrunk again after\nthe test is done to save space.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "9a24470b2826e4665b1484836c7ae6aba1ddea32",
      "tree": "277786327395bf98050498f0c97807f41dc8be45",
      "parents": [
        "56355b83e2a24ce7e1870c8479205e2cdd332225"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 09 14:53:38 2011 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:34:54 2011 -0500"
      },
      "message": "tracing: Align 4 byte ints together in struct tracer\n\nMove elements in struct tracer for better alignment.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "56355b83e2a24ce7e1870c8479205e2cdd332225",
      "tree": "e85804c55de4f125332d8052c9181d2b8ae84a20",
      "parents": [
        "31274d72f01604f4b02d933b4f3cac84d2c201fd"
      ],
      "author": {
        "name": "Yuanhan Liu",
        "email": "yuanhan.liu@linux.intel.com",
        "time": "Mon Nov 08 14:05:12 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:34:51 2011 -0500"
      },
      "message": "tracing: Export trace_set_clr_event()\n\nTrace events belonging to a module only exists when the module is\nloaded. Well, we can use trace_set_clr_event funtion to enable some\ntrace event at the module init routine, so that we will not miss\nsomething while loading then module.\n\nSo, Export the trace_set_clr_event function so that module can use it.\n\nSigned-off-by: Yuanhan Liu \u003cyuanhan.liu@linux.intel.com\u003e\nLKML-Reference: \u003c1289196312-25323-1-git-send-email-yuanhan.liu@linux.intel.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "31274d72f01604f4b02d933b4f3cac84d2c201fd",
      "tree": "d85c4bbe7fab3bcc9347de3a7788789fc2aa7c8d",
      "parents": [
        "722b3c74695377d11d18a52f3da08114d37f3f37"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Fri Feb 18 15:52:19 2011 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:34:47 2011 -0500"
      },
      "message": "tracing: Explain about unstable clock on resume with ring buffer warning\n\nThe \"Delta way too big\" warning might appear on a system with a\nunstable shed clock right after the system is resumed and tracing\nwas enabled at time of suspend.\n\nSince it\u0027s not realy a bug, and the unstable sched clock is working\nfast and reliable otherwise, Steven suggested to keep using the\nsched clock in any case and just to make note in the warning itself.\n\nv2 changes:\n- added #ifdef CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nLKML-Reference: \u003c20110218145219.GD2604@jolsa.brq.redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "10da37a645b5e915d8572cc2b1f5eb11ada3ea4f",
      "tree": "0eec725a2ecc24cb0a8e5c234794cfb6cd3f94f9",
      "parents": [
        "ca9da2dd63b0b32de1b693953dff66cadeb6400b"
      ],
      "author": {
        "name": "David Sharp",
        "email": "dhsharp@google.com",
        "time": "Fri Dec 03 16:13:26 2010 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:34:35 2011 -0500"
      },
      "message": "tracing: Adjust conditional expression latency formatting.\n\nFormatting change only to improve code readability. No code changes except to\nintroduce intermediate variables.\n\nSigned-off-by: David Sharp \u003cdhsharp@google.com\u003e\nLKML-Reference: \u003c1291421609-14665-13-git-send-email-dhsharp@google.com\u003e\n\n[ Keep variable declarations and assignment separate ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "140e4f2d1cd816aed196705c036763313c0e4bd3",
      "tree": "0885c7588519f3d465424576278809d7c008b061",
      "parents": [
        "e6e1e2593592a8f6f6380496655d8c6f67431266"
      ],
      "author": {
        "name": "David Sharp",
        "email": "dhsharp@google.com",
        "time": "Fri Dec 03 16:13:19 2010 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:34:16 2011 -0500"
      },
      "message": "tracing: Fix event alignment: ftrace:context_switch and ftrace:wakeup\n\nSigned-off-by: David Sharp \u003cdhsharp@google.com\u003e\nLKML-Reference: \u003c1291421609-14665-6-git-send-email-dhsharp@google.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "e6e1e2593592a8f6f6380496655d8c6f67431266",
      "tree": "00ef843b23fac5ab6be92725ce5b01487f555997",
      "parents": [
        "de29be5e712dc8b7eef2bef9417af3bb6a88e47a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 09 10:41:56 2011 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:31:48 2011 -0500"
      },
      "message": "tracing: Remove lock_depth from event entry\n\nThe lock_depth field in the event headers was added as a temporary\ndata point for help in removing the BKL. Now that the BKL is pretty\nmuch been removed, we can remove this field.\n\nThis in turn changes the header from 12 bytes to 8 bytes,\nremoving the 4 byte buffer that gcc would insert if the first field\nin the data load was 8 bytes in size.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "de29be5e712dc8b7eef2bef9417af3bb6a88e47a",
      "tree": "049d4bda5c141046b93616597b402d3966558a9b",
      "parents": [
        "750912fa366312e9c5bc83eab352898a26750401"
      ],
      "author": {
        "name": "David Sharp",
        "email": "dhsharp@google.com",
        "time": "Fri Dec 03 16:13:16 2010 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Mar 09 13:52:28 2011 -0500"
      },
      "message": "ring-buffer: Remove unused #include \u003clinux/trace_irq.h\u003e\n\nSigned-off-by: David Sharp \u003cdhsharp@google.com\u003e\nLKML-Reference: \u003c1291421609-14665-3-git-send-email-dhsharp@google.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "750912fa366312e9c5bc83eab352898a26750401",
      "tree": "bb8e5cd1444a74ea283e3fa55607225e7fda4d70",
      "parents": [
        "2a8247a2600c3e087a568fc68a6ec4eedac27ef1"
      ],
      "author": {
        "name": "David Sharp",
        "email": "dhsharp@google.com",
        "time": "Wed Dec 08 13:46:47 2010 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Mar 09 13:52:27 2011 -0500"
      },
      "message": "tracing: Add an \u0027overwrite\u0027 trace_option.\n\nAdd an \"overwrite\" trace_option for ftrace to control whether the buffer should\nbe overwritten on overflow or not. The default remains to overwrite old events\nwhen the buffer is full. This patch adds the option to instead discard newest\nevents when the buffer is full. This is useful to get a snapshot of traces just\nafter enabling traces. Dropping the current event is also a simpler code path.\n\nSigned-off-by: David Sharp \u003cdhsharp@google.com\u003e\nLKML-Reference: \u003c1291844807-15481-1-git-send-email-dhsharp@google.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "86cb2ec7b22a0a89b8660110dc03321fadbef45f",
      "tree": "c4162b0ab7c4e3602e2b7a6a6fd47c55c3315fea",
      "parents": [
        "7f0030b211579939461468f25b80c73e293c46e0",
        "a5abba989deceb731047425812d268daf7536575"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 08 17:21:49 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 08 17:21:52 2011 +0100"
      },
      "message": "Merge commit \u0027v2.6.38-rc8\u0027 into perf/core\n\nMerge reason: Merge latest fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2d3a8497f8cc5aca14b722cd37d51f6c15ff9f74",
      "tree": "2e0013fdc1eec486a425e666a885b04a1c37befb",
      "parents": [
        "255bb490c8c27eed484d538efe6ef6a7473bd3f6"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "boyu.mt@taobao.com",
        "time": "Thu Mar 03 10:53:20 2011 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Mar 03 10:53:20 2011 -0500"
      },
      "message": "blktrace: Remove blk_fill_rwbs_rq.\n\nIf we enable trace events to trace block actions, We use\nblk_fill_rwbs_rq to analyze the corresponding actions\nin request\u0027s cmd_flags, but we only choose the minor 2 bits\nfrom it, so most of other flags(e.g, REQ_SYNC) are missing.\nFor example, with a sync write we get:\nwrite_test-2409  [001]   160.013869: block_rq_insert: 3,64 W 0 () 258135 + \u003d\n8 [write_test]\n\nSince now we have integrated the flags of both bio and request,\nit is safe to pass rq-\u003ecmd_flags directly to blk_fill_rwbs and\nblk_fill_rwbs_rq isn\u0027t needed any more.\n\nWith this patch, after a sync write we get:\nwrite_test-2417  [000]   226.603878: block_rq_insert: 3,64 WS 0 () 258135 +\u003d\n 8 [write_test]\n\nSigned-off-by: Tao Ma \u003cboyu.mt@taobao.com\u003e\nAcked-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "c09d7a3d2e365e11c09b9c6414c17fe55bd32a8e",
      "tree": "8823dc4ba7ab25af71a0df8187ea800f0123aeff",
      "parents": [
        "0a10247914a5cad3caf7ef8a255c54c4d3ed2062",
        "4defe682d81a4960b6840ee4ed1a36f9db77c7bd"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Mar 02 16:09:55 2011 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Mar 03 04:29:25 2011 +0100"
      },
      "message": "Merge branch \u0027/tip/perf/filter\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace.git into perf/core\n"
    },
    {
      "commit": "e9345aab675382176740bc8a2c6d3caf1510e46d",
      "tree": "ebfe68433e1d2f326fafbb0cf01ef2c061cdb356",
      "parents": [
        "bee96907383e71d3996ba2bd0682fefaa492d942"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 18 08:09:49 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 18 08:09:49 2011 +0100"
      },
      "message": "Revert \"tracing: Add unstable sched clock note to the warning\"\n\nThis reverts commit 5e38ca8f3ea423442eaafe1b7e206084aa38120a.\n\nBreaks the build of several !CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\narchitectures.\n\nCc: Jiri Olsa \u003cjolsa@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nMessage-ID: \u003c20110217171823.GB17058@elte.hu\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5beda5f6e4e4523e8dbe596bf163a01b45776808",
      "tree": "61d1551430687b712325cdfec81b7800aa759076",
      "parents": [
        "ba3dd36c6775264ee6e7354ba1aabcd6e86d7298",
        "6752ab4a9c30d5411b2dfdb251a3f1cb18aae487"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 17 14:11:15 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 17 14:11:15 2011 +0100"
      },
      "message": "Merge branch \u0027tip/perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "b00560f2d4de69bb12f66f9605985b516df98d77",
      "tree": "0c92fc994125dc3ddb635842715be29d8b16808b",
      "parents": [
        "bf1af3a809506645b9130755b713b008da14737f",
        "4fe757dd48a9e95e1a071291f15dda5421dacb66"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 16 13:27:18 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 16 13:27:23 2011 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: we need to queue up dependent patch\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0a9d59a2461477bd9ed143c01af9df3f8f00fa81",
      "tree": "df997d1cfb0786427a0df1fbd6f0640fa4248cf4",
      "parents": [
        "a23ce6da9677d245aa0aadc99f4197030350ab54",
        "795abaf1e4e188c4171e3cd3dbb11a9fcacaf505"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Feb 15 10:24:31 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Feb 15 10:24:31 2011 +0100"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n"
    },
    {
      "commit": "bf1af3a809506645b9130755b713b008da14737f",
      "tree": "6a13f9c622fa8322a6ca2795bd7bb4e9f8fd6160",
      "parents": [
        "0de4b34d466bae571b50f41c7296b85248205e35",
        "868baf07b1a259f5f3803c1dc2777b6c358f83cf"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 14 15:15:16 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 14 15:15:16 2011 +0100"
      },
      "message": "Merge branch \u0027tip/perf/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "0de4b34d466bae571b50f41c7296b85248205e35",
      "tree": "43c590d7cec90324bfdcf1cec074a8172547ed18",
      "parents": [
        "40262a71536d0b4a7486b279fa39463cfffabcc2"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "masami.hiramatsu.pt@hitachi.com",
        "time": "Mon Feb 14 14:48:07 2011 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 14 12:09:53 2011 +0100"
      },
      "message": "tracing/kprobe: Fix NULL pointer deref check\n\nAdd NULL check for avoiding NULL pointer deref.\nThis bug has been introduced by:\n\n  1ff511e35ed8: tracing/kprobes: Add bitfield type\n\nwhich causes a null pointer dereference bug when kprobe-tracer\nparses an argument without type.\n\nReported-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: 2nddept-manager@sdl.hitachi.co.jp\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20110214054807.8919.69740.stgit@ltc236.sdl.hitachi.co.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nReported-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\n"
    },
    {
      "commit": "868baf07b1a259f5f3803c1dc2777b6c358f83cf",
      "tree": "a97caf3db1095ceb806ba53ba7d88d47a153e1b8",
      "parents": [
        "862b6f62bf0cd768910b087f6d051f420206c4d6"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 10 21:26:13 2011 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Feb 11 16:23:33 2011 -0500"
      },
      "message": "ftrace: Fix memory leak with function graph and cpu hotplug\n\nWhen the fuction graph tracer starts, it needs to make a special\nstack for each task to save the real return values of the tasks.\nAll running tasks have this stack created, as well as any new\ntasks.\n\nOn CPU hot plug, the new idle task will allocate a stack as well\nwhen init_idle() is called. The problem is that cpu hotplug does\nnot create a new idle_task. Instead it uses the idle task that\nexisted when the cpu went down.\n\nftrace_graph_init_task() will add a new ret_stack to the task\nthat is given to it. Because a clone will make the task\nhave a stack of its parent it does not check if the task\u0027s\nret_stack is already NULL or not. When the CPU hotplug code\nstarts a CPU up again, it will allocate a new stack even\nthough one already existed for it.\n\nThe solution is to treat the idle_task specially. In fact, the\nfunction_graph code already does, just not at init_idle().\nInstead of using the ftrace_graph_init_task() for the idle task,\nwhich that function expects the task to be a clone, have a\nseparate ftrace_graph_init_idle_task(). Also, we will create a\nper_cpu ret_stack that is used by the idle task. When we call\nftrace_graph_init_idle_task() it will check if the idle task\u0027s\nret_stack is NULL, if it is, then it will assign it the per_cpu\nret_stack.\n\nReported-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSuggested-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Stable Tree \u003cstable@kernel.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "aceb91cd351bc3a19a783c901fe8a8070d5f6fa9",
      "tree": "a0863e940a77ae10d3c8b391488e29a8245b31be",
      "parents": [
        "ae8eed2d0906bf0d8eb0c2a4651676a41d361297",
        "b8cf0e0e552ca48e9a00f518aeb4f5e03984022b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 09 11:45:21 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 09 11:45:21 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  cdrom: support devices that have check_events but not media_changed\n  cfq-iosched: Don\u0027t wait if queue already has requests.\n  blkio-throttle: Avoid calling blkiocg_lookup_group() for root group\n  cfq: rename a function to give it more appropriate name\n  cciss: make cciss_revalidate not loop through CISS_MAX_LUNS volumes unnecessarily.\n  drivers/block/aoe/Makefile: replace the use of \u003cmodule\u003e-objs with \u003cmodule\u003e-y\n  loop: queue_lock NULL pointer derefence in blk_throtl_exit\n  drivers/block/Makefile: replace the use of \u003cmodule\u003e-objs with \u003cmodule\u003e-y\n  blktrace: Don\u0027t output messages if NOTIFY isn\u0027t set.\n"
    },
    {
      "commit": "6752ab4a9c30d5411b2dfdb251a3f1cb18aae487",
      "tree": "2f6e2bb5b562c43b3b3d7efe095e196a19995395",
      "parents": [
        "87d80de2800d087ea833cb79bc13f85ff34ed49f"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 08 13:54:06 2011 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 08 17:14:58 2011 -0500"
      },
      "message": "tracing: Deprecate tracing_enabled for tracing_on\n\ntracing_enabled should not be used, it is heavy weight and does not\ndo much in helping lower the overhead.\n\ntracing_on should be used instead. Warn users to use tracing_on\nwhen tracing_enabled is used as it will soon be removed from the\ntracing directory.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "87d80de2800d087ea833cb79bc13f85ff34ed49f",
      "tree": "ddd0cf19cd3828cfa4c2238e11bc5a0715555da4",
      "parents": [
        "f4d5c029bd6731baac0937324cef0f746e7d5ea7"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 08 13:19:49 2011 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 08 17:14:56 2011 -0500"
      },
      "message": "tracing: Remove obsolete sched_switch tracer\n\nThe trace events sched_switch and sched_wakeup do the same thing\nas the stand alone sched_switch tracer does. It is no longer needed.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "5e38ca8f3ea423442eaafe1b7e206084aa38120a",
      "tree": "bcebbf4ae2620d5cd169f1c748a0ddc30fd97d3d",
      "parents": [
        "ae07f551c42d6e4162436ca452a199deac9dab4d"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Wed Feb 02 13:28:18 2011 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 08 11:57:22 2011 -0500"
      },
      "message": "tracing: Add unstable sched clock note to the warning\n\nThe warning \"Delta way too big\" warning might appear on a system with\nunstable shed clock right after the system is resumed and tracing\nwas enabled during the suspend.\n\nSince it\u0027s not realy bug, and the unstable sched clock is working\nfast and reliable otherwise, Steven suggested to keep using the\nsched clock in any case and just to make note in the warning itself.\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nLKML-Reference: \u003c1296649698-6003-1-git-send-email-jolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ae07f551c42d6e4162436ca452a199deac9dab4d",
      "tree": "88041bf32c4ee8788ef1b909539d0a42fcd9f3f9",
      "parents": [
        "b2d55496818d64310b9f5486d4eea76ea614d7f8"
      ],
      "author": {
        "name": "Ian Munsie",
        "email": "imunsie@au1.ibm.com",
        "time": "Thu Feb 03 14:27:25 2011 +1100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Feb 07 21:30:14 2011 -0500"
      },
      "message": "tracing/syscalls: Early terminate search for sys_ni_syscall\n\nMany system calls are unimplemented and mapped to sys_ni_syscall, but at\nboot ftrace would still search through every syscall metadata entry for\na match which wouldn\u0027t be there.\n\nThis patch adds causes the search to terminate early if the system call\nis not mapped.\n\nSigned-off-by: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nLKML-Reference: \u003c1296703645-18718-7-git-send-email-imunsie@au1.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b2d55496818d64310b9f5486d4eea76ea614d7f8",
      "tree": "b31ea491ae7d02c6375457fa3269fa0289fd8fb4",
      "parents": [
        "c763ba06bd9b5db2c46c36276c89103d92d2c604"
      ],
      "author": {
        "name": "Ian Munsie",
        "email": "imunsie@au1.ibm.com",
        "time": "Thu Feb 03 14:27:23 2011 +1100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Feb 07 21:29:03 2011 -0500"
      },
      "message": "tracing/syscalls: Allow arch specific syscall symbol matching\n\nSome architectures have unusual symbol names and the generic code to\nmatch the symbol name with the function name for the syscall metadata\nwill fail. For example, symbols on PPC64 start with a period and the\ngeneric code will fail to match them.\n\nThis patch moves the match logic out into a separate function which an\narch can override by defining ARCH_HAS_SYSCALL_MATCH_SYM_NAME in\nasm/ftrace.h and implementing arch_syscall_match_sym_name.\n\nSigned-off-by: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nLKML-Reference: \u003c1296703645-18718-5-git-send-email-imunsie@au1.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c763ba06bd9b5db2c46c36276c89103d92d2c604",
      "tree": "776ce215fc5900e747fb79dc91a160da35f4325c",
      "parents": [
        "3773b389b6927595512558594d040c1edba46f36"
      ],
      "author": {
        "name": "Ian Munsie",
        "email": "imunsie@au1.ibm.com",
        "time": "Thu Feb 03 14:27:22 2011 +1100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Feb 07 21:26:22 2011 -0500"
      },
      "message": "tracing/syscalls: Make arch_syscall_addr weak\n\nSome architectures use non-trivial system call tables and will not work\nwith the generic arch_syscall_addr code. For example, PowerPC64 uses a\ntable of twin long longs.\n\nThis patch makes the generic arch_syscall_addr weak to allow\narchitectures with non-trivial system call tables to override it.\n\nSigned-off-by: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nLKML-Reference: \u003c1296703645-18718-4-git-send-email-imunsie@au1.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "3773b389b6927595512558594d040c1edba46f36",
      "tree": "5099c6ea72db515179ef568c2fea9765f51bc6f0",
      "parents": [
        "ba976970c79fd2fbfe1a4b3b6766a318f4eb9d4c"
      ],
      "author": {
        "name": "Ian Munsie",
        "email": "imunsie@au1.ibm.com",
        "time": "Thu Feb 03 14:27:21 2011 +1100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Feb 07 21:25:52 2011 -0500"
      },
      "message": "tracing/syscalls: Convert redundant syscall_nr checks into WARN_ON\n\nWith the ftrace events now checking if the syscall_nr is valid upon\ninitialisation it should no longer be possible to register or unregister\na syscall event without a valid syscall_nr since they should not be\ncreated. This adds a WARN_ON_ONCE in the register and unregister\nfunctions to locate potential regressions in the future.\n\nSigned-off-by: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nLKML-Reference: \u003c1296703645-18718-3-git-send-email-imunsie@au1.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ba976970c79fd2fbfe1a4b3b6766a318f4eb9d4c",
      "tree": "3cb30bb45aa6302cce39849d281bba7e8e294c62",
      "parents": [
        "075de90c46562de1435db16c2129ec4ff92e5bd2"
      ],
      "author": {
        "name": "Ian Munsie",
        "email": "imunsie@au1.ibm.com",
        "time": "Thu Feb 03 14:27:20 2011 +1100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Feb 07 21:24:44 2011 -0500"
      },
      "message": "tracing/syscalls: Don\u0027t add events for unmapped syscalls\n\nFTRACE_SYSCALLS would create events for each and every system call, even\nif it had failed to map the system call\u0027s name with it\u0027s number. This\nresulted in a number of events being created that would not behave as\nexpected.\n\nThis could happen, for example, on architectures who\u0027s symbol names are\nunusual and will not match the system call name. It could also happen\nwith system calls which were mapped to sys_ni_syscall.\n\nThis patch changes the default system call number in the metadata to -1.\nIf the system call name from the metadata is not successfully mapped to\na system call number during boot, than the event initialisation routine\nwill now return an error, preventing the event from being created.\n\nSigned-off-by: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nLKML-Reference: \u003c1296703645-18718-2-git-send-email-imunsie@au1.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "4defe682d81a4960b6840ee4ed1a36f9db77c7bd",
      "tree": "57cb6ab5f8b3a552ed2e0b5a7989d23404bb6cea",
      "parents": [
        "75b8e98263fdb0bfbdeba60d4db463259f1fe8a2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 03 23:29:06 2011 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Feb 07 20:56:20 2011 -0500"
      },
      "message": "tracing/filter: Remove synchronize_sched() from __alloc_preds()\n\nBecause the filters are processed first and then activated\n(added to the call), we no longer need to worry about the preds\nof the filter in __alloc_preds() being used. As the filter that\nis allocating preds is not activated yet.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "75b8e98263fdb0bfbdeba60d4db463259f1fe8a2",
      "tree": "fdd1e66316b049523c76e34c816a812598d07a3c",
      "parents": [
        "bf93f9ed3a2cb89eb7e58851139d3be375b98027"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Feb 03 23:25:46 2011 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Feb 07 20:56:20 2011 -0500"
      },
      "message": "tracing/filter: Swap entire filter of events\n\nWhen creating a new filter, instead of allocating the filter to the\nevent call first and then processing the filter, it is easier to\nprocess a temporary filter and then just swap it with the call filter.\nBy doing this, it simplifies the code.\n\nA filter is allocated and processed, when it is done, it is\nswapped with the call filter, synchronize_sched() is called to make\nsure all callers are done with the old filter (filters are called\nwith premption disabled), and then the old filter is freed.\n\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    }
  ],
  "next": "bf93f9ed3a2cb89eb7e58851139d3be375b98027"
}
