)]}'
{
  "log": [
    {
      "commit": "03688970347bfea32823953a7ce5886d1713205f",
      "tree": "7ae2cc539b20b0a621d4a11f335f96de619ecfcb",
      "parents": [
        "6993b1bb1e62367f500789835a1f747e12259f07"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Fri Jan 22 08:12:47 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jan 26 17:00:39 2010 -0500"
      },
      "message": "tracing/documentation: Cover new frame pointer semantics\n\nUpdate the graph tracer examples to cover the new frame pointer semantics\n(in terms of passing it along).  Move the HAVE_FUNCTION_GRAPH_FP_TEST docs\nout of the Kconfig, into the right place, and expand on the details.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nLKML-Reference: \u003c1264165967-18938-1-git-send-email-vapier@gentoo.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "3c05d7482777f15e71bb4cb1ba78dee2800dfec6",
      "tree": "cb3d7c935ede863ca94e0beb97dc57ceb1e75e7b",
      "parents": [
        "492a74f4210e15f4701422e2e1c4cd3c1e45ddae"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Jan 26 16:14:08 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jan 26 16:14:08 2010 -0500"
      },
      "message": "ring-buffer: Check for end of page in iterator\n\nIf the iterator comes to an empty page for some reason, or if\nthe page is emptied by a consuming read. The iterator code currently\ndoes not check if the iterator is pass the contents, and may\nreturn a false entry.\n\nThis patch adds a check to the ring buffer iterator to test if the\ncurrent page has been completely read and sets the iterator to the\nnext page if necessary.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "492a74f4210e15f4701422e2e1c4cd3c1e45ddae",
      "tree": "a45808e0aa8e5f50ca934a571660f24d6b2d8e1d",
      "parents": [
        "74bf4076f2ed79b5510440b72a561823a8852ec0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Jan 25 15:17:47 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jan 26 16:09:30 2010 -0500"
      },
      "message": "ring-buffer: Check if ring buffer iterator has stale data\n\nUsually reads of the ring buffer is performed by a single task.\nThere are two types of reads from the ring buffer.\n\nOne is a consuming read which will consume the entry that was read\nand the next read will be the entry that follows.\n\nThe other is an iterator that will let the user read the contents of\nthe ring buffer without modifying it. When an iterator is allocated,\nwrites to the ring buffer are disabled to protect the iterator.\n\nThe problem exists when consuming reads happen while an iterator is\nallocated. Specifically, the kind of read that swaps out an entire\npage (used by splice) and replaces it with a new read. If the iterator\nis on the page that is swapped out, then the next read may read\nfrom this swapped out page and return garbage.\n\nThis patch adds a check when reading the iterator to make sure that\nthe iterator contents are still valid. If a consuming read has taken\nplace, the iterator is reset.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "74bf4076f2ed79b5510440b72a561823a8852ec0",
      "tree": "d992d49f992cd77e20c9833876c021ad9b265f57",
      "parents": [
        "f6760aa024199cfbce564311dc4bc4d47b6fb349"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Jan 25 15:11:53 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jan 25 15:11:53 2010 -0500"
      },
      "message": "tracing: Prevent kernel oops with corrupted buffer\n\nIf the contents of the ftrace ring buffer gets corrupted and the trace\nfile is read, it could create a kernel oops (usualy just killing the user\ntask thread). This is caused by the checking of the pid in the buffer.\nIf the pid is negative, it still references the cmdline cache array,\nwhich could point to an invalid address.\n\nThe simple fix is to test for negative PIDs.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d1303dd1d6b220cab375f24fa91a5640e54e169e",
      "tree": "6b37f4fe7ef331e18c35919ae2fab0ce9da5e6b9",
      "parents": [
        "16da27a8bc7a0d050686d1b2e9efb53fab9ed226"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:40 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:14 2010 -0500"
      },
      "message": "tracing/filters: Add comment for match callbacks\n\nWe should be clear on 2 things:\n\n- the length parameter of a match callback includes\n  tailing \u0027\\0\u0027.\n\n- the string to be searched might not be NULL-terminated.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8770.7000608@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "16da27a8bc7a0d050686d1b2e9efb53fab9ed226",
      "tree": "def65eba395d9b2a2531f87dc1dd051be7845e92",
      "parents": [
        "b2af211f284eb1bef19fbb85fc8ef551bb1e7460"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:27 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:12 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_FULL filter matching for PTR_STRING\n\nMATCH_FULL matching for PTR_STRING is not working correctly:\n\n  # echo \u0027func \u003d\u003d vt\u0027 \u003e events/bkl/lock_kernel/filter\n  # echo 1 \u003e events/bkl/lock_kernel/enable\n  ...\n  # cat trace\n   Xorg-1484  [000]  1973.392586: lock_kernel: ... func\u003dvt_ioctl()\n    gpm-1402  [001]  1974.027740: lock_kernel: ... func\u003dvt_ioctl()\n\nWe should pass to regex.match(..., len) the length (including \u0027\\0\u0027)\nof the source string instead of the length of the pattern string.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8763.5070707@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b2af211f284eb1bef19fbb85fc8ef551bb1e7460",
      "tree": "251b3848de7478ad9123c92fc7c95a464bd84f78",
      "parents": [
        "d5f1fb53353edc38da326445267c1df0c9676df2"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:11 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:11 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_MIDDLE_ONLY filter matching\n\nThe @str might not be NULL-terminated if it\u0027s of type\nDYN_STRING or STATIC_STRING, so we should use strnstr()\ninstead of strstr().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8753.2000102@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a3291c14ecf0a995e30d993b7f2cae031de98727",
      "tree": "46b0ed65d437fdffba57866af1ce51d0d15a7673",
      "parents": [
        "285caad415f459f336247932b4db95a571357a02"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:41 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:07 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_END_ONLY filter matching\n\nFor \u0027*foo\u0027 pattern, we should allow any string ending with\n\u0027foo\u0027, but event filtering incorrectly disallows strings\nlike bar_foo_foo:\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8735.6070604@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "285caad415f459f336247932b4db95a571357a02",
      "tree": "b4372c5336dee9919f26c61a4808ef08993a43a6",
      "parents": [
        "751e9983ee276cb150e8812b1d995f6035a63878"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:21 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:05 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_FRONT_ONLY filter matching\n\nMATCH_FRONT_ONLY actually is a full matching:\n\n  # ./perf record -R -f -a -e lock:lock_acquire \\\n\t--filter \u0027name ~rcu_*\u0027 sleep 1\n  # ./perf trace\n  (no output)\n\nWe should pass the length of the pattern string to strncmp().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8721.5090301@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "751e9983ee276cb150e8812b1d995f6035a63878",
      "tree": "7f9abfa2ea11bcc2ccfa9922af17811d5020fa69",
      "parents": [
        "b82a4045f7962483a78a874343dc6e31b79c96c1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:02 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:03 2010 -0500"
      },
      "message": "ftrace: Fix MATCH_END_ONLY function filter\n\nFor \u0027*foo\u0027 pattern, we should allow any string ending with\n\u0027foo\u0027, but ftrace filter incorrectly disallows strings\nlike bar_foo_foo:\n\n  # echo \u0027*io\u0027 \u003e set_ftrace_filter\n  # cat set_ftrace_filter | grep \u0027req_bio_endio\u0027\n  # cat available_filter_functions | grep \u0027req_bio_endio\u0027\n  req_bio_endio\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E870E.6060607@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0e1ff5d72a6393f2ef5dbf74f58bb55a12d63834",
      "tree": "e9a9600a14fa4d1f2b045097c9e9d7d03463f0bf",
      "parents": [
        "5ded3dc6a3c7549b36a8ac27bbd81b33756a2c29"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jan 06 20:40:44 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 20:40:44 2010 -0500"
      },
      "message": "ring-buffer: Add rb_list_head() wrapper around new reader page next field\n\nIf the very unlikely case happens where the writer moves the head by one\nbetween where the head page is read and where the new reader page\nis assigned _and_ the writer then writes and wraps the entire ring buffer\nso that the head page is back to what was originally read as the head page,\nthe page to be swapped will have a corrupted next pointer.\n\nSimple solution is to wrap the assignment of the next pointer with a\nrb_list_head().\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "5ded3dc6a3c7549b36a8ac27bbd81b33756a2c29",
      "tree": "e18c745a2b1b147a9222a615e9d0c39e8a6f7938",
      "parents": [
        "c6f7afaeeda5b3c42ea8d7b27e197d223a04675e"
      ],
      "author": {
        "name": "David Sharp",
        "email": "dhsharp@google.com",
        "time": "Wed Jan 06 17:12:07 2010 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 20:38:25 2010 -0500"
      },
      "message": "ring-buffer: Wrap a list.next reference with rb_list_head()\n\nThis reference at the end of rb_get_reader_page() was causing off-by-one\nwrites to the prev pointer of the page after the reader page when that\npage is the head page, and therefore the reader page has the RB_PAGE_HEAD\nflag in its list.next pointer. This eventually results in a GPF in a\nsubsequent call to rb_set_head_page() (usually from rb_get_reader_page())\nwhen that prev pointer is dereferenced. The dereferenced register would\ncharacteristically have an address that appears shifted left by one byte\n(eg, ffxxxxxxxxxxxxyy instead of ffffxxxxxxxxxxxx) due to being written at\nan address one byte too high.\n\nSigned-off-by: David Sharp \u003cdhsharp@google.com\u003e\nLKML-Reference: \u003c1262826727-9090-1-git-send-email-dhsharp@google.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b21c07040304b8716e38a4a0e4ab60f386357e61",
      "tree": "eb2cf03ec35b9a5090c0adaab659a766e02c3b10",
      "parents": [
        "4e58fb7305449cf8c5a86dd97dfc1812221be77c",
        "fb7ae981cb9fe8665b9da97e8734745e030c151d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:52:01 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:52:01 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Fix sign fields in ftrace_define_fields_##call()\n  tracing/syscalls: Fix typo in SYSCALL_DEFINE0\n  tracing/kprobe: Show sign of fields in trace_kprobe format files\n  ksym_tracer: Remove trace_stat\n  ksym_tracer: Fix race when incrementing count\n  ksym_tracer: Fix to allow writing newline to ksym_trace_filter\n  ksym_tracer: Fix to make the tracer work\n  tracing: Kconfig spelling fixes and cleanups\n  tracing: Fix setting tracer specific options\n  Documentation: Update ftrace-design.txt\n  Documentation: Update tracepoint-analysis.txt\n  Documentation: Update mmiotrace.txt\n"
    },
    {
      "commit": "fb7ae981cb9fe8665b9da97e8734745e030c151d",
      "tree": "7b127c1bd4c0457c30f57d0f9c6ceacf69ab88c2",
      "parents": [
        "e96dc9674cb597de4fee757ed005c8465072d13f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:38 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 30 10:27:06 2009 -0500"
      },
      "message": "tracing: Fix sign fields in ftrace_define_fields_##call()\n\nAdd is_signed_type() call to trace_define_field() in ftrace macros.\n\nThe code previously just passed in 0 (false), disregarding whether\nor not the field was actually a signed type.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D3A.6020007@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "79b408210885b9f7f0b067b07a09d68f4da3a700",
      "tree": "b1297cf9ce84442abe48e67debf67214bd00ac9b",
      "parents": [
        "53ab668064edaeef99c0ee22799483d45f4c81f6"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:19 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 30 10:27:03 2009 -0500"
      },
      "message": "tracing/kprobe: Show sign of fields in trace_kprobe format files\n\nThe format files of trace_kprobe do not show the sign of the fields.\nThe other format files show the field signed type of the fields and\nthis patch makes the trace_kprobe formats consistent with the others.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D27.5040009@cn.fujitsu.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "53ab668064edaeef99c0ee22799483d45f4c81f6",
      "tree": "1aa92f9e5bbddb61cbc3d5683180dc64abe341fc",
      "parents": [
        "e6d9491bf8ba6728cc86aeabbc688d20ec0563b5"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:24:03 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:50 2009 +0100"
      },
      "message": "ksym_tracer: Remove trace_stat\n\ntrace_stat is problematic. Don\u0027t use it, use seqfile instead.\n\nThis fixes a race that reading the stat file is not protected by\nany lock, which can lead to use after free.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF203.40200@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e6d9491bf8ba6728cc86aeabbc688d20ec0563b5",
      "tree": "1ca34f9f0608f688069da43688b2a9b8fa163644",
      "parents": [
        "3d13ec2efdb5843ad91e57b60d50b44d922cf063"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:23:40 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:49 2009 +0100"
      },
      "message": "ksym_tracer: Fix race when incrementing count\n\nWe are under rcu read section but not holding the write lock, so\ncount++ is not atomic. Use atomic64_t instead.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF1EC.9010608@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3d13ec2efdb5843ad91e57b60d50b44d922cf063",
      "tree": "35eb9a0ce4571bded972c28bc00526d9f51819dd",
      "parents": [
        "88f7a890d74137ab0d126a5d65679cd620f1a289"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:23:19 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:49 2009 +0100"
      },
      "message": "ksym_tracer: Fix to allow writing newline to ksym_trace_filter\n\nIt used to work, but now doesn\u0027t:\n\n # echo \u003e ksym_filter\n bash: echo: write error: Invalid argument\n\nIt\u0027s caused by d954fbf0ff6b5fdfb32350e85a2f15d3db976506\n(\"tracing: Fix wrong usage of strstrip in trace_ksyms\").\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF1D7.5040400@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "88f7a890d74137ab0d126a5d65679cd620f1a289",
      "tree": "93f6a908ae6eca32dd7b06be5a0cfb856c7877ac",
      "parents": [
        "40892367bc893f3abf6f5ca8ac2ed1c98ba26a77"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:22:22 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:47 2009 +0100"
      },
      "message": "ksym_tracer: Fix to make the tracer work\n\nksym tracer doesn\u0027t work:\n\n # echo tasklist_lock:rw- \u003e ksym_trace_filter\n -bash: echo: write error: No such device\n\nIt\u0027s because we pass to perf_event_create_kernel_counter()\na cpu number which is not present.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF19E.1010201@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "40892367bc893f3abf6f5ca8ac2ed1c98ba26a77",
      "tree": "f73c4b14b52247911a89fbcce0bcf9bd2b227913",
      "parents": [
        "c757bea93bea4b77ebd181cc6dca60c15e3b1a2c"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Mon Dec 21 12:01:17 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 10:37:54 2009 +0100"
      },
      "message": "tracing: Kconfig spelling fixes and cleanups\n\nFix filename reference (ftrace-implementation.txt -\u003e\nftrace-design.txt).\n\nFix spelling, punctuation, grammar.\n\nFix help text indentation and line lengths to reduce need for\nhorizontal scrolling or larger window sizes.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20091221120117.3fb49cdc.randy.dunlap@oracle.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c757bea93bea4b77ebd181cc6dca60c15e3b1a2c",
      "tree": "f1a4ddfea72acf13864f543648bf3f79924cbdc3",
      "parents": [
        "7e25f44cbf8d95a9748fdfd19c06145f19fd10e3"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 21 22:35:16 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Dec 21 22:35:16 2009 -0500"
      },
      "message": "tracing: Fix setting tracer specific options\n\nThe function __set_tracer_option() takes as its last parameter a\n\"neg\" value. If set it should negate the value of the option.\n\nThe trace_options_write() passed the value written to the file\nwhich is what the new value needs to be set as. But since this\nis not the negative, it never sets the value.\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "eca9dfcd0029c8a84b1094bb84a2fb53e4addf6c",
      "tree": "2e5982fef1e737ce5f8936981c7dc7fb50fc655c",
      "parents": [
        "3981e152864fcc1dbbb564e1f4c0ae11a09639d2",
        "b5b60fda1e462a849bc37dfbace2888191be82cc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:48:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:48:42 2009 -0800"
      },
      "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 session: Make events_stats u64 to avoid overflow on 32-bit arches\n  hw-breakpoints: Fix hardware breakpoints -\u003e perf events dependency\n  perf events: Dont report side-band events on each cpu for per-task-per-cpu events\n  perf events, x86/stacktrace: Fix performance/softlockup by providing a special frame pointer-only stack walker\n  perf events, x86/stacktrace: Make stack walking optional\n  perf events: Remove unused perf_counter.h header file\n  perf probe: Check new event name\n  kprobe-tracer: Check new event/group name\n  perf probe: Check whether debugfs path is correct\n  perf probe: Fix libdwarf include path for Debian\n"
    },
    {
      "commit": "5a865c0606eb44d5d12cabb429751c83712183de",
      "tree": "726d6eaf3b20f30900304bd0cbb6339b423a071f",
      "parents": [
        "331d9d5958277de27e6ce42247e1cbec54fd1c7e",
        "46e75f66677f5094bb51e91f9473128c4e907c7d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 07:23:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 07:23:42 2009 -0800"
      },
      "message": "Merge branch \u0027for-33\u0027 of git://repo.or.cz/linux-kbuild\n\n* \u0027for-33\u0027 of git://repo.or.cz/linux-kbuild: (29 commits)\n  net: fix for utsrelease.h moving to generated\n  gen_init_cpio: fixed fwrite warning\n  kbuild: fix make clean after mismerge\n  kbuild: generate modules.builtin\n  genksyms: properly consider  EXPORT_UNUSED_SYMBOL{,_GPL}()\n  score: add asm/asm-offsets.h wrapper\n  unifdef: update to upstream revision 1.190\n  kbuild: specify absolute paths for cscope\n  kbuild: create include/generated in silentoldconfig\n  scripts/package: deb-pkg: use fakeroot if available\n  scripts/package: add KBUILD_PKG_ROOTCMD variable\n  scripts/package: tar-pkg: use tar --owner\u003droot\n  Kbuild: clean up marker\n  net: add net_tstamp.h to headers_install\n  kbuild: move utsrelease.h to include/generated\n  kbuild: move autoconf.h to include/generated\n  drop explicit include of autoconf.h\n  kbuild: move compile.h to include/generated\n  kbuild: drop include/asm\n  kbuild: do not check for include/asm-$ARCH\n  ...\n\nFixed non-conflicting clean merge of modpost.c as per comments from\nStephen Rothwell (modpost.c had grown an include of linux/autoconf.h\nthat needed to be changed to generated/autoconf.h)\n"
    },
    {
      "commit": "61c1917f47f73c968e92d04d15370b1dc3ec4592",
      "tree": "a20445bcaf484d270bd6cb8de5969702110af687",
      "parents": [
        "5b74ed4729ad2b2017453add68104a83206caefb"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Dec 17 05:40:33 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 09:56:19 2009 +0100"
      },
      "message": "perf events, x86/stacktrace: Make stack walking optional\n\nThe current print_context_stack helper that does the stack\nwalking job is good for usual stacktraces as it walks through\nall the stack and reports even addresses that look unreliable,\nwhich is nice when we don\u0027t have frame pointers for example.\n\nBut we have users like perf that only require reliable\nstacktraces, and those may want a more adapted stack walker, so\nlets make this function a callback in stacktrace_ops that users\ncan tune for their needs.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1261024834-5336-1-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6f3cf440470650b3841d325acacd0c5ea9504c68",
      "tree": "a00395723fb479fc6485d1b6b36b97808d0159e6",
      "parents": [
        "96c96612e952f63cc0055db9df7d8b5b1ada02be"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Wed Dec 16 17:24:08 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 09:42:44 2009 +0100"
      },
      "message": "kprobe-tracer: Check new event/group name\n\nCheck new event/group name is same syntax as a C symbol. In other\nwords, checking the name is as like as other tracepoint events.\n\nThis can prevent user to create an event with useless name (e.g.\nfoo|bar, foo*bar).\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nLKML-Reference: \u003c20091216222408.14459.68790.stgit@dhcp-100-2-132.bos.redhat.com\u003e\n[ v2: minor cleanups ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "da184a8064efe2a78d8542877970f7c6bb62775a",
      "tree": "d10193bb583f60333e243fe46386cab31f591e0c",
      "parents": [
        "525995d77ca08dfc2ba6f8e606f93694271dbd66",
        "e36c54582c6f14adc9e10473e2aec2cc4f0acc03"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:02:25 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:02:25 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Fix return of trace_dump_stack()\n  ksym_tracer: Fix bad cast\n  tracing/power: Remove two exports\n  tracing: Change event-\u003eprofile_count to be int type\n  tracing: Simplify trace_option_write()\n  tracing: Remove useless trace option\n  tracing: Use seq file for trace_clock\n  tracing: Use seq file for trace_options\n  function-graph: Allow writing the same val to set_graph_function\n  ftrace: Call trace_parser_clear() properly\n  ftrace: Return EINVAL when writing invalid val to set_ftrace_filter\n  tracing: Move a printk out of ftrace_raw_reg_event_foo()\n  tracing: Pull up calls to trace_define_common_fields()\n  tracing: Extract duplicate ftrace_raw_init_event_foo()\n  ftrace.h: Use common pr_info fmt string\n  tracing: Add stack trace to irqsoff tracer\n  tracing: Add trace_dump_stack()\n  ring-buffer: Move resize integrity check under reader lock\n  ring-buffer: Use sync sched protection on ring buffer resizing\n  tracing: Fix wrong usage of strstrip in trace_ksyms\n"
    },
    {
      "commit": "28dfef8febe48f59cf1e7596e1992a6a1893ca24",
      "tree": "eb2df6dd75e72db066062950f91c9ab2e8215280",
      "parents": [
        "5116fa2b3a0a3ec625a10445ae45667f094c125b"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Dec 15 16:46:48 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:05 2009 -0800"
      },
      "message": "const: constify remaining pipe_buf_operations\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e36c54582c6f14adc9e10473e2aec2cc4f0acc03",
      "tree": "057c54ccfd431152486fd781070713ad0e34bb01",
      "parents": [
        "0087aabd6a3744c28114240776918f5d15e46b98"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 14 15:58:33 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 15 08:36:11 2009 +0100"
      },
      "message": "tracing: Fix return of trace_dump_stack()\n\nThe trace_dump_stack() returned a value for a void function.\n\nAlso, added the missing stub for trace_dump_stack() when tracing is\nnot configured.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLKML-Reference: \u003c20091214162713.GA31060@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0199c4e68d1f02894bdefe4b5d9e9ee4aedd8d62",
      "tree": "e371d17bd73d64332349debbf45962ec67e7269d",
      "parents": [
        "edc35bd72e2079b25f99c5da7d7a65dbbffc4a26"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 02 20:01:25 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Convert __raw_spin* functions to arch_spin*\n\nName space cleanup. No functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: linux-arch@vger.kernel.org\n"
    },
    {
      "commit": "edc35bd72e2079b25f99c5da7d7a65dbbffc4a26",
      "tree": "a4fac9d24d243d3296fc36a2371db2a56d363e1a",
      "parents": [
        "445c89514be242b1b0080056d50bdc1b72adeb5c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 03 12:38:57 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Rename __RAW_SPIN_LOCK_UNLOCKED to __ARCH_SPIN_LOCK_UNLOCKED\n\nFurther name space cleanup. No functional change\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: linux-arch@vger.kernel.org\n"
    },
    {
      "commit": "445c89514be242b1b0080056d50bdc1b72adeb5c",
      "tree": "96ed062794ad0fb6a649713c83f009eea382e8b2",
      "parents": [
        "6b6b4792f89346e47437682c7ba3438e6681c0f9"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 02 19:49:50 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Convert raw_spinlock to arch_spinlock\n\nThe raw_spin* namespace was taken by lockdep for the architecture\nspecific implementations. raw_spin_* would be the ideal name space for\nthe spinlocks which are not converted to sleeping locks in preempt-rt.\n\nLinus suggested to convert the raw_ to arch_ locks and cleanup the\nname space instead of using an artifical name like core_spin,\natomic_spin or whatever\n\nNo functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: linux-arch@vger.kernel.org\n\n"
    },
    {
      "commit": "d0316554d3586cbea60592a41391b5def2553d6f",
      "tree": "5e7418f0bacbc68cec5dfd1541e03eb56870aa02",
      "parents": [
        "fb0bbb92d42d5bd0ab224605444efdfed06d6934",
        "51e99be00ce2713cbb841cedc997cafa6e26c7f4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 14 09:58:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 14 09:58:24 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (34 commits)\n  m68k: rename global variable vmalloc_end to m68k_vmalloc_end\n  percpu: add missing per_cpu_ptr_to_phys() definition for UP\n  percpu: Fix kdump failure if booted with percpu_alloc\u003dpage\n  percpu: make misc percpu symbols unique\n  percpu: make percpu symbols in ia64 unique\n  percpu: make percpu symbols in powerpc unique\n  percpu: make percpu symbols in x86 unique\n  percpu: make percpu symbols in xen unique\n  percpu: make percpu symbols in cpufreq unique\n  percpu: make percpu symbols in oprofile unique\n  percpu: make percpu symbols in tracer unique\n  percpu: make percpu symbols under kernel/ and mm/ unique\n  percpu: remove some sparse warnings\n  percpu: make alloc_percpu() handle array types\n  vmalloc: fix use of non-existent percpu variable in put_cpu_var()\n  this_cpu: Use this_cpu_xx in trace_functions_graph.c\n  this_cpu: Use this_cpu_xx for ftrace\n  this_cpu: Use this_cpu_xx in nmi handling\n  this_cpu: Use this_cpu operations in RCU\n  this_cpu: Use this_cpu ops for VM statistics\n  ...\n\nFix up trivial (famous last words) global per-cpu naming conflicts in\n\tarch/x86/kvm/svm.c\n\tmm/slab.c\n"
    },
    {
      "commit": "0087aabd6a3744c28114240776918f5d15e46b98",
      "tree": "8bf3ba7b3395490441722360d2872480f64cd694",
      "parents": [
        "cc0104e877fff32865a67b256d3a9ce52ff15790",
        "cc51a0fca66658ea710db566ba17e80e3f7d4957"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 17:12:37 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 17:12:37 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/urgent\n"
    },
    {
      "commit": "cc0104e877fff32865a67b256d3a9ce52ff15790",
      "tree": "18779442274e81607822ecb0905c55ac4ce6a163",
      "parents": [
        "16620e0f1990fa6d896a639449c4b3d678458464",
        "f40542532e96dda5506eb76badea322f2ae4731c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 09:16:49 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 09:16:49 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/urgent\n\nConflicts:\n\tkernel/trace/trace_kprobe.c\n\nMerge reason: resolve the conflict.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "16620e0f1990fa6d896a639449c4b3d678458464",
      "tree": "fd8be22bfc910b858277c8b12e9621eb47e6ba08",
      "parents": [
        "472bbe02c92a7a8299d7b16946277d98bb8f4bb7"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:18:16 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:46:54 2009 +0100"
      },
      "message": "ksym_tracer: Fix bad cast\n\nFix this warning:\n\nkernel/trace/trace_ksym.c: In function \u0027ksym_trace_filter_read\u0027:\nkernel/trace/trace_ksym.c:239: warning: cast to pointer from integer of different size\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \"K.Prasad\" \u003cprasad@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c4B1DC578.9020909@cn.fujitsu.com\u003e\n[remove the strstrip fix as tglx already fixed that]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "472bbe02c92a7a8299d7b16946277d98bb8f4bb7",
      "tree": "3293350de0a24b03a503560e09494e88327d9c0d",
      "parents": [
        "e00bf2ec60605eb95687b7a0c3b83c87c48541dc"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:17:51 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:28 2009 +0100"
      },
      "message": "tracing/power: Remove two exports\n\ntrace_power_start and trace_power_end are used in\narch/x86/kernel/power.c, and this file can\u0027t be compiled\nas a module, so these two tracepoints don\u0027t need to be\nexported.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B1DC55F.7060305@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "e00bf2ec60605eb95687b7a0c3b83c87c48541dc",
      "tree": "e0b63423355286bc14cee438b39e9ba681f7327a",
      "parents": [
        "8d18eaaff5acaa58369be342c86e607643ce10c7"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:17:29 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:28 2009 +0100"
      },
      "message": "tracing: Change event-\u003eprofile_count to be int type\n\nLike total_profile_count, struct ftrace_event_call::profile_count\nis protected by event_mutex, so it doesn\u0027t need to be atomic_t.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c4B1DC549.5010705@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "8d18eaaff5acaa58369be342c86e607643ce10c7",
      "tree": "ff5d275165cd224468a9930f94ac80a53bfc55c7",
      "parents": [
        "2cbafd68b826f8e0471875cf33cdfb8a1478aef1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:17:06 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:28 2009 +0100"
      },
      "message": "tracing: Simplify trace_option_write()\n\n- remove duplicate code inside trace_options_write()\n- extract duplicate code in trace_options_write() and set_tracer_option()\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B1DC532.9010802@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "2cbafd68b826f8e0471875cf33cdfb8a1478aef1",
      "tree": "27bf54c8f0803fc3ed854140eee01d7ac5104c6a",
      "parents": [
        "13f16d209161c95e92aef40e350cc6cf56ac440b"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:16:26 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:27 2009 +0100"
      },
      "message": "tracing: Remove useless trace option\n\nSince commit 4d9493c90f8e6e1b164aede3814010a290161abb\n(\"ftrace: remove add-hoc code\"), option \"sched-tree\"\nhas become useless.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B1DC50A.7040402@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "13f16d209161c95e92aef40e350cc6cf56ac440b",
      "tree": "a8e3bc78c7b07f5dab8776d91642d29ea1783fb8",
      "parents": [
        "fdb372ed4cadbfe9dbba0e932a77d0523682e690"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:16:11 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:27 2009 +0100"
      },
      "message": "tracing: Use seq file for trace_clock\n\nThe buffer for the output is as small as 64 bytes, so it\u0027ll\noverflow if we add more clock type. Use seq file instead.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B1DC4FB.5030407@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "fdb372ed4cadbfe9dbba0e932a77d0523682e690",
      "tree": "fe58239da27070baac9c0dc3c692f7535cfcfa15",
      "parents": [
        "91baf6285be7282cfa487de92f836c50749dffb9"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:15:59 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:27 2009 +0100"
      },
      "message": "tracing: Use seq file for trace_options\n\nCode simplification for reading trace_options.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-reference: \u003c4B1DC4EF.3090106@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "91baf6285be7282cfa487de92f836c50749dffb9",
      "tree": "766544ebcc24fecf177eba5bd8be475cf3516eef",
      "parents": [
        "313254a9400d388b46150c0f355e216418a2f598"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:15:45 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:26 2009 +0100"
      },
      "message": "function-graph: Allow writing the same val to set_graph_function\n\n# echo \u0027do_open\u0027 \u003e set_graph_function\n # echo \u0027do_open\u0027 \u003e\u003e set_graph_function\n bash: echo: write error: Invalid argument\n\nMake it valid to write the same value to set_graph_function,\nwhich is consistent with set_ftrace_filter interface.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-reference: \u003c4B1DC4E1.1060303@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "313254a9400d388b46150c0f355e216418a2f598",
      "tree": "190c360ad60b27763e2f95dc5cf8fa9068d3d71e",
      "parents": [
        "311d16da575f53c3367099579736c1d233efe0dc"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:15:30 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:26 2009 +0100"
      },
      "message": "ftrace: Call trace_parser_clear() properly\n\nI found a weird behavior:\n\n  # echo \u0027fuse:*\u0027 \u003e set_ftrace_filter\n  bash: echo: write error: Invalid argument\n  # cat set_ftrace_filter\n  fuse_dev_fasync\n  fuse_dev_poll\n  fuse_copy_do\n\nWe should call trace_parser_clear() no matter ftrace_process_regex()\nreturns 0 or -errno, otherwise we will actually take the unaccepted\nrecords from ftrace_regex_release().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B1DC4D2.3000406@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "311d16da575f53c3367099579736c1d233efe0dc",
      "tree": "6fea069fc00f50afac428021989d037f0bb0162f",
      "parents": [
        "3b8e4273814a7f9e9a74ece517d9206fea919aaa"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:15:11 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:25 2009 +0100"
      },
      "message": "ftrace: Return EINVAL when writing invalid val to set_ftrace_filter\n\nCurrently it doesn\u0027t warn user on invald value:\n\n # echo nonexist_symbol \u003e set_ftrace_filter\nor:\n # echo \u0027nonexist_symbol:mod:fuse\u0027 \u003e set_ftrace_filter\n\nBetter make it return failure.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B1DC4BF.2070003@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "3b8e4273814a7f9e9a74ece517d9206fea919aaa",
      "tree": "aa7960d90fe8cd4b04537bf9ea84ac73cb3b69ad",
      "parents": [
        "614a71a26ba3d97e9fa85649db69a682b78e407d"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:14:52 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:37:25 2009 +0100"
      },
      "message": "tracing: Move a printk out of ftrace_raw_reg_event_foo()\n\nMove the printk from each ftrace_raw_reg_event_foo() to\nits caller ftrace_event_enable_disable(). This avoids each\nregfunc trace event callbacks to handle a same error report\nthat can be carried from the caller.\n\nSee how much space this saves:\n\n   text    data     bss     dec     hex filename\n5345151 1961864 7103260 14410275         dbe223 vmlinux.o.old\n5331487 1961864 7103260 14396611         dbacc3 vmlinux.o\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nLKML-Reference: \u003c4B1DC4AC.802@cn.fujitsu.com\u003e\n[start cmdline record before calling regfunc to avoid lost\nwindow of pid to comm resolution]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "614a71a26ba3d97e9fa85649db69a682b78e407d",
      "tree": "f0e52c9fa62f4e4230bc2ead2449caae3b30ff87",
      "parents": [
        "87d9b4e1c52867a45331a9a5495f6448e0c68b23"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:14:36 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:34:23 2009 +0100"
      },
      "message": "tracing: Pull up calls to trace_define_common_fields()\n\nCall trace_define_common_fields() in event_create_dir() only.\nThis avoids trace events to handle it from their define_fields\ncallbacks and shrinks the kernel code size:\n\n   text    data     bss     dec     hex filename\n5346802 1961864 7103260 14411926         dbe896 vmlinux.o.old\n5345151 1961864 7103260 14410275         dbe223 vmlinux.o\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nLKML-Reference: \u003c4B1DC49C.8000107@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "87d9b4e1c52867a45331a9a5495f6448e0c68b23",
      "tree": "dcac60fbfa60eec687d723fad780165cec5fd9b1",
      "parents": [
        "4819568f23a8bef0ca99b740ca60fe2450ab0aac"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:14:20 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:34:23 2009 +0100"
      },
      "message": "tracing: Extract duplicate ftrace_raw_init_event_foo()\n\nUse a generic trace_event_raw_init() function for all event\u0027s raw_init\ncallbacks (but kprobes) instead of defining the same version for each\nof these.\nThis shrinks the kernel code:\n\n   text    data     bss     dec     hex filename\n5355293 1961928 7103260 14420481         dc0a01 vmlinux.o.old\n5346802 1961864 7103260 14411926         dbe896 vmlinux.o\n\nraw_init can\u0027t be removed, because ftrace events and kprobe events\nuse different raw_init callbacks. Though it\u0027s possible to totally\nremove raw_init, I choose to leave it as it is for now.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nLKML-Reference: \u003c4B1DC48C.7080603@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "273b281fa22c293963ee3e6eec418f5dda2dbc83",
      "tree": "1503005f5b106c0293a5eba1fb9ff90a9c91e4c9",
      "parents": [
        "264a26838056fc2d759f58bec2e720e01fcb1bdb"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Oct 18 00:52:28 2009 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Sat Dec 12 13:08:15 2009 +0100"
      },
      "message": "kbuild: move utsrelease.h to include/generated\n\nFix up all users of utsrelease.h\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "df7147b3c37cb203f968119f3b6a1cd648c535a1",
      "tree": "f5e0026cc8b1f711beef03338b087ff66cae92c4",
      "parents": [
        "6f696eb17be741668810fe1f798135c7cf6733e2",
        "788d70dce0184eccc249ac6f05aa38b385b7497c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:47:44 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:47:44 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Remove comparing of NULL to va_list in trace_array_vprintk()\n  tracing: Fix function graph trace_pipe to properly display failed entries\n  tracing: Add full state to trace_seq\n  tracing: Buffer the output of seq_file in case of filled buffer\n  tracing: Only call pipe_close if pipe_close is defined\n  tracing: Add pipe_close interface\n"
    },
    {
      "commit": "6f696eb17be741668810fe1f798135c7cf6733e2",
      "tree": "f9bcfe5831dfcaaad50ca68d7f04d80d8236fa56",
      "parents": [
        "c4e194e3b71ff4fed01d727c32ee1071921d28a3",
        "125580380f418000b1a06d9a54700f1191b6e561"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:47:30 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 11 20:47:30 2009 -0800"
      },
      "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: (57 commits)\n  x86, perf events: Check if we have APIC enabled\n  perf_event: Fix variable initialization in other codepaths\n  perf kmem: Fix unused argument build warning\n  perf symbols: perf_header__read_build_ids() offset\u0027n\u0027size should be u64\n  perf symbols: dsos__read_build_ids() should read both user and kernel buildids\n  perf tools: Align long options which have no short forms\n  perf kmem: Show usage if no option is specified\n  sched: Mark sched_clock() as notrace\n  perf sched: Add max delay time snapshot\n  perf tools: Correct size given to memset\n  perf_event: Fix perf_swevent_hrtimer() variable initialization\n  perf sched: Fix for getting task\u0027s execution time\n  tracing/kprobes: Fix field creation\u0027s bad error handling\n  perf_event: Cleanup for cpu_clock_perf_event_update()\n  perf_event: Allocate children\u0027s perf_event_ctxp at the right time\n  perf_event: Clean up __perf_event_init_context()\n  hw-breakpoints: Modify breakpoints without unregistering them\n  perf probe: Update perf-probe document\n  perf probe: Support --del option\n  trace-kprobe: Support delete probe syntax\n  ...\n"
    },
    {
      "commit": "cc51a0fca66658ea710db566ba17e80e3f7d4957",
      "tree": "4ab424a7f5f873ba603d090ab36b15f5aaf874c3",
      "parents": [
        "03889384cee7a198a79447c1ea6aca2c8e54d155"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Dec 11 11:54:51 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Dec 11 13:19:51 2009 -0500"
      },
      "message": "tracing: Add stack trace to irqsoff tracer\n\nThe irqsoff and friends tracers help in finding causes of latency in the\nkernel. The also work with the function tracer to show what was happening\nwhen interrupts or preemption are disabled. But the function tracer has\na bit of an overhead and can cause exagerated readings.\n\nCurrently, when tracing with /proc/sys/kernel/ftrace_enabled \u003d 0, where the\nfunction tracer is disabled, the information that is provided can end up\nbeing useless. For example, a 2 and a half millisecond latency only showed:\n\n # tracer: preemptirqsoff\n #\n # preemptirqsoff latency trace v1.1.5 on 2.6.32\n # --------------------------------------------------------------------\n # latency: 2463 us, #4/4, CPU#2 | (M:preempt VP:0, KP:0, SP:0 HP:0 #P:4)\n #    -----------------\n #    | task: -4242 (uid:0 nice:0 policy:0 rt_prio:0)\n #    -----------------\n #  \u003d\u003e started at: _spin_lock_irqsave\n #  \u003d\u003e ended at:   remove_wait_queue\n #\n #\n #                  _------\u003d\u003e CPU#\n #                 / _-----\u003d\u003e irqs-off\n #                | / _----\u003d\u003e need-resched\n #                || / _---\u003d\u003e hardirq/softirq\n #                ||| / _--\u003d\u003e preempt-depth\n #                |||| /_--\u003d\u003e lock-depth\n #                |||||/     delay\n #  cmd     pid   |||||| time  |   caller\n #     \\   /      ||||||   \\   |   /\n hackbenc-4242    2d....    0us!: trace_hardirqs_off \u003c-_spin_lock_irqsave\n hackbenc-4242    2...1. 2463us+: _spin_unlock_irqrestore \u003c-remove_wait_queue\n hackbenc-4242    2...1. 2466us : trace_preempt_on \u003c-remove_wait_queue\n\nThe above lets us know that hackbench with pid 2463 grabbed a spin lock\nsomewhere and enabled preemption at remove_wait_queue. This helps a little\nbut where this actually happened is not informative.\n\nThis patch adds the stack dump to the end of the irqsoff tracer. This provides\nthe following output:\n\n hackbenc-4242    2d....    0us!: trace_hardirqs_off \u003c-_spin_lock_irqsave\n hackbenc-4242    2...1. 2463us+: _spin_unlock_irqrestore \u003c-remove_wait_queue\n hackbenc-4242    2...1. 2466us : trace_preempt_on \u003c-remove_wait_queue\n hackbenc-4242    2...1. 2467us : \u003cstack trace\u003e\n  \u003d\u003e sub_preempt_count\n  \u003d\u003e _spin_unlock_irqrestore\n  \u003d\u003e remove_wait_queue\n  \u003d\u003e free_poll_entry\n  \u003d\u003e poll_freewait\n  \u003d\u003e do_sys_poll\n  \u003d\u003e sys_poll\n  \u003d\u003e system_call_fastpath\n\nNow we see that the culprit of this latency was the free_poll_entry code.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "03889384cee7a198a79447c1ea6aca2c8e54d155",
      "tree": "66794ab12e3196c4bee4d8d020f451e8cc8a1f6d",
      "parents": [
        "dd7f59435782a02ceb6d16b9ce823dd3345d75ec"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Dec 11 09:48:22 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Dec 11 10:38:47 2009 -0500"
      },
      "message": "tracing: Add trace_dump_stack()\n\nI\u0027ve been asked a few times about how to find out what is calling\nsome location in the kernel. One way is to use dynamic function tracing\nand implement the func_stack_trace. But this only finds out who is\ncalling a particular function. It does not tell you who is calling\nthat function and entering a specific if conditional.\n\nI have myself implemented a quick version of trace_dump_stack() for\nthis purpose a few times, and just needed it now. This is when I realized\nthat this would be a good tool to have in the kernel like trace_printk().\n\nUsing trace_dump_stack() is similar to dump_stack() except that it\nwrites to the trace buffer instead and can be used in critical locations.\n\nFor example:\n\n@@ -5485,8 +5485,12 @@ need_resched_nonpreemptible:\n \tif (prev-\u003estate \u0026\u0026 !(preempt_count() \u0026 PREEMPT_ACTIVE)) {\n \t\tif (unlikely(signal_pending_state(prev-\u003estate, prev)))\n \t\t\tprev-\u003estate \u003d TASK_RUNNING;\n-\t\telse\n+\t\telse {\n \t\t\tdeactivate_task(rq, prev, 1);\n+\t\t\ttrace_printk(\"Deactivating task %s:%d\\n\",\n+\t\t\t\t     prev-\u003ecomm, prev-\u003epid);\n+\t\t\ttrace_dump_stack();\n+\t\t}\n \t\tswitch_count \u003d \u0026prev-\u003envcsw;\n \t}\n\nProduces:\n\n           \u003c...\u003e-3249  [001]   296.105269: schedule: Deactivating task ntpd:3249\n           \u003c...\u003e-3249  [001]   296.105270: \u003cstack trace\u003e\n \u003d\u003e schedule\n \u003d\u003e schedule_hrtimeout_range\n \u003d\u003e poll_schedule_timeout\n \u003d\u003e do_select\n \u003d\u003e core_sys_select\n \u003d\u003e sys_select\n \u003d\u003e system_call_fastpath\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "dd7f59435782a02ceb6d16b9ce823dd3345d75ec",
      "tree": "d85e0a7b2b587b41afd1c764e7c25b3fa2962613",
      "parents": [
        "184210154b9aa570099183f6c062ac4eb11190b7"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Dec 10 23:20:52 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Dec 10 23:20:52 2009 -0500"
      },
      "message": "ring-buffer: Move resize integrity check under reader lock\n\nWhile using an application that does splice on the ftrace ring\nbuffer at start up, I triggered an integrity check failure.\n\nLooking into this, I discovered that resizing the buffer performs\nan integrity check after the buffer is resized. This check unfortunately\nis preformed after it releases the reader lock. If a reader is\nreading the buffer it may cause the integrity check to trigger a\nfalse failure.\n\nThis patch simply moves the integrity checker under the protection\nof the ring buffer reader lock.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "184210154b9aa570099183f6c062ac4eb11190b7",
      "tree": "8951abcbd66eb5e198e340013b87138c2ff8d7fa",
      "parents": [
        "d954fbf0ff6b5fdfb32350e85a2f15d3db976506"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Dec 10 22:54:27 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Dec 10 22:54:27 2009 -0500"
      },
      "message": "ring-buffer: Use sync sched protection on ring buffer resizing\n\nThere was a comment in the ring buffer code that says the calling\nlayers should prevent tracing or reading of the ring buffer while\nresizing. I have discovered that the tracers do not honor this\narrangement.\n\nThis patch moves the disabling and synchronizing the ring buffer to\na higher layer during resizing. This guarantees that no writes\nare occurring while the resize takes place.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d954fbf0ff6b5fdfb32350e85a2f15d3db976506",
      "tree": "3814d5878ed43b7f3cd36bdfe08053bb3d5fc0d9",
      "parents": [
        "788d70dce0184eccc249ac6f05aa38b385b7497c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 10 23:46:52 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Dec 11 00:01:36 2009 +0100"
      },
      "message": "tracing: Fix wrong usage of strstrip in trace_ksyms\n\nstrstrip returns a pointer to the first non space character, but the\ncode in parse_ksym_trace_str() ignores that.\n\nstrstrip is now must_check and therefor we get the correct warning:\nkernel/trace/trace_ksym.c:294: warning:\nignoring return value of ‘strstrip’, declared with attribute warn_unused_result\n\nWe are really not interested in leading whitespace here.\n\nFix that and cleanup the dozen kfree() exit pathes.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f2942487ffb0c0a80b2312f667ea30dd55a24bb0",
      "tree": "8e6e4c8ae8230f2648142c863e8482b7656e6614",
      "parents": [
        "be1eca39319689aed7d3aedb9c3bece9469fe10f"
      ],
      "author": {
        "name": "Carsten Emde",
        "email": "Carsten.Emde@osadl.org",
        "time": "Sun Dec 06 14:02:44 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 14:20:08 2009 -0500"
      },
      "message": "tracing: Remove comparing of NULL to va_list in trace_array_vprintk()\n\nOlof Johansson stated the following:\n\n  Comparing a va_list with NULL is bogus. It\u0027s supposed to be treated like\n  an opaque type and only be manipulated with va_* accessors.\n\nOlof noticed that this code broke the ARM builds:\n\n    kernel/trace/trace.c: In function \u0027trace_array_vprintk\u0027:\n    kernel/trace/trace.c:1364: error: invalid operands to binary \u003d\u003d (have \u0027va_list\u0027 and \u0027void *\u0027)\n    kernel/trace/trace.c: In function \u0027tracing_mark_write\u0027:\n    kernel/trace/trace.c:3349: error: incompatible type for argument 3 of \u0027trace_vprintk\u0027\n\nThis patch partly reverts c13d2f7c3231e873f30db92b96c8caa48f100f33 and\nre-installs the original mark_printk() mechanism.\n\nReported-by: Olof Johansson \u003colof@lixom.net\u003e\nSigned-off-by: Carsten Emde \u003cC.Emde@osadl.org\u003e\nLKML-Reference: \u003c4B1BAB74.104@osadl.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "be1eca39319689aed7d3aedb9c3bece9469fe10f",
      "tree": "fd55a6c086f328a2cdf9ed9ea2d371c3383c663f",
      "parents": [
        "d184b31c0e403580aafb3f8955ecc185a3d04801"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Tue Nov 24 13:57:38 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 14:09:06 2009 -0500"
      },
      "message": "tracing: Fix function graph trace_pipe to properly display failed entries\n\nThere is a case where the graph tracer might get confused and omits\ndisplaying of a single record.  This applies mostly with the trace_pipe\nsince it is unlikely that the trace_seq buffer will overflow with the\ntrace file.\n\nAs the function_graph tracer goes through the trace entries keeping a\npointer to the current record:\n\ncurrent -\u003e  func1 ENTRY\n            func2 ENTRY\n            func2 RETURN\n            func1 RETURN\n\nWhen an function ENTRY is encountered, it moves the pointer to the\nnext entry to check if the function is a nested or leaf function.\n\n            func1 ENTRY\ncurrent -\u003e  func2 ENTRY\n            func2 RETURN\n            func1 RETURN\n\nIf the rest of the writing of the function fills the trace_seq buffer,\nthen the trace_pipe read will ignore this entry. The next read will\nNow start at the current location, but the first entry (func1) will\nbe discarded.\n\nThis patch keeps a copy of the current entry in the iterator private\nstorage and will keep track of when the trace_seq buffer fills. When\nthe trace_seq buffer fills, it will reuse the copy of the entry in the\nnext iteration.\n\n[\n  This patch has been largely modified by Steven Rostedt in order to\n  clean it up and simplify it. The original idea and concept was from\n  Jirka and for that, this patch will go under his name to give him\n  the credit he deserves. But because this was modify by Steven Rostedt\n  anything wrong with the patch should be blamed on Steven.\n]\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1259067458-27143-1-git-send-email-jolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d184b31c0e403580aafb3f8955ecc185a3d04801",
      "tree": "ca3fc8371382ce8dbe43eb684313847b7555573e",
      "parents": [
        "a63ce5b306855bccdacba95c03bfc293316c8ae3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Nov 25 16:10:14 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 14:05:49 2009 -0500"
      },
      "message": "tracing: Add full state to trace_seq\n\nThe trace_seq buffer might fill up, and right now one needs to check the\nreturn value of each printf into the buffer to check for that.\n\nInstead, have the buffer keep track of whether it is full or not, and\nreject more input if it is full or would have overflowed with an input\nthat wasn\u0027t added.\n\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a63ce5b306855bccdacba95c03bfc293316c8ae3",
      "tree": "b6d91266e9333a9cf74d6171bbee0acc0e18096b",
      "parents": [
        "29bf4a5e3fed3dde3eb629a0cb1762c1e9217458"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 07 09:11:39 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 13:55:26 2009 -0500"
      },
      "message": "tracing: Buffer the output of seq_file in case of filled buffer\n\nIf the seq_read fills the buffer it will call s_start again on the next\nitertation with the same position. This causes a problem with the\nfunction_graph tracer because it consumes the iteration in order to\ndetermine leaf functions.\n\nWhat happens is that the iterator stores the entry, and the function\ngraph plugin will look at the next entry. If that next entry is a return\nof the same function and task, then the function is a leaf and the\nfunction_graph plugin calls ring_buffer_read which moves the ring buffer\niterator forward (the trace iterator still points to the function start\nentry).\n\nThe copying of the trace_seq to the seq_file buffer will fail if the\nseq_file buffer is full. The seq_read will not show this entry.\nThe next read by userspace will cause seq_read to again call s_start\nwhich will reuse the trace iterator entry (the function start entry).\nBut the function return entry was already consumed. The function graph\nplugin will think that this entry is a nested function and not a leaf.\n\nTo solve this, the trace code now checks the return status of the\nseq_printf (trace_print_seq). If the writing to the seq_file buffer\nfails, we set a flag in the iterator (leftover) and we do not reset\nthe trace_seq buffer. On the next call to s_start, we check the leftover\nflag, and if it is set, we just reuse the trace_seq buffer and do not\ncall into the plugin print functions.\n\nBefore this patch:\n\n 2)               |      fput() {\n 2)               |        __fput() {\n 2)   0.550 us    |          inotify_inode_queue_event();\n 2)               |          __fsnotify_parent() {\n 2)   0.540 us    |          inotify_dentry_parent_queue_event();\n\nAfter the patch:\n\n 2)               |      fput() {\n 2)               |        __fput() {\n 2)   0.550 us    |          inotify_inode_queue_event();\n 2)   0.548 us    |          __fsnotify_parent();\n 2)   0.540 us    |          inotify_dentry_parent_queue_event();\n\n[\n  Updated the patch to fix a missing return 0 from the trace_print_seq()\n  stub when CONFIG_TRACING is disabled.\n\n  Reported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n]\n\nReported-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "29bf4a5e3fed3dde3eb629a0cb1762c1e9217458",
      "tree": "42a93ba9e1e7d0fb7b1f46382dba9a5245768629",
      "parents": [
        "c521efd1700a8c0f7ce26f011f5eaecca17fabfa"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Dec 09 12:37:43 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 09 12:47:35 2009 -0500"
      },
      "message": "tracing: Only call pipe_close if pipe_close is defined\n\nThis fixes a cut and paste error that had pipe_close get called\nif pipe_open was defined (not pipe_close).\n\nReported-by: Kosaki Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nLKML-Reference: \u003c20091209153204.F4CD.A69D9226@jp.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "822a6961112f0c9101d3359d8524604c3309ee6c",
      "tree": "ba66dda1220c6f3f9208b56cb50f716bbf08fa13",
      "parents": [
        "ec89a06fd4e12301f11ab039ee07d2353a18addc"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Dec 08 10:00:04 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 10:32:21 2009 +0100"
      },
      "message": "tracing/kprobes: Fix field creation\u0027s bad error handling\n\nWhen we define the common event fields in kprobe, we invert the error\nhandling and return immediately in case of success. Then we omit\nto define specific kprobes fields (ip and nargs), and specific\nkretprobes fields (func, ret_ip, nargs). And we only define them\nwhen we fail to create common fields.\n\nThe most visible consequence is that we can\u0027t create filter for\nk(ret)probes specific fields.\n\nThis patch re-invert the success/error handling to fix it.\n\nReported-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c1260263815-5167-1-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a7c312bed772c11138409c3a98531e85d690302e",
      "tree": "3471a0d13a790e563f3191c524a742876ff81b25",
      "parents": [
        "f984f03da35357b23d53e9cad29e909810857451"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Tue Dec 08 17:03:16 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 09 07:26:53 2009 +0100"
      },
      "message": "trace-kprobe: Support delete probe syntax\n\nSupport delete probe syntax. The syntax is \"-:[group/]event\".\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Frank Ch. Eigler \u003cfche@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nLKML-Reference: \u003c20091208220316.10142.39192.stgit@dhcp-100-2-132.bos.redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Frank Ch. Eigler \u003cfche@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "c521efd1700a8c0f7ce26f011f5eaecca17fabfa",
      "tree": "8dd9f8171222e856aafa5db1c1a150098327d409",
      "parents": [
        "6ec22f9b037fc0c2e00ddb7023fad279c365324d"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 07 09:06:24 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Dec 07 12:01:35 2009 -0500"
      },
      "message": "tracing: Add pipe_close interface\n\nAn ftrace plugin can add a pipe_open interface when the user opens\ntrace_pipe. But if the plugin allocates something within the pipe_open\nit can not free it because there exists no pipe_close. The hook to\nthe trace file open has a corresponding close. The closing of the\ntrace_pipe file should also have a corresponding close.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b326e9560a28fc3e950637ef51847ed8f05c1335",
      "tree": "0804c8c4f28d4ae152d5e9205ce5a958f0d26b79",
      "parents": [
        "2f0993e0fb663c49e4d1e02654f6203246be4817"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Dec 05 09:44:31 2009 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 06 08:27:18 2009 +0100"
      },
      "message": "hw-breakpoints: Use overflow handler instead of the event callback\n\nstruct perf_event::event callback was called when a breakpoint\ntriggers. But this is a rather opaque callback, pretty\ntied-only to the breakpoint API and not really integrated into perf\nas it triggers even when we don\u0027t overflow.\n\nWe prefer to use overflow_handler() as it fits into the perf events\nrules, being called only when we overflow.\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: \"K. Prasad\" \u003cprasad@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "c3fa27d1367fac63ac8533d6f20ea851d0d70a10",
      "tree": "e7731554085e22b6b63411b1ebb401079f3e0bbb",
      "parents": [
        "96fa2b508d2d3fe040cf4ef2fffb955f0a537ea1",
        "d103d01e4b19f185d3c85f77402b605534c32e89"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 15:30:21 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 15:30:21 2009 -0800"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (470 commits)\n  x86: Fix comments of register/stack access functions\n  perf tools: Replace %m with %a in sscanf\n  hw-breakpoints: Keep track of user disabled breakpoints\n  tracing/syscalls: Make syscall events print callbacks static\n  tracing: Add DEFINE_EVENT(), DEFINE_SINGLE_EVENT() support to docbook\n  perf: Don\u0027t free perf_mmap_data until work has been done\n  perf_event: Fix compile error\n  perf tools: Fix _GNU_SOURCE macro related strndup() build error\n  trace_syscalls: Remove unused syscall_name_to_nr()\n  trace_syscalls: Simplify syscall profile\n  trace_syscalls: Remove duplicate init_enter_##sname()\n  trace_syscalls: Add syscall_nr field to struct syscall_metadata\n  trace_syscalls: Remove enter_id exit_id\n  trace_syscalls: Set event_enter_##sname-\u003edata to its metadata\n  trace_syscalls: Remove unused event_syscall_enter and event_syscall_exit\n  perf_event: Initialize data.period in perf_swevent_hrtimer()\n  perf probe: Simplify event naming\n  perf probe: Add --list option for listing current probe events\n  perf probe: Add argv_split() from lib/argv_split.c\n  perf probe: Move probe event utility functions to probe-event.c\n  ...\n"
    },
    {
      "commit": "96fa2b508d2d3fe040cf4ef2fffb955f0a537ea1",
      "tree": "3cec6d72a450735fe6b8ed996c7399f57c05a5cb",
      "parents": [
        "7a797cdcca2b3c0031e580203f18d6c9483aaec5",
        "b8007ef7422270864eae523cb38d7522a53a94d3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 09:53:36 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 09:53:36 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (40 commits)\n  tracing: Separate raw syscall from syscall tracer\n  ring-buffer-benchmark: Add parameters to set produce/consumer priorities\n  tracing, function tracer: Clean up strstrip() usage\n  ring-buffer benchmark: Run producer/consumer threads at nice +19\n  tracing: Remove the stale include/trace/power.h\n  tracing: Only print objcopy version warning once from recordmcount\n  tracing: Prevent build warning: \u0027ftrace_graph_buf\u0027 defined but not used\n  ring-buffer: Move access to commit_page up into function used\n  tracing: do not disable interrupts for trace_clock_local\n  ring-buffer: Add multiple iterations between benchmark timestamps\n  kprobes: Sanitize struct kretprobe_instance allocations\n  tracing: Fix to use __always_unused attribute\n  compiler: Introduce __always_unused\n  tracing: Exit with error if a weak function is used in recordmcount.pl\n  tracing: Move conditional into update_funcs() in recordmcount.pl\n  tracing: Add regex for weak functions in recordmcount.pl\n  tracing: Move mcount section search to front of loop in recordmcount.pl\n  tracing: Fix objcopy revision check in recordmcount.pl\n  tracing: Check absolute path of input file in recordmcount.pl\n  tracing: Correct the check for number of arguments in recordmcount.pl\n  ...\n"
    },
    {
      "commit": "7be077f56370cd52c48c08272b0867132f87bc48",
      "tree": "9dfb0eca93d5047c2ab3bdc59800596b0a89f034",
      "parents": [
        "3bbe84e9d385205d638035ee9dcc4db1b486ea08"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 01 16:24:06 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 17:33:31 2009 +0100"
      },
      "message": "trace_syscalls: Remove unused syscall_name_to_nr()\n\nAfter duplications are removed, syscall_name_to_nr() is unused.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B14D2A6.6060803@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3bbe84e9d385205d638035ee9dcc4db1b486ea08",
      "tree": "e7261e9a3ca13f6e2fd34333e4ccab33b265c32e",
      "parents": [
        "a1301da0997bf73c44dbe584e9070a13adc89672"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 01 16:24:01 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 17:33:30 2009 +0100"
      },
      "message": "trace_syscalls: Simplify syscall profile\n\nuse only one prof_sysenter_enable() instead of\nprof_sysenter_enable_##sname()\n\nuse only one prof_sysenter_disable() instead of\nprof_sysenter_disable_##sname()\n\nuse only one prof_sysexit_enable() instead of\nprof_sysexit_enable_##sname()\n\nuse only one prof_sysexit_disable() instead of\nprof_sysexit_disable_##sname()\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B14D2A1.8060304@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a1301da0997bf73c44dbe584e9070a13adc89672",
      "tree": "64c7e580f553291bcaaf065fc0dbceee8daf9cd6",
      "parents": [
        "c252f65793874b56d50395ab604db465ce688665"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 01 16:23:55 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 17:33:30 2009 +0100"
      },
      "message": "trace_syscalls: Remove duplicate init_enter_##sname()\n\nuse only one init_syscall_trace instead of\nmany init_enter_##sname()/init_exit_##sname()\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B14D29B.6090708@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c252f65793874b56d50395ab604db465ce688665",
      "tree": "30bc32361d2b368679910270ec4e99e841fa099b",
      "parents": [
        "fcc19438dda38dacc8c144e2db3ebc6b9fd4f8b8"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 01 16:23:47 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 17:33:29 2009 +0100"
      },
      "message": "trace_syscalls: Add syscall_nr field to struct syscall_metadata\n\nAdd syscall_nr field to struct syscall_metadata,\nit helps us to get syscall number easier.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B14D293.6090800@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fcc19438dda38dacc8c144e2db3ebc6b9fd4f8b8",
      "tree": "0f82cd0ce19bc113e2ba631c14f2e8c04884d608",
      "parents": [
        "31c16b13349970b2684248c7d8608d2a96ae135d"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 01 16:23:36 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 17:33:29 2009 +0100"
      },
      "message": "trace_syscalls: Remove enter_id exit_id\n\nuse -\u003eenter_event-\u003eid instead of -\u003eenter_id\nuse -\u003eexit_event-\u003eid instead of -\u003eexit_id\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B14D288.7030001@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "31c16b13349970b2684248c7d8608d2a96ae135d",
      "tree": "0f0a2bee35f604090b30d6724e13bb2faec8a6a5",
      "parents": [
        "bf56a4ea9f1683c5b223fd3a5dbea23f1fa91c34"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 01 16:23:30 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 17:33:28 2009 +0100"
      },
      "message": "trace_syscalls: Set event_enter_##sname-\u003edata to its metadata\n\nSet event_enter_##sname-\u003edata to its metadata,\nit makes codes simpler.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B14D282.7050709@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bf56a4ea9f1683c5b223fd3a5dbea23f1fa91c34",
      "tree": "c6f54058fb427ab9c4f776c9414f85a60b6344b0",
      "parents": [
        "59d069eb5ae9b033ed1c124c92e1532c4a958991"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 01 16:23:20 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 17:33:28 2009 +0100"
      },
      "message": "trace_syscalls: Remove unused event_syscall_enter and event_syscall_exit\n\nfix event_enter_##sname-\u003eevent\nfix event_exit_##sname-\u003eevent\n\nremove unused event_syscall_enter and event_syscall_exit\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B14D278.4090209@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ba8665d7dd95eb6093ee06f8f624b6acb1e73206",
      "tree": "8f5f92a2bb5c115a6d69b9d552804cea7027a60f",
      "parents": [
        "5cbd08056142dcb2aea0dca7261afcb810a63c55"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Mon Nov 30 19:19:20 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 01 08:19:59 2009 +0100"
      },
      "message": "trace_kprobes: Fix a memory leak bug and check kstrdup() return value\n\nFix a memory leak case in create_trace_probe(). When an argument\nis too long (\u003e MAX_ARGSTR_LEN), it just jumps to error path. In\nthat case tp-\u003eargs[i].name is not released.\nThis also fixes a bug to check kstrdup()\u0027s return value.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Frank Ch. Eigler \u003cfche@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20091201001919.10235.56455.stgit@harusame\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "52a11f354970e7301e1d1a029b87535be45abec9",
      "tree": "266b82496fd457ebaba261b9f3188edcec6e5ae1",
      "parents": [
        "3d9b2e1ddf42dd3df38af7794fa5e39cce760f3b"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Nov 25 16:33:15 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 27 06:43:05 2009 +0100"
      },
      "message": "trace_kprobes: Don\u0027t output zero offset\n\n\"symbol_name+0\" is not so friendly.\nIt makes the output longer.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B0CEBCB.7080309@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3d9b2e1ddf42dd3df38af7794fa5e39cce760f3b",
      "tree": "23018fe2da17878e147185ee979b1dff8129d5a8",
      "parents": [
        "abab9d37d2a826fcf588c5f30152dbe05c40111c"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Nov 25 16:32:47 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 27 06:43:04 2009 +0100"
      },
      "message": "trace_kprobes: Always show group name\n\nSometimes the group name is not \"kprobes\",\nIt\u0027ll be better if we can read it from tracing/kprobe_events.\n\n # echo \u0027r:laijs/vfs_read vfs_read %ax\u0027 \u003e kprobe_events\n # cat kprobe_events\n r:laijs/vfs_read vfs_read %ax\u003d%ax\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B0CEBAF.6000104@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "abab9d37d2a826fcf588c5f30152dbe05c40111c",
      "tree": "cc4bbdafb5dbf1883d714c1a650c5cc03f83512b",
      "parents": [
        "0f1ef51d244809f417bdf45cdb00109fb6005672"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Nov 25 16:32:21 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 27 06:43:04 2009 +0100"
      },
      "message": "trace_kprobes: Fix memory leak\n\ntp-\u003enr_args is not set before we \"goto error\",\nit causes memory leak for free_trace_probe() use tp-\u003enr_args\nto free memory of args.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B0CEB95.2060107@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0f1ef51d244809f417bdf45cdb00109fb6005672",
      "tree": "cf5c5ef305b15973a1f70deb478522bde873f32a",
      "parents": [
        "dd1853c3f493f6d22d9e5390b192a07b73d2ac0a"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Thu Nov 26 15:49:33 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 27 06:24:19 2009 +0100"
      },
      "message": "trace_syscalls: Add syscall nr field\n\nField syscall number is missed in syscall_enter_define_fields()/\nsyscall_exit_define_fields().\n\nSyscall number is also needed for event filter or other users.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4B0E330D.1070206@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dd1853c3f493f6d22d9e5390b192a07b73d2ac0a",
      "tree": "af87226bcdc254ce2ab656530263e61f6552322b",
      "parents": [
        "5fa10b28e57f94a90535cfeafe89dcee9f47d540"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Nov 27 04:55:54 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 27 06:22:59 2009 +0100"
      },
      "message": "hw-breakpoints: Use struct perf_event_attr to define kernel breakpoints\n\nKernel breakpoints are created using functions in which we pass\nbreakpoint parameters as individual variables: address, length\nand type.\n\nAlthough it fits well for x86, this just does not scale across\narchitectures that may support this api later as these may have\nmore or different needs. Pass in a perf_event_attr structure\ninstead because it is meant to evolve as much as possible into\na generic hardware breakpoint parameter structure.\n\nReported-by: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1259294154-5197-2-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "605bfaee9078cd0b01d83402315389839ee4bb5c",
      "tree": "35c3af269b37347b689b3b212fc99d4ae9f719e5",
      "parents": [
        "c6567f642e20bcc79abed030f44be5b0d6da2ded"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Nov 26 05:35:42 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 09:29:21 2009 +0100"
      },
      "message": "hw-breakpoints: Simplify error handling in breakpoint creation requests\n\nThis simplifies the error handling when we create a breakpoint.\nWe don\u0027t need to check the NULL return value corner case anymore\nsince we have improved perf_event_create_kernel_counter() to\nalways return an error code in the failure case.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c1259210142-5714-3-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d99be40aff88722ab03ee295e4f6c13a4cca9a3d",
      "tree": "53b362f02793d2cf1ca78f1d60ad26c1c5a1450e",
      "parents": [
        "470dda7417f284b9cfc96560b2acd98df63798a2"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Nov 26 05:35:40 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 26 09:29:20 2009 +0100"
      },
      "message": "ksym_tracer: Fix breakpoint removal after modification\n\nThe error path of a breakpoint modification is broken in\nthe ksym tracer. A modified breakpoint hlist node is immediately\nreleased after its removal. Also we leak a breakpoint in this\ncase.\n\nFix the path.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c1259210142-5714-1-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7ac074340480018681a0d72b324d4487543bdc0e",
      "tree": "c61f98cd477568d162d5fe408383f257f187508c",
      "parents": [
        "457dc928f586f3f4b930206965e6db270034e97e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Nov 25 13:22:21 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Nov 25 14:14:15 2009 -0500"
      },
      "message": "ring-buffer-benchmark: Add parameters to set produce/consumer priorities\n\nRunning the ring-buffer-benchmark\u0027s threads at the lowest priority may\nwork well for keeping it in the background, but it is not appropriate\nfor the benchmarks.\n\nThis patch adds 4 parameters to the module:\n\n  consumer_fifo\n  consumer_nice\n  producer_fifo\n  producer_nice\n\nBy default the consumer and producer still run at nice +19.\n\nIf the *_fifo options are set, they will override the *_nice values.\n\n modprobe ring_buffer_benchmark consumer_nice\u003d0 producer_fifo\u003d10\n\nThe above will set the consumer thread to a nice value of 0, and\nthe producer thread to a RT SCHED_FIFO priority of 10.\n\nNote, this patch also fixes a bug where calling set_user_nice on the\nconsumer thread would oops the kernel when the parameter \"disable_reader\"\nis set.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "99df5a6a215f026e62287083de2b44b22edd3623",
      "tree": "e7c25a7c94a5507c51b66f2f1336294116f26c11",
      "parents": [
        "0d0bea5ea4a0e91feff22ac5e32e14ff3a682247"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Wed Nov 25 01:14:59 2009 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 25 09:06:10 2009 +0100"
      },
      "message": "trace/syscalls: Change ret param in struct syscall_trace_exit to long\n\nCommit ee949a86b3aef15845ea677aa60231008de62672 (\"tracing/syscalls:\nUse long for syscall ret format and field definitions\") changed the\nsyscall exit return type to long, but forgot to change it in the\nstruct.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1259133299-23594-3-git-send-email-tzanussi@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4ed7c92d68a5387ba5f7030dc76eab03558e27f5",
      "tree": "38d758819c41261275c2dbd6f64976f824c5fd27",
      "parents": [
        "f67218c3e93abaf0f480bb94b53d234853ffe4de"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Nov 23 11:37:29 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 23 11:49:57 2009 +0100"
      },
      "message": "perf_events: Undo some recursion damage\n\nMake perf_swevent_get_recursion_context return a context number\nand disable preemption.\n\nThis could be used to remove the IRQ disable from the trace bit\nand index the per-cpu buffer with.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c20091123103819.993226816@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "457dc928f586f3f4b930206965e6db270034e97e",
      "tree": "db1ff1d43058451cc42f6499f495e68d1a37e335",
      "parents": [
        "98e4833ba3c314c99dc364012fba6ac894230ad0"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 23 11:03:28 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 23 11:04:07 2009 +0100"
      },
      "message": "tracing, function tracer: Clean up strstrip() usage\n\nClean up strstrip() usage - which also addresses this build warning:\n\n  kernel/trace/ftrace.c: In function \u0027ftrace_pid_write\u0027:\n  kernel/trace/ftrace.c:3004: warning: ignoring return value of \u0027strstrip\u0027, declared with attribute warn_unused_result\n\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "98e4833ba3c314c99dc364012fba6ac894230ad0",
      "tree": "0730af86569f560f7f4421a2d0f4bf9441df19c6",
      "parents": [
        "192dcf1d1775736627280a5dd4cb0f605b21857a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 23 08:03:09 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 23 08:03:09 2009 +0100"
      },
      "message": "ring-buffer benchmark: Run producer/consumer threads at nice +19\n\nThe ring-buffer benchmark threads run on nice 0 by default, using\nup a lot of CPU time and slowing down the system:\n\n   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND\n  1024 root      20   0     0    0    0 D 95.3  0.0   4:01.67 rb_producer\n  1023 root      20   0     0    0    0 R 93.5  0.0   2:54.33 rb_consumer\n 21569 mingo     40   0 14852 1048  772 R  3.6  0.1   0:00.05 top\n     1 root      40   0  4080  928  668 S  0.0  0.0   0:23.98 init\n\nRenice them to +19 to make them less intrusive.\n\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "28889bf9e2db29747d58cd47a92d727f927c3aee",
      "tree": "7c5e0edd6e669ce0e3ab8a01fb6b381001bf1552",
      "parents": [
        "ce71b9df8893ec954e56c5979df6da274f20f65e"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Nov 22 05:21:33 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 22 09:03:42 2009 +0100"
      },
      "message": "tracing: Forget about the NMI buffer for syscall events\n\nWe are never in an NMI context when we commit a syscall trace to\nperf. So just forget about the nmi buffer there.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nLKML-Reference: \u003c1258863695-10464-2-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ce71b9df8893ec954e56c5979df6da274f20f65e",
      "tree": "76e8a5e33393c2f4fca4083628fc142dcbb55250",
      "parents": [
        "e25613683bd5c46d3e8c8ae6416dccc9f357dcdc"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Nov 22 05:26:55 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 22 09:03:42 2009 +0100"
      },
      "message": "tracing: Use the perf recursion protection from trace event\n\nWhen we commit a trace to perf, we first check if we are\nrecursing in the same buffer so that we don\u0027t mess-up the buffer\nwith a recursing trace. But later on, we do the same check from\nperf to avoid commit recursion. The recursion check is desired\nearly before we touch the buffer but we want to do this check\nonly once.\n\nThen export the recursion protection from perf and use it from\nthe trace events before submitting a trace.\n\nv2: Put appropriate Reported-by tag\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nLKML-Reference: \u003c1258864015-10579-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "96200591a34f8ecb98481c626125df43a2463b55",
      "tree": "314c376b01f254d04f9aaf449b1f9147ad177fa6",
      "parents": [
        "7031281e02bf951a2259849217193fb9d75a9762",
        "68efa37df779b3e04280598e8b5b3a1919b65fee"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Nov 21 14:07:23 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Nov 21 14:07:23 2009 +0100"
      },
      "message": "Merge branch \u0027tracing/hw-breakpoints\u0027 into perf/core\n\nConflicts:\n\tarch/x86/kernel/kprobes.c\n\tkernel/trace/Makefile\n\nMerge reason: hw-breakpoints perf integration is looking\n              good in testing and in reviews, plus conflicts\n              are mounting up - so merge \u0026 resolve.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f6060f46819f313d34a8c8151390cda509c23389",
      "tree": "96ec1c80695498d73172b3c2ef7df585b9d28e4f",
      "parents": [
        "5a50e33cc916f6a81cb96f0f24f6a88c9ab78b79"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Thu Nov 05 11:16:17 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Nov 17 11:05:49 2009 -0500"
      },
      "message": "tracing: Prevent build warning: \u0027ftrace_graph_buf\u0027 defined but not used\n\nPrevent build warning when CONFIG_FUNCTION_GRAPH_TRACER is not set.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4AF24381.5060307@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c13d2f7c3231e873f30db92b96c8caa48f100f33",
      "tree": "b849f99094e847f31f89e2e1a8944c9ff7f0ad30",
      "parents": [
        "811cb50baf63461ce0bdb234927046131fc7fa8b"
      ],
      "author": {
        "name": "Carsten Emde",
        "email": "Carsten.Emde@osadl.org",
        "time": "Mon Nov 16 20:56:13 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Nov 17 09:19:06 2009 -0500"
      },
      "message": "tracing: Fix trace_marker output\n\nWhen a string was written to \u003cdebugfs\u003e/tracing/trace_marker, some\nstrange characters appeared in the trace output instead of the\nstring, since a vprint function erroneously called a vararg print\nfunction with a va_list argument. This patch fixes the problem and\nsimplifies the related code.\n\nSigned-off-by: Carsten Emde \u003cC.Emde@osadl.org\u003e\nLKML-Reference: \u003c4B01AE5D.1010801@osadl.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "5a50e33cc916f6a81cb96f0f24f6a88c9ab78b79",
      "tree": "cc00c32414107ade5492be200fcb1bc882968cae",
      "parents": [
        "8b2a5dac7859dd1954095fce8b6445c3ceb36ef6"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Nov 17 08:43:01 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Nov 17 08:43:01 2009 -0500"
      },
      "message": "ring-buffer: Move access to commit_page up into function used\n\nWith the change of the way we process commits. Where a commit only happens\nat the outer most level, and that we don\u0027t need to worry about\na commit ending after the rb_start_commit() has been called, the code\nuse to grab the commit page before the tail page to prevent a possible\nrace. But this race no longer exists with the rb_start_commit()\nrb_end_commit() interface.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a7b63425a41cd6a8d50f76fef0660c5110f97e91",
      "tree": "be17ee121f1c8814d8d39c9f3e0205d9397fab54",
      "parents": [
        "35039eb6b199749943547c8572be6604edf00229",
        "3726cc75e581c157202da93bb2333cce25c15c98"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 17 10:16:43 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 17 10:17:47 2009 +0100"
      },
      "message": "Merge branch \u0027perf/core\u0027 into perf/probes\n\nResolved merge conflict in tools/perf/Makefile\n\nMerge reason: we want to queue up a dependent patch.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "39dc78b6510323848e3356452f7dab9499736978",
      "tree": "cf8a8fede74e41b203fd00e3ccd21ead2e851442",
      "parents": [
        "4c49b12853fbb5eff4849b7b6a1e895776f027a1",
        "156171c71a0dc4bce12b4408bb1591f8fe32dc1a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 15 09:50:38 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 15 09:50:41 2009 +0100"
      },
      "message": "Merge commit \u0027v2.6.32-rc7\u0027 into perf/core\n\nMerge reason: pick up perf fixlets\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8b2a5dac7859dd1954095fce8b6445c3ceb36ef6",
      "tree": "a378c658e7fc59a10854a8b10074a921f5edd973",
      "parents": [
        "a6f0eb6adc42e5eed3f35af99c61c0e411b16f8e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Nov 11 19:36:03 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Nov 11 23:38:33 2009 -0500"
      },
      "message": "tracing: do not disable interrupts for trace_clock_local\n\nDisabling interrupts in trace_clock_local takes quite a performance\nhit to the recording of traces. Using perf top we see:\n\n------------------------------------------------------------------------------\n   PerfTop:     244 irqs/sec  kernel:100.0% [1000Hz cpu-clock-msecs],  (all, 4 CPUs)\n------------------------------------------------------------------------------\n\n             samples    pcnt   kernel function\n             _______   _____   _______________\n\n             2842.00 - 40.4% : trace_clock_local\n             1043.00 - 14.8% : rb_reserve_next_event\n              784.00 - 11.1% : ring_buffer_lock_reserve\n              600.00 -  8.5% : __rb_reserve_next\n              579.00 -  8.2% : rb_end_commit\n              440.00 -  6.3% : ring_buffer_unlock_commit\n              290.00 -  4.1% : ring_buffer_producer_thread \t[ring_buffer_benchmark]\n              155.00 -  2.2% : debug_smp_processor_id\n              117.00 -  1.7% : trace_recursive_unlock\n              103.00 -  1.5% : ring_buffer_event_data\n               28.00 -  0.4% : do_gettimeofday\n               22.00 -  0.3% : _spin_unlock_irq\n               14.00 -  0.2% : native_read_tsc\n               11.00 -  0.2% : getnstimeofday\n\nWhere trace_clock_local is 40% of the tracing, and the time for recording\na trace according to ring_buffer_benchmark is 210ns. After converting\nthe interrupts to preemption disabling we have from perf top:\n\n------------------------------------------------------------------------------\n   PerfTop:    1084 irqs/sec  kernel:99.9% [1000Hz cpu-clock-msecs],  (all, 4 CPUs)\n------------------------------------------------------------------------------\n\n             samples    pcnt   kernel function\n             _______   _____   _______________\n\n             1277.00 - 16.8% : native_read_tsc\n             1148.00 - 15.1% : rb_reserve_next_event\n              896.00 - 11.8% : ring_buffer_lock_reserve\n              688.00 -  9.1% : __rb_reserve_next\n              664.00 -  8.8% : rb_end_commit\n              563.00 -  7.4% : ring_buffer_unlock_commit\n              508.00 -  6.7% : _spin_unlock_irq\n              365.00 -  4.8% : debug_smp_processor_id\n              321.00 -  4.2% : trace_clock_local\n              303.00 -  4.0% : ring_buffer_producer_thread \t[ring_buffer_benchmark]\n              273.00 -  3.6% : native_sched_clock\n              122.00 -  1.6% : trace_recursive_unlock\n              113.00 -  1.5% : sched_clock\n              101.00 -  1.3% : ring_buffer_event_data\n               53.00 -  0.7% : tick_nohz_stop_sched_tick\n\nWhere trace_clock_local drops from 40% to only taking 4% of the total time.\nThe trace time also goes from 210ns down to 179ns (31ns).\n\nI talked with Peter Zijlstra about the impact that sched_clock may have\nwithout having interrupts disabled, and he told me that if a timer interrupt\ncomes in, sched_clock may report a wrong time.\n\nBalancing a seldom incorrect timestamp with a 15% performance boost, I\u0027ll\ntake the performance boost.\n\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a6f0eb6adc42e5eed3f35af99c61c0e411b16f8e",
      "tree": "85392e8c2878290b7f9ffdd644b5a02d5bd4bf78",
      "parents": [
        "4dae560f97fa438f373b53e14b30149c9e44a600"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Nov 11 17:14:07 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Nov 11 22:22:15 2009 -0500"
      },
      "message": "ring-buffer: Add multiple iterations between benchmark timestamps\n\nThe ring_buffer_benchmark does a gettimeofday after every write to the\nring buffer in its measurements. This adds the overhead of the call\nto gettimeofday to the measurements and does not give an accurate picture\nof the length of time it takes to record a trace.\n\nThis was first noticed with perf top:\n\n------------------------------------------------------------------------------\n   PerfTop:     679 irqs/sec  kernel:99.9% [1000Hz cpu-clock-msecs],  (all, 4 CPUs)\n------------------------------------------------------------------------------\n\n             samples    pcnt   kernel function\n             _______   _____   _______________\n\n             1673.00 - 27.8% : trace_clock_local\n              806.00 - 13.4% : do_gettimeofday\n              590.00 -  9.8% : rb_reserve_next_event\n              554.00 -  9.2% : native_read_tsc\n              431.00 -  7.2% : ring_buffer_lock_reserve\n              365.00 -  6.1% : __rb_reserve_next\n              355.00 -  5.9% : rb_end_commit\n              322.00 -  5.4% : getnstimeofday\n              268.00 -  4.5% : ring_buffer_unlock_commit\n              262.00 -  4.4% : ring_buffer_producer_thread \t[ring_buffer_benchmark]\n              113.00 -  1.9% : read_tsc\n               91.00 -  1.5% : debug_smp_processor_id\n               69.00 -  1.1% : trace_recursive_unlock\n               66.00 -  1.1% : ring_buffer_event_data\n               25.00 -  0.4% : _spin_unlock_irq\n\nAnd the length of each write to the ring buffer measured at 310ns.\n\nThis patch adds a new module parameter called \"write_interval\" which is\ndefaulted to 50. This is the number of writes performed between\ntimestamps. After this patch perf top shows:\n\n------------------------------------------------------------------------------\n   PerfTop:     244 irqs/sec  kernel:100.0% [1000Hz cpu-clock-msecs],  (all, 4 CPUs)\n------------------------------------------------------------------------------\n\n             samples    pcnt   kernel function\n             _______   _____   _______________\n\n             2842.00 - 40.4% : trace_clock_local\n             1043.00 - 14.8% : rb_reserve_next_event\n              784.00 - 11.1% : ring_buffer_lock_reserve\n              600.00 -  8.5% : __rb_reserve_next\n              579.00 -  8.2% : rb_end_commit\n              440.00 -  6.3% : ring_buffer_unlock_commit\n              290.00 -  4.1% : ring_buffer_producer_thread \t[ring_buffer_benchmark]\n              155.00 -  2.2% : debug_smp_processor_id\n              117.00 -  1.7% : trace_recursive_unlock\n              103.00 -  1.5% : ring_buffer_event_data\n               28.00 -  0.4% : do_gettimeofday\n               22.00 -  0.3% : _spin_unlock_irq\n               14.00 -  0.2% : native_read_tsc\n               11.00 -  0.2% : getnstimeofday\n\ndo_gettimeofday dropped from 13% usage to a mere 0.4%! (using the default\n50 interval)  The measurement for each timestamp went from 310ns to 210ns.\nThat\u0027s 100ns (1/3rd) overhead that the gettimeofday call was introducing.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a646365cc330b5aaf4452c91f61b1e0d1acf68d0",
      "tree": "a1fda53758eb90e93d4a03efd21b2a35f3b283e0",
      "parents": [
        "ed146b25942b428f8e8056587b7638ce76573c2f"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Wed Nov 11 22:26:35 2009 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Nov 11 21:26:55 2009 -0500"
      },
      "message": "tracing: Fix return value of tracing_stats_read()\n\nThe function tracing_stats_read() mistakenly returns ENOMEM instead\nof the negative value -ENOMEM.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nLKML-Reference: \u003c4AFB2C0B.50605@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "676c0dbe6e514fdd8e434a9e623c781aa9b40b15",
      "tree": "1bfd6517d6dcfb952c7e4b083950506971e923a4",
      "parents": [
        "30ff21e31fe5c8b7b1b7d30cc41e32bc4ee9f175"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Nov 09 17:37:34 2009 +0900"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Nov 10 11:10:08 2009 +0100"
      },
      "message": "ksym_tracer: Support read accesses independent of read/write.\n\nAll of the infrastructure already exists to support read accesses\nfor platforms that support a read access independently of read/write\n(such as in the case of the SuperH UBC). This just trivially hooks\nup the read case by itself.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jan Kiszka \u003cjan.kiszka@web.de\u003e\nCc: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nLKML-Reference: \u003c20091109083733.GA25848@linux-sh.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "30ff21e31fe5c8b7b1b7d30cc41e32bc4ee9f175",
      "tree": "c3006eaa8f51ca2401c0f5f3600e17cfe6a55148",
      "parents": [
        "ba1c813a6b9a0ef14d7112daf51270eff326f037"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Sep 10 09:35:20 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Nov 08 16:21:01 2009 +0100"
      },
      "message": "ksym_tracer: Remove KSYM_SELFTEST_ENTRY\n\nThe macro used to be used in both trace_selftest.c and\ntrace_ksym.c, but no longer, so remove it from header file.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "24f1e32c60c45c89a997c73395b69c8af6f0a84e",
      "tree": "4f30f16e18cb4abbcf96b3b331e6a3f01bfa26e6",
      "parents": [
        "2da3e160cb3d226d87b907fab26850d838ed8d7c"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Sep 09 19:22:48 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Nov 08 15:34:42 2009 +0100"
      },
      "message": "hw-breakpoints: Rewrite the hw-breakpoints layer on top of perf events\n\nThis patch rebase the implementation of the breakpoints API on top of\nperf events instances.\n\nEach breakpoints are now perf events that handle the\nregister scheduling, thread/cpu attachment, etc..\n\nThe new layering is now made as follows:\n\n       ptrace       kgdb      ftrace   perf syscall\n          \\          |          /         /\n           \\         |         /         /\n                                        /\n            Core breakpoint API        /\n                                      /\n                     |               /\n                     |              /\n\n              Breakpoints perf events\n\n                     |\n                     |\n\n               Breakpoints PMU ---- Debug Register constraints handling\n                                    (Part of core breakpoint API)\n                     |\n                     |\n\n             Hardware debug registers\n\nReasons of this rewrite:\n\n- Use the centralized/optimized pmu registers scheduling,\n  implying an easier arch integration\n- More powerful register handling: perf attributes (pinned/flexible\n  events, exclusive/non-exclusive, tunable period, etc...)\n\nImpact:\n\n- New perf ABI: the hardware breakpoints counters\n- Ptrace breakpoints setting remains tricky and still needs some per\n  thread breakpoints references.\n\nTodo (in the order):\n\n- Support breakpoints perf counter events for perf tools (ie: implement\n  perf_bpcounter_event())\n- Support from perf tools\n\nChanges in v2:\n\n- Follow the perf \"event \" rename\n- The ptrace regression have been fixed (ptrace breakpoint perf events\n  weren\u0027t released when a task ended)\n- Drop the struct hw_breakpoint and store generic fields in\n  perf_event_attr.\n- Separate core and arch specific headers, drop\n  asm-generic/hw_breakpoint.h and create linux/hw_breakpoint.h\n- Use new generic len/type for breakpoint\n- Handle off case: when breakpoints api is not supported by an arch\n\nChanges in v3:\n\n- Fix broken CONFIG_KVM, we need to propagate the breakpoint api\n  changes to kvm when we exit the guest and restore the bp registers\n  to the host.\n\nChanges in v4:\n\n- Drop the hw_breakpoint_restore() stub as it is only used by KVM\n- EXPORT_SYMBOL_GPL hw_breakpoint_restore() as KVM can be built as a\n  module\n- Restore the breakpoints unconditionally on kvm guest exit:\n  TIF_DEBUG_THREAD doesn\u0027t anymore cover every cases of running\n  breakpoints and vcpu-\u003earch.switch_db_regs might not always be\n  set when the guest used debug registers.\n  (Waiting for a reliable optimization)\n\nChanges in v5:\n\n- Split-up the asm-generic/hw-breakpoint.h moving to\n  linux/hw_breakpoint.h into a separate patch\n- Optimize the breakpoints restoring while switching from kvm guest\n  to host. We only want to restore the state if we have active\n  breakpoints to the host, otherwise we don\u0027t care about messed-up\n  address registers.\n- Add asm/hw_breakpoint.h to Kbuild\n- Fix bad breakpoint type in trace_selftest.c\n\nChanges in v6:\n\n- Fix wrong header inclusion in trace.h (triggered a build\n  error with CONFIG_FTRACE_SELFTEST\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jan Kiszka \u003cjan.kiszka@web.de\u003e\nCc: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    }
  ],
  "next": "444a2a3bcd6d5bed5c823136f68fcc93c0fe283f"
}
