)]}'
{
  "log": [
    {
      "commit": "454c407ec17a0c63e4023ac0877d687945a7df4a",
      "tree": "1271299a59a89419c0dd4dcbf29b4492b63555ca",
      "parents": [
        "789688faef5b3ba78065beaf2f3d6f1c839f74a3"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Sat May 01 01:41:20 2010 -0500"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun May 02 13:36:56 2010 -0300"
      },
      "message": "perf: add perf-inject builtin\n\nCurrently, perf \u0027live mode\u0027 writes build-ids at the end of the\nsession, which isn\u0027t actually useful for processing live mode events.\n\nWhat would be better would be to have the build-ids sent before any of\nthe samples that reference them, which can be done by processing the\nevent stream and retrieving the build-ids on the first hit.  Doing\nthat in perf-record itself, however, is off-limits.\n\nThis patch introduces perf-inject, which does the same job while\nleaving perf-record untouched.  Normal mode perf still records the\nbuild-ids at the end of the session as it should, but for live mode,\nperf-inject can be injected in between the record and report steps\ne.g.:\n\nperf record -o - ./hackbench 10 | perf inject -v -b | perf report -v -i -\n\nperf-inject reads a perf-record event stream and repipes it to stdout.\nAt any point the processing code can inject other events into the\nevent stream - in this case build-ids (-b option) are read and\ninjected as needed into the event stream.\n\nBuild-ids are just the first user of perf-inject - potentially\nanything that needs userspace processing to augment the trace stream\nwith additional information could make use of this facility.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1272696080-16435-3-git-send-email-tzanussi@gmail.com\u003e\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "1c6a800cde3b818fd8320b5d402f2d77d2948c00",
      "tree": "2feb2a077e0dbc8c0cb24a70e92ca1d1daaef817",
      "parents": [
        "5c0541d53ef3897494768decb09eb8f1087953a5"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Apr 29 18:58:32 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Apr 29 18:59:23 2010 -0300"
      },
      "message": "perf test: Initial regression testing command\n\nFirst an example with the first internal test:\n\n[acme@doppio linux-2.6-tip]$ perf test\n 1: vmlinux symtab matches kallsyms: Ok\n\nSo it run just one test, that is \"vmlinux symtab matches kallsyms\", and it was\nsuccessful.\n\nIf we run it in verbose mode, we\u0027ll see details about errors and extra warnings\nfor non-fatal problems:\n\n[acme@doppio linux-2.6-tip]$ perf test -v\n 1: vmlinux symtab matches kallsyms:\n--- start ---\nLooking at the vmlinux_path (5 entries long)\nNo build_id in vmlinux, ignoring it\nNo build_id in /boot/vmlinux, ignoring it\nNo build_id in /boot/vmlinux-2.6.34-rc4-tip+, ignoring it\nUsing /lib/modules/2.6.34-rc4-tip+/build/vmlinux for symbols\nMaps only in vmlinux:\n ffffffff81cb81b1-ffffffff81e1149b 0 [kernel].init.text\n ffffffff81e1149c-ffffffff9fffffff 0 [kernel].exit.text\n ffffffffff600000-ffffffffff6000ff 0 [kernel].vsyscall_0\n ffffffffff600100-ffffffffff6003ff 0 [kernel].vsyscall_fn\n ffffffffff600400-ffffffffff6007ff 0 [kernel].vsyscall_1\n ffffffffff600800-ffffffffffffffff 0 [kernel].vsyscall_2\nMaps in vmlinux with a different name in kallsyms:\n ffffffffff600000-ffffffffff6000ff 0 [kernel].vsyscall_0 in kallsyms as [kernel].0\n ffffffffff600100-ffffffffff6003ff 0 [kernel].vsyscall_fn in kallsyms as:\n*ffffffffff600100-ffffffffff60012f 0 [kernel].2\n ffffffffff600400-ffffffffff6007ff 0 [kernel].vsyscall_1 in kallsyms as [kernel].6\n ffffffffff600800-ffffffffffffffff 0 [kernel].vsyscall_2 in kallsyms as [kernel].8\nMaps only in kallsyms:\n ffffffffff600130-ffffffffff6003ff 0 [kernel].4\n---- end ----\nvmlinux symtab matches kallsyms: Ok\n[acme@doppio linux-2.6-tip]$\n\nIn the above case we only know the name of the non contiguous kernel ranges in\nthe address space when reading the symbol information from the ELF symtab in\nvmlinux.\n\nThe /proc/kallsyms file lack this, we only notice they are separate because\nthere are modules after the kernel and after that more kernel functions, so we\nneed to have a module rbtree backed by the module .ko path to get symtabs in\nthe vmlinux case.\n\nThe tool uses it to match by address to emit appropriate warning, but don\u0027t\nconsiders this fatal.\n\nThe .init.text and .exit.text ines, of course, aren\u0027t in kallsyms, so I left\nthese cases just as extra info in verbose mode.\n\nThe end of the sections also aren\u0027t in kallsyms, so we the symbols layer does\nanother pass and sets the end addresses as the next map start minus one, which\nsometimes pads, causing harmless mismatches.\n\nBut at least the symbols match, tested it by copying /proc/kallsyms to\n/tmp/kallsyms and doing changes to see if they were detected.\n\nThis first test also should serve as a first stab at documenting the\nsymbol library by providing a self contained example that exercises it\ntogether with comments about what is being done.\n\nMore tests to check if actions done on a monitored app, like doing mmaps, etc,\nmakes the kernel generate the expected events should be added next.\n\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "a1645ce12adb6c9cc9e19d7695466204e3f017fe",
      "tree": "5d31aaaf534997e6e9cebc07f38eca35f76986cf",
      "parents": [
        "ff9d07a0e7ce756a183e7c2e483aec452ee6b574"
      ],
      "author": {
        "name": "Zhang, Yanmin",
        "email": "yanmin_zhang@linux.intel.com",
        "time": "Mon Apr 19 13:32:50 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon Apr 19 12:37:24 2010 +0300"
      },
      "message": "perf: \u0027perf kvm\u0027 tool for monitoring guest performance from host\n\nHere is the patch of userspace perf tool.\n\nSigned-off-by: Zhang Yanmin \u003cyanmin_zhang@linux.intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "e206d556c5793ac5e28c0aaba2e07432e5f9a098",
      "tree": "7042affb6737531f757c0753aa3d32b3494c396b",
      "parents": [
        "2aefa4f733f2c5ce51dd2316ffecb258463fde71"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Apr 03 10:19:26 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Apr 03 10:19:26 2010 -0300"
      },
      "message": "perf tools: Move the prototypes in util/string.h to util.h\n\nSo that we avoid conflict with libc\u0027s string.h header.\n\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSuggested-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "f3a1f0ea9432ec395cd112f42201e8e523c07bc5",
      "tree": "dcf78714e7531f35c008de90de55e11c512310ef",
      "parents": [
        "301fde27c7fcd0380b02b175d547e894ff65d78a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Mar 22 13:10:25 2010 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 22 18:47:34 2010 +0100"
      },
      "message": "perf newt: Properly restore the screen when error exiting\n\nShow an OK message box with the last message sent via pr_err,\netc.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1269274229-20442-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d2f1e15b661e71fd52111f51c99a6ce41384e9ef",
      "tree": "8731e7e772e6f825ebbc6eef7681bc46302149bd",
      "parents": [
        "40b7e05e17eef31ff30fe08dfc2424ef653a792c",
        "220bf991b0366cc50a94feede3d7341fa5710ee4"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 22 18:46:57 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 22 18:47:01 2010 +0100"
      },
      "message": "Merge commit \u0027v2.6.34-rc2\u0027 into perf/core\n\nMerge reason: Pick up latest perf fixes from upstream.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "567e54790e5c07152a93b6de4d0210af8b77da87",
      "tree": "075fdcbd2d2a868feda3911f6782f117c2dea7a2",
      "parents": [
        "0308635917273030db6121d67c41ef2279b30340"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Mar 12 21:05:10 2010 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 13 08:23:37 2010 +0100"
      },
      "message": "perf tools: Fix non-newt build\n\nThe use_browser needs to be in a file that is always built and\nalso we need a browser__show_help stub in that case.\n\nReported-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1268438710-32697-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f9224c5c944b60cf709db4adf1f5195264b8d194",
      "tree": "6c40539b5111a6e9a021e0fe6e22e95997217c3c",
      "parents": [
        "dd2ee78dd8e4c6d6f1a333fd60c3dd27d1b07042"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Mar 11 20:12:44 2010 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 12 10:28:46 2010 +0100"
      },
      "message": "perf report: Implement initial UI using newt\n\nNewt has widespread availability and provides a rather simple\nAPI as can be seen by the size of this patch.\n\nThe work needed to support it will benefit other frontends too.\n\nIn this initial patch it just checks if the output is a tty, if\nnot it falls back to the previous behaviour, also if\nnewt-devel/libnewt-dev is not installed the previous behaviour\nis maintaned.\n\nPressing enter on a symbol will annotate it, ESC in the\nannotation window will return to the report symbol list.\n\nMore work will be done to remove the special casing in\ncolor_fprintf, stop using fmemopen/FILE in the printing of\nhist_entries, etc.\n\nAlso the annotation doesn\u0027t need to be done via spawning \"perf\nannotate\" and then browsing its output, we can do better by\ncalling directly the builtin-annotate.c functions, that would\nthen be moved to tools/perf/util/annotate.c and shared with perf\ntop, etc\n\nBut lets go by baby steps, this patch already improves perf\nusability by allowing to quickly do annotations on symbols from\nthe report screen and provides a first experimentation with\nlibnewt/TUI integration of tools.\n\nTested on RHEL5 and Fedora12 X86_64 and on Debian PARISC64 to\nbrowse a perf.data file collected on a Fedora12 x86_64 box.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1268349164-5822-5-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "318ae2edc3b29216abd8a2510f3f80b764f06858",
      "tree": "ce595adde342f57f379d277b25e4dd206988a052",
      "parents": [
        "25cf84cf377c0aae5dbcf937ea89bc7893db5176",
        "3e58974027b04e84f68b964ef368a6cd758e2f84"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 08 16:55:37 2010 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 08 16:55:37 2010 +0100"
      },
      "message": "Merge branch \u0027for-next\u0027 into for-linus\n\nConflicts:\n\tDocumentation/filesystems/proc.txt\n\tarch/arm/mach-u300/include/mach/debug-macro.S\n\tdrivers/net/qlge/qlge_ethtool.c\n\tdrivers/net/qlge/qlge_main.c\n\tdrivers/net/typhoon.c\n"
    },
    {
      "commit": "659431fcafd820cc426afedadcc4548933224985",
      "tree": "863370c51b25f6b16c2a919a0dcd724dfdb3c077",
      "parents": [
        "3333e9ee9f8b82307f99fb8466724649da573025"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Mon Jan 18 16:02:48 2010 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Feb 05 12:22:39 2010 +0100"
      },
      "message": "fix typos \"precidence\" -\u003e \"precedence\" in comments\n\nThis patch was generated by\n\n\tgit grep -E -i -l \u0027precidence\u0027 | xargs -r perl -p -i -e \u0027s/precidence/precedence/\u0027\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "9b5e350c7a46a471d5b452836dbafe9aeaeca435",
      "tree": "e9c434ba978ad35712941a2531e3741a03361215",
      "parents": [
        "c965be10ca3cb0bdd04016c852764afaf8e647c8"
      ],
      "author": {
        "name": "Hitoshi Mitake",
        "email": "mitake@dcl.info.waseda.ac.jp",
        "time": "Sat Jan 30 20:43:33 2010 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 31 09:08:26 2010 +0100"
      },
      "message": "perf lock: Introduce new tool \"perf lock\", for analyzing lock statistics\n\nAdding new subcommand \"perf lock\" to perf.\n\nI have a lot of remaining ToDos, but for now perf lock can\nalready provide minimal functionality for analyzing lock\nstatistics.\n\nSigned-off-by: Hitoshi Mitake \u003cmitake@dcl.info.waseda.ac.jp\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1264851813-8413-12-git-send-email-mitake@dcl.info.waseda.ac.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4c574159d03f4d8a136a7adff2d0b1d82cadcb18",
      "tree": "e796859b5ccd38156ab7cc046ef04fbd9c1b312b",
      "parents": [
        "ae7f6711d6231c9ba54feb5ba9856c3775e482f8"
      ],
      "author": {
        "name": "Thiago Farina",
        "email": "tfransosi@gmail.com",
        "time": "Wed Jan 27 21:05:55 2010 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 29 10:36:35 2010 +0100"
      },
      "message": "tools/perf/perf.c: Clean up trivial style issues\n\nChecked with:\n./../scripts/checkpatch.pl --terse --file perf.c\n\n perf.c: 51: ERROR: open brace \u0027{\u0027 following function declarations go on the next line\n perf.c: 73: ERROR: \"foo*** bar\" should be \"foo ***bar\"\n perf.c:112: ERROR: space prohibited before that close parenthesis \u0027)\u0027\n perf.c:127: ERROR: space prohibited before that close parenthesis \u0027)\u0027\n perf.c:171: ERROR: \"foo** bar\" should be \"foo **bar\"\n perf.c:213: ERROR: \"(foo*)\" should be \"(foo *)\"\n perf.c:216: ERROR: \"(foo*)\" should be \"(foo *)\"\n perf.c:217: ERROR: space required before that \u0027*\u0027 (ctx:OxV)\n perf.c:452: ERROR: do not initialise statics to 0 or NULL\n perf.c:453: ERROR: do not initialise statics to 0 or NULL\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nLKML-Reference: \u003c1264633557-17597-7-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ef12a141306c90336a3a10d40213ecd98624d274",
      "tree": "6c6d06c1c7bb5b769cc46c8da05f561aa2443b91",
      "parents": [
        "dc8d6ab2b61a2d92b5d7438565ccd20b29724cb2"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Jan 20 15:28:45 2010 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 21 08:31:29 2010 +0100"
      },
      "message": "perf buildid-cache: Add new command to manage build-id cache\n\nFor now it just has operations to examine a given file, find its\nbuild-id and add or remove it to/from the cache.\n\nUseful, for instance, when adding binaries sent together with a\nperf.data file, so that we can add them to the cache and have\nthe tools find it when resolving symbols.\n\nIt\u0027ll also manage the size of the cache like \u0027ccache\u0027 does.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1264008525-29025-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "29c52aa2300173dd45df04dae1f5acc81a2c93b1",
      "tree": "c27098eaff73c07d06420d43ce81683ed1bca612",
      "parents": [
        "07b139c8c81b97bbe55c68daf0cbeca8b1c609ca"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Mon Dec 28 16:47:12 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 10:36:36 2009 +0100"
      },
      "message": "perf tools: Mount debugfs automatically\n\nMount debugfs filesystem under \u0027/sys/kernel/debug\u0027, if it\u0027s not\nmounted.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Clark Williams \u003cwilliams@redhat.com\u003e\nCc: John Kacur \u003cjkacur@redhat.com\u003e\nLKML-Reference: \u003c4B387090.7080407@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "86a9eee047ba09a714c3b8e27c9df2bbf715393a",
      "tree": "09c096e92b583f42480ac1dbe7dfa45eae1a7f31",
      "parents": [
        "b38d34645cc52136b6c99623fef7ded26742e573"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Dec 14 20:09:31 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 15 08:50:29 2009 +0100"
      },
      "message": "perf diff: Introduce tool to show performance difference\n\nI guess it is enough to show some examples:\n\n[root@doppio linux-2.6-tip]# rm -f perf.data*\n[root@doppio linux-2.6-tip]# ls -la perf.data*\nls: cannot access perf.data*: No such file or directory\n[root@doppio linux-2.6-tip]# perf record -f find / \u003e /dev/null\n[ perf record: Woken up 1 times to write data ]\n[ perf record: Captured and wrote 0.062 MB perf.data (~2699 samples) ]\n[root@doppio linux-2.6-tip]# ls -la perf.data*\n-rw------- 1 root root 74440 2009-12-14 20:03 perf.data\n[root@doppio linux-2.6-tip]# perf record -f find / \u003e /dev/null\n[ perf record: Woken up 1 times to write data ]\n[ perf record: Captured and wrote 0.062 MB perf.data (~2692 samples) ]\n[root@doppio linux-2.6-tip]# ls -la perf.data*\n-rw------- 1 root root 74280 2009-12-14 20:03 perf.data\n-rw------- 1 root root 74440 2009-12-14 20:03 perf.data.old\n[root@doppio linux-2.6-tip]# perf diff | head -5\n   1        -34994580     /lib64/libc-2.10.1.so   _IO_vfprintf_internal\n   2        -15307806         [kernel.kallsyms]   __kmalloc\n   3    +1   +3665941     /lib64/libc-2.10.1.so   __GI_memmove\n   4    +4  +23508995     /lib64/libc-2.10.1.so   _int_malloc\n   5    +7  +38538813         [kernel.kallsyms]   __d_lookup\n[root@doppio linux-2.6-tip]# perf diff -p | head -5\n   1        +1.00%     /lib64/libc-2.10.1.so   _IO_vfprintf_internal\n   2                       [kernel.kallsyms]   __kmalloc\n   3    +1             /lib64/libc-2.10.1.so   __GI_memmove\n   4    +4             /lib64/libc-2.10.1.so   _int_malloc\n   5    +7  -1.00%         [kernel.kallsyms]   __d_lookup\n[root@doppio linux-2.6-tip]# perf diff -v | head -5\n   1        361449551 326454971 -34994580     /lib64/libc-2.10.1.so   _IO_vfprintf_internal\n   2        151009241 135701435 -15307806         [kernel.kallsyms]   __kmalloc\n   3    +1  101805328 105471269  +3665941     /lib64/libc-2.10.1.so   __GI_memmove\n   4    +4   78041440 101550435 +23508995     /lib64/libc-2.10.1.so   _int_malloc\n   5    +7   59536172  98074985 +38538813         [kernel.kallsyms]   __d_lookup\n[root@doppio linux-2.6-tip]# perf diff -vp | head -5\n   1        9.00% 8.00% +1.00%     /lib64/libc-2.10.1.so   _IO_vfprintf_internal\n   2        3.00% 3.00%                [kernel.kallsyms]   __kmalloc\n   3    +1  2.00% 2.00%            /lib64/libc-2.10.1.so   __GI_memmove\n   4    +4  2.00% 2.00%            /lib64/libc-2.10.1.so   _int_malloc\n   5    +7  1.00% 2.00% -1.00%         [kernel.kallsyms]   __d_lookup\n[root@doppio linux-2.6-tip]#\n\nThis should be enough for diffs where the system is non\nvolatile, i.e. when one doesn\u0027t updates binaries.\n\nFor volatile environments, stay tuned for the next perf tool\nfeature: a buildid cache populated by \u0027perf record\u0027, managed by\n\u0027perf buildid-cache\u0027 a-la ccache, and used by all the report\ntools.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c1260828571-3613-3-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ba77c9e11111a172c9e8687fe16a6a173a61916f",
      "tree": "54dae585a10100f977c525399b7598855b3ca7df",
      "parents": [
        "ce64c62074d945fe5f8a7f01bdc30125f994ea67"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Nov 20 15:53:25 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 20 09:51:41 2009 +0100"
      },
      "message": "perf: Add \u0027perf kmem\u0027 tool\n\nThis tool is mostly a perf version of kmemtrace-user.\n\nThe following information is provided by this tool:\n\n - the total amount of memory allocated and fragmentation per\n   call-site\n\n - the total amount of memory allocated and fragmentation per\n   allocation\n\n - total memory allocated and fragmentation in the collected\n   dataset - ...\n\nSample output:\n\n # ./perf kmem record\n ^C\n # ./perf kmem --stat caller --stat alloc -l 10\n\n ------------------------------------------------------------------------------\n Callsite          | Total_alloc/Per |  Total_req/Per  |  Hit   | Fragmentation\n ------------------------------------------------------------------------------\n 0xc052f37a        |   790528/4096   |   790528/4096   |    193 |    0.000%\n 0xc0541d70        |   524288/4096   |   524288/4096   |    128 |    0.000%\n 0xc051cc68        |   481600/200    |   481600/200    |   2408 |    0.000%\n 0xc0572623        |   297444/676    |   297440/676    |    440 |    0.001%\n 0xc05399f1        |    73476/164    |    73472/164    |    448 |    0.005%\n 0xc05243bf        |    51456/256    |    51456/256    |    201 |    0.000%\n 0xc0730d0e        |    31844/497    |    31808/497    |     64 |    0.113%\n 0xc0734c4e        |    17152/256    |    17152/256    |     67 |    0.000%\n 0xc0541a6d        |    16384/128    |    16384/128    |    128 |    0.000%\n 0xc059c217        |    13120/40     |    13120/40     |    328 |    0.000%\n 0xc0501ee6        |    11264/88     |    11264/88     |    128 |    0.000%\n 0xc04daef0        |     7504/682    |     7128/648    |     11 |    5.011%\n 0xc04e14a3        |     4216/191    |     4216/191    |     22 |    0.000%\n 0xc05041ca        |     3524/44     |     3520/44     |     80 |    0.114%\n 0xc0734fa3        |     2104/701    |     1620/540    |      3 |   23.004%\n 0xc05ec9f1        |     2024/289    |     2016/288    |      7 |    0.395%\n 0xc06a1999        |     1792/256    |     1792/256    |      7 |    0.000%\n 0xc0463b9a        |     1584/144    |     1584/144    |     11 |    0.000%\n 0xc0541eb0        |     1024/16     |     1024/16     |     64 |    0.000%\n 0xc06a19ac        |      896/128    |      896/128    |      7 |    0.000%\n 0xc05721c0        |      772/12     |      768/12     |     64 |    0.518%\n 0xc054d1e6        |      288/57     |      280/56     |      5 |    2.778%\n 0xc04b562e        |      157/31     |      154/30     |      5 |    1.911%\n 0xc04b536f        |       80/16     |       80/16     |      5 |    0.000%\n 0xc05855a0        |       64/64     |       36/36     |      1 |   43.750%\n ------------------------------------------------------------------------------\n\n ------------------------------------------------------------------------------\n Alloc Ptr         | Total_alloc/Per |  Total_req/Per  |  Hit   | Fragmentation\n ------------------------------------------------------------------------------\n 0xda884000        |  1052672/4096   |  1052672/4096   |    257 |    0.000%\n 0xda886000        |   262144/4096   |   262144/4096   |     64 |    0.000%\n 0xf60c7c00        |    16512/128    |    16512/128    |    129 |    0.000%\n 0xf59a4118        |    13120/40     |    13120/40     |    328 |    0.000%\n 0xdfd4b2c0        |    11264/88     |    11264/88     |    128 |    0.000%\n 0xf5274600        |     7680/256    |     7680/256    |     30 |    0.000%\n 0xe8395000        |     5948/594    |     5464/546    |     10 |    8.137%\n 0xe59c3c00        |     5748/479    |     5712/476    |     12 |    0.626%\n 0xf4cd1a80        |     3524/44     |     3520/44     |     80 |    0.114%\n 0xe5bd1600        |     2892/482    |     2856/476    |      6 |    1.245%\n ...               | ...             | ...             | ...    | ...\n ------------------------------------------------------------------------------\n\nSUMMARY\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nTotal bytes requested: 2333626\nTotal bytes allocated: 2353712\nTotal bytes wasted on internal fragmentation: 20086\nInternal fragmentation: 0.853375%\n\nTODO:\n- show sym+offset in \u0027callsite\u0027 column\n- show cross node allocation stats\n- collect more useful stats?\n- ...\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: linux-mm@kvack.org \u003clinux-mm@kvack.org\u003e\nLKML-Reference: \u003c4B064AF5.9060208@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\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": "c34984b2bbc77596c97c333539bffc90d2033178",
      "tree": "8f49da2b786cf690a0c900d9469f520f71fce5bc",
      "parents": [
        "9e03eb2d512e7f3a1e562d4b922aa8b1891750b6"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Nov 16 16:32:45 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 16 22:05:51 2009 +0100"
      },
      "message": "perf buildid-list: New plumbing command\n\nWith this we can list the buildids in a perf.data file so that\nwe can pipe them to other, distro specific tools that from the\nbuildids can figure out separate packages (foo-debuginfo) where\nwe can find the matching symtabs so that perf report can do its\njob.\n\nE.g:\n\n[acme@doppio linux-2.6-tip]$ perf buildid-list | head -5\n8e08b117e5458ad3f85da16d42d0fc5cd21c5869\n520c2387a587cc5acfcf881e27dba1caaeab4b1f\nec8dd400904ddfcac8b1c343263a790f977159dc\n7caedbca5a6d8ab39a7fe44bd28c07d3e14a3f3f\n379bb828fd08859dbea73279f04abefabc95a6a3\n[acme@doppio linux-2.6-tip]$ perf buildid-list -v | head -5\n8e08b117e5458ad3f85da16d42d0fc5cd21c5869 /sbin/init\n520c2387a587cc5acfcf881e27dba1caaeab4b1f /lib64/ld-2.10.1.so\nec8dd400904ddfcac8b1c343263a790f977159dc /lib64/libc-2.10.1.so\n7caedbca5a6d8ab39a7fe44bd28c07d3e14a3f3f /sbin/udevd\n379bb828fd08859dbea73279f04abefabc95a6a3 /lib64/libdl-2.10.1.so\n[acme@doppio linux-2.6-tip]$\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c1258396365-29217-5-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0ffa798d947f5f5e40690cc9d38e678080a34f87",
      "tree": "a9e25ba4431de513d4c83201429e9ff301cbaf50",
      "parents": [
        "39dc78b6510323848e3356452f7dab9499736978",
        "c86e2eaded39843e1bf4f07d1adfab4494f20894",
        "c5659b74f052150791750234f92dcfb29d27efa5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 15 09:51:19 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 15 09:51:24 2009 +0100"
      },
      "message": "Merge branches \u0027perf/powerpc\u0027 and \u0027perf/bench\u0027 into perf/core\n\nMerge reason: Both \u0027perf bench\u0027 and the pending PowerPC changes\n              are now ready for the next merge window.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "549104f22b3cd4761145eb5fba6ee4d59822da61",
      "tree": "2966d464ffe82e391fad654d8e91ecf7a40f4367",
      "parents": [
        "afe61f677866ffc484e69c4ecca2d316d564d78b"
      ],
      "author": {
        "name": "Clark Williams",
        "email": "williams@redhat.com",
        "time": "Sun Nov 08 09:03:07 2009 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 08 18:01:35 2009 +0100"
      },
      "message": "perf tools: Modify perf routines to use new debugfs routines\n\nmodify perf.c get_debugfs_mntpnt() to use the util/debugfs.c\ndebugfs_find_mountpoint()\n\nmodify util/parse-events.c to use debugfs_valid_mountpoint().\n\nSigned-off-by: Clark Williams \u003cwilliams@redhat.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20091101155720.624cc87e@torg\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dcba8848d3bc83ec9ee0858b9ae6e4f1c1fa7fa3",
      "tree": "7a572a36cf2997aa21bec3ca9765fea76f957686",
      "parents": [
        "11bd341c043348ecb7462d3bd8e1ad6d00f6892a"
      ],
      "author": {
        "name": "Hitoshi Mitake",
        "email": "mitake@dcl.info.waseda.ac.jp",
        "time": "Thu Nov 05 09:31:36 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 08 10:19:19 2009 +0100"
      },
      "message": "perf bench: Add new subcommand \u0027bench\u0027 to perf.c\n\nThis patch modifies perf.c for invoking \u0027bench\u0027 subcommand.\n\nSigned-off-by: Hitoshi Mitake \u003cmitake@dcl.info.waseda.ac.jp\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: fweisbec@gmail.com\nCc: Jiri Kosina \u003cjkosina@suse.cz\u003e\nLKML-Reference: \u003c1257381097-4743-7-git-send-email-mitake@dcl.info.waseda.ac.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "43315956509ca6913764861ac7dec128b91eb1ec",
      "tree": "60fd5647f150a46e63093a41417c2eef3e776b3d",
      "parents": [
        "9bf4e7fba8006d19846fec877b6da0616b2772de",
        "6beba7adbe092e63dfe8d09fbd1e3ec140474a13"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 23 08:23:20 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 23 08:23:20 2009 +0200"
      },
      "message": "Merge branch \u0027perf/core\u0027 into perf/probes\n\nConflicts:\n\ttools/perf/Makefile\n\nMerge reason:\n\n - fix the conflict\n - pick up the pr_*() infrastructure to queue up dependent patch\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cfed95a693e1ea5d08b9c9019bc30e448437ee2f",
      "tree": "1334775a5b22a0b430e7616d2020bec4593565df",
      "parents": [
        "9dbdd6c41c12fb42ee7188eafa7e1917b192af3a"
      ],
      "author": {
        "name": "Vincent Legoll",
        "email": "vincent.legoll@gmail.com",
        "time": "Tue Oct 13 10:18:16 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 13 11:55:31 2009 +0200"
      },
      "message": "perf tools: Do not manually count string lengths\n\nUse strlen \u0026 macros instead of manually counting string lengths as\nthis is error prone and may lend to bugs.\n\nSigned-off-by: Vincent Legoll \u003cvincent.legoll@gmail.com\u003e\nCc: Linus Torvalds \u003ctorvalds@osdl.org\u003e\nLKML-Reference: \u003c4727185d0910130118m5387058dndb02ac9b384af9f0@mail.gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "23e8ec0d1c410f2f1d81050ee155db229abb1707",
      "tree": "309462a3591f3239741373a413482abb03e49145",
      "parents": [
        "4ea42b181434bfc6a0a18d32214130a242d489bf"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Wed Oct 07 18:28:30 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Oct 12 23:31:53 2009 +0200"
      },
      "message": "perf probe: Add perf probe command support without libdwarf\n\nEnables \u0027perf probe\u0027 even if libdwarf is not installed. If libdwarf is\nnot found, \u0027perf probe\u0027 just disables dwarf support. Users can use\n\u0027perf probe\u0027 to set up new events by using kprobe_events format.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Frank Ch. Eigler \u003cfche@redhat.com\u003e\nLKML-Reference: \u003c20091007222830.1684.25665.stgit@dhcp-100-2-132.bos.redhat.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "4ea42b181434bfc6a0a18d32214130a242d489bf",
      "tree": "2c467d795d90440e0293951087c41caca8397584",
      "parents": [
        "e93f4d8539d5e9dd59f4af9d8ef4e9b62cfa1f81"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Thu Oct 08 17:17:38 2009 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Oct 12 23:31:52 2009 +0200"
      },
      "message": "perf: Add perf probe subcommand, a kprobe-event setup helper\n\nAdd perf probe subcommand that implements a kprobe-event setup helper\nto the perf command.\nThis allows user to define kprobe events using C expressions (C line\nnumbers, C function names, and C local variables).\n\nUsage\n-----\n perf probe [\u003coptions\u003e] -P \u0027PROBEDEF\u0027 [-P \u0027PROBEDEF\u0027 ...]\n\n    -k, --vmlinux \u003cfile\u003e  vmlinux/module pathname\n    -P, --probe \u003cp|r:[GRP/]NAME FUNC[+OFFS][@SRC]|@SRC:LINE [ARG ...]\u003e\n                          probe point definition, where\n\t\tp:\tkprobe probe\n\t\tr:\tkretprobe probe\n\t\tGRP:\tGroup name (optional)\n\t\tNAME:\tEvent name\n\t\tFUNC:\tFunction name\n\t\tOFFS:\tOffset from function entry (in byte)\n\t\tSRC:\tSource code path\n\t\tLINE:\tLine number\n\t\tARG:\tProbe argument (local variable name or\n\t\t\tkprobe-tracer argument format is supported.)\n\nChanges in v4:\n - Add _GNU_SOURCE macro for strndup().\n\nChanges in v3:\n - Remove -r option because perf always be used for online kernel.\n - Check malloc/calloc results.\n\nChanges in v2:\n - Check synthesized string length.\n - Rename perf kprobe to perf probe.\n - Use spaces for separator and update usage comment.\n - Check error paths in parse_probepoint().\n - Check optimized-out variables.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Frank Ch. Eigler \u003cfche@redhat.com\u003e\nLKML-Reference: \u003c20091008211737.29299.14784.stgit@dhcp-100-2-132.bos.redhat.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "10274989fd595db455874fc2c83272fb33f6b27b",
      "tree": "bb2396ee910f480b4859ca5c3554ed2f5a822d17",
      "parents": [
        "f48d55ce7871824eae3065f4d81956d7113eff19"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Sep 12 07:53:05 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 19 11:42:13 2009 +0200"
      },
      "message": "perf: Add the timechart tool\n\ntimechart is a tool to visualize what is going on in the system.\n\nThe user makes a trace of what is going on with\n\n \u003e perf record --timechart /usr/bin/some_command\n\nand then can turn the output of this into an svg file\n\n \u003e perf timechart\n\nwhich then can be viewed with any SVG view; inkscape works well\nenough for me.\n\nThe idea behind timechart is to create a \"infinitely zoomable\"\npicture; something that has high level information on a 1:1 zoom\nlevel, but which exposes more details every time you zoom into a\nspecific area.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20090912130713.6a77bbc0@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0a02ad9331dd4db56c29c60db2e99c4daaad8a48",
      "tree": "8e7b1955b09e0829e53cd54c3aed44fc79a24845",
      "parents": [
        "86d710146fb9975f04c505ec78caa43d227c1018"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 11 12:12:54 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Sep 13 10:22:36 2009 +0200"
      },
      "message": "perf: Add \u0027perf sched\u0027 tool\n\nThis turn-key tool allows scheduler measurements to be\nconducted and the results be displayed numerically.\n\nFirst baby step towards that goal: clone the new command off of\nperf trace.\n\nFix a few other details along the way:\n\n - add (minimal) perf trace documentation\n\n - reorder a few places\n\n - list perf trace in the mainporcelain list as well\n   as it\u0027s a very useful utility.\n\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: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5f9c39dca52d3e639ac899e169f408c6fd8396cc",
      "tree": "c4274c18c95e686312744cebad45d1537c606807",
      "parents": [
        "ea4010d1363699770a9894493bafe556a59a144c"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Aug 17 16:18:08 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 17 16:32:39 2009 +0200"
      },
      "message": "perf tools: Add perf trace\n\nThis adds perf trace into the set of perf tools.\n\nIt is written to fetch the tracepoint samples from perf events\nand display them, according to the events information given by\nthe debugfs files through the util/trace* tools.\n\nIt is a rough first shot and doesn\u0027t yet handle the cpu,\ntimestamps fields and some other things.\n\nExample:\n\n perf record -f -e workqueue:workqueue_execution:record -F 1 -a\n perf trace\n\n       kblockd/0-236   [000]     0.000000: workqueue_execution: thread\u003d:236 func\u003dcfq_kick_queue+0x0\n     kondemand/0-360   [000]     0.000000: workqueue_execution: thread\u003d:360 func\u003ddo_dbs_timer+0x0\n     kondemand/0-360   [000]     0.000000: workqueue_execution: thread\u003d:360 func\u003ddo_dbs_timer+0x0\n     kondemand/1-361   [000]     0.000000: workqueue_execution: thread\u003d:361 func\u003ddo_dbs_timer+0x0\n     kondemand/1-361   [000]     0.000000: workqueue_execution: thread\u003d:361 func\u003ddo_dbs_timer+0x0\n     kondemand/1-361   [000]     0.000000: workqueue_execution: thread\u003d:361 func\u003ddo_dbs_timer+0x0\n     kondemand/1-361   [000]     0.000000: workqueue_execution: thread\u003d:361 func\u003ddo_dbs_timer+0x0\n     kondemand/1-361   [000]     0.000000: workqueue_execution: thread\u003d:361 func\u003ddo_dbs_timer+0x0\n     kondemand/1-361   [000]     0.000000: workqueue_execution: thread\u003d:361 func\u003ddo_dbs_timer+0x0\n     kondemand/1-361   [000]     0.000000: workqueue_execution: thread\u003d:361 func\u003ddo_dbs_timer+0x0\n     kondemand/1-361   [000]     0.000000: workqueue_execution: thread\u003d:361 func\u003ddo_dbs_timer+0x0\n     kondemand/1-361   [000]     0.000000: workqueue_execution: thread\u003d:361 func\u003ddo_dbs_timer+0x0\n     kondemand/1-361   [000]     0.000000: workqueue_execution: thread\u003d:361 func\u003ddo_dbs_timer+0x0\n     kondemand/1-361   [000]     0.000000: workqueue_execution: thread\u003d:361 func\u003ddo_dbs_timer+0x0\n     kondemand/1-361   [000]     0.000000: workqueue_execution: thread\u003d:361 func\u003ddo_dbs_timer+0x0\n     kondemand/1-361   [000]     0.000000: workqueue_execution: thread\u003d:361 func\u003ddo_dbs_timer+0x0\n\nTodo:\n\n- A lot of things!\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: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: \"Luis Claudio R. Goncalves\" \u003clclaudio@uudg.org\u003e\nCc: Clark Williams \u003cwilliams@redhat.com\u003e\nCc: Jon Masters \u003cjonathan@jonmasters.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nCc: Zhaolei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: \"Frank Ch. Eigler\" \u003cfche@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Jiaying Zhang \u003cjiayingz@google.com\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nLKML-Reference: \u003c1250518688-7207-4-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5beeded123c5befa21f1c6e16219f2a3eb7dd197",
      "tree": "4ac812126910994516300c53171c7267b97f6f5d",
      "parents": [
        "f6bdafef2ab911f03321fa83d8da1df99878009e"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Tue Jul 21 14:16:29 2009 -0400"
      },
      "committer": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Jul 22 18:05:57 2009 +0200"
      },
      "message": "perf_counter: Detect debugfs location\n\nIf \"/sys/kernel/debug\" is not a debugfs mount point, search for the debugfs\nfilesystem in /proc/mounts, but also allows the user to specify\n\u0027--debugfs-dir\u003dblah\u0027 or set the environment variable: \u0027PERF_DEBUGFS_DIR\u0027\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\n[ also made it probe \"/debug\" by default ]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20090721181629.GA3094@redhat.com\u003e\n"
    },
    {
      "commit": "f37a291c527c954df4da568de718ebb36b8261c0",
      "tree": "bb4863fbd185fbfef5f7d28cb4001d59d4123a2d",
      "parents": [
        "88a69dfbc6ab1e3b51bba8c9103055e21089ebb9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 01 12:37:06 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 01 12:49:48 2009 +0200"
      },
      "message": "perf_counter tools: Add more warnings and fix/annotate them\n\nEnable -Wextra. This found a few real bugs plus a number\nof signed/unsigned type mismatches/uncleanlinesses. It\nalso required a few annotations\n\nAll things considered it was still worth it so lets try with\nthis enabled for now.\n\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: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "864709302a80f26fa9da3be5b47304f0b8bae192",
      "tree": "8c2bab78f141fe43a38914bd3e3aae0a88f958e5",
      "parents": [
        "75b5032212641f6d38ac041416945e70da833b68"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jun 06 20:33:43 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jun 06 20:33:43 2009 +0200"
      },
      "message": "perf_counter tools: Move from Documentation/perf_counter/ to tools/perf/\n\nSeveral people have suggested that \u0027perf\u0027 has become a full-fledged\ntool that should be moved out of Documentation/. Move it to the\n(new) tools/ directory.\n\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": "8035e4288078cb806e7dd6bafe4d3e54d44cab3f",
      "tree": "7b54e827020e9a9dbc2823009cb2815fc3e35fc9",
      "parents": [
        "6e6b754ffdb6415723686c733f13275397e44422"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jun 06 15:19:13 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jun 06 18:58:30 2009 +0200"
      },
      "message": "perf_counter tools: Prepare for \u0027perf annotate\u0027\n\nPrepare for the \u0027perf annotate\u0027 implementation by splitting off\nbuiltin-annotate.c from builtin-report.c.\n\n( We keep this commit separate to ease the later librarization\n  of the facilities that perf-report and perf-annotate shares. )\n\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": "502fc5c72a886ff9d4d7a596e65ecc4dd5e4d458",
      "tree": "d7ea78d9f6360c10ee52202f45567611d2ca61c7",
      "parents": [
        "386b05e3a2f3c5b0a9c5575060421cca0911648a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 03:20:49 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jun 06 14:41:49 2009 +0200"
      },
      "message": "perf_counter tools: Uniform help printouts\n\nAlso add perf list to command-list.txt.\n\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": "86847b62f0781ccc97a79936c9ed9dc818cff67b",
      "tree": "a55a8ea4a3e2c771322edc7aa01b1572c3a59c06",
      "parents": [
        "8326f44da090d6d304d29b9fdc7fb3e20889e329"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Jun 06 12:24:17 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jun 06 14:16:49 2009 +0200"
      },
      "message": "perf_counter tools: Add \u0027perf list\u0027 to list available events\n\nperf list: List all the available event types which can be used in\n-e (--event) options.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bf9e187637ca3d85cee7407e3af93995868cc87c",
      "tree": "c2ea1b5fad7f75082efb93abb7fa447940b7cb69",
      "parents": [
        "0a520c63e1625b92ef775da40192e1542910e7f6"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 02 23:37:05 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 02 23:37:05 2009 +0200"
      },
      "message": "perf_counter tools: Make source code headers more coherent\n\nThe perf commands had different ways of describing themselves,\nintroduce a coherent command-file-header format taken from the\nGit project.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Corey Ashford \u003ccjashfor@linux.vnet.ibm.com\u003e\nCc: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: John Kacur \u003cjkacur@redhat.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8fa66bdcc81dd4fc2c91228074d0a4698120c5a2",
      "tree": "ae356069f38689f8656599e6ee1372268339de49",
      "parents": [
        "b456bae0ff4f3cf91639dd32b2bfc49b1c30b4b0"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon May 18 12:45:42 2009 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue May 26 13:52:53 2009 +0200"
      },
      "message": "perf_counter: First part of \u0027perf report\u0027 conversion to C + elfutils\n\nIntegrate perf-report into \u0027perf\u0027, as builtin-report.c.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Corey Ashford \u003ccjashfor@linux.vnet.ibm.com\u003e\nCc: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "266dfb0b58bc4181b6158ee63a0069abaa9f3a98",
      "tree": "f251e6ad609d796d93110ca09758ac0ac3852a93",
      "parents": [
        "d3f4b3855ba87caff8f35e738c7e7e3bad0a6ab1"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon May 25 14:45:24 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 25 14:54:59 2009 +0200"
      },
      "message": "perf_counter: Fix perf-$cmd invokation\n\nFix:\n\n  $ perf-top\n  fatal: cannot handle -top internally\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Corey Ashford \u003ccjashfor@linux.vnet.ibm.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: John Kacur \u003cjkacur@redhat.com\u003e\nLKML-Reference: \u003c20090525124559.995591577@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "148be2c15d4a866fbc7a8f55342e4fd4de73be61",
      "tree": "a99f8c85552166f187a233ce29eb442f27fe620d",
      "parents": [
        "f1f9b3b1795da8625e0e6096813c9d18d4a344ce"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 27 08:02:14 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 27 09:05:08 2009 +0200"
      },
      "message": "perf_counter tools: move helper library to util/*\n\nClean up the top level directory a bit by moving all the helper libraries\nto util/*.[ch].\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6142fdd968c76a0f2ee753c39bd5be8d1bb4ef04",
      "tree": "c202ce98a48c78f880fe99afee28a8658ec8b60d",
      "parents": [
        "cc13a5913797365b683212f5fca5fb04bb3582eb"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 20 16:05:55 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 20 17:36:49 2009 +0200"
      },
      "message": "perf_counter tools: add \u0027perf help\u0027\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cc13a5913797365b683212f5fca5fb04bb3582eb",
      "tree": "66a30c8ee18621cb403789f3fb278b67606cdb45",
      "parents": [
        "e33e0a43736307512422e41aee6e24d5a8c39181"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 20 16:01:30 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 20 17:36:49 2009 +0200"
      },
      "message": "perf_counter tools: fix --version\n\nHook up the \u0027perf version\u0027 built-in command.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e33e0a43736307512422e41aee6e24d5a8c39181",
      "tree": "b1ae3e3287d51dfc33a33724eb00712496b13900",
      "parents": [
        "1d8c8b209e9351a7de1307d7b9b6df4222b8d742"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 20 15:58:01 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 20 17:36:49 2009 +0200"
      },
      "message": "perf_counter tools: add \u0027perf record\u0027 command\n\nMove perf-record.c into the perf suite of commands.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ddcacfa0febff6454dba6cea1931f3020a9f6c24",
      "tree": "0921fe8644ef904ad154640a584830d552a02bee",
      "parents": [
        "6f06ccbc86f8a02aa32271263249657ce484eb25"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 20 15:37:32 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 20 17:36:48 2009 +0200"
      },
      "message": "perf_counter tools: separate kerneltop into \u0027perf top\u0027 and \u0027perf stat\u0027\n\nLets use the Git framework of built-in commands.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6f06ccbc86f8a02aa32271263249657ce484eb25",
      "tree": "c04eb04fcd1b7da2ec1a0072089cd95317a2cf54",
      "parents": [
        "0780060124011b94af55830939c86cc0916be0f5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 20 15:22:22 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 20 17:36:48 2009 +0200"
      },
      "message": "perf_counter tools: clean up after introduction of the Git command framework\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0780060124011b94af55830939c86cc0916be0f5",
      "tree": "883a4d0ed69862ab49e6d4bf4e19debafeb5c48c",
      "parents": [
        "d24e473e5b2ca86d1288b9416227ccc603313d0f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 20 15:00:56 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 20 17:36:48 2009 +0200"
      },
      "message": "perf_counter tools: add in basic glue from Git\n\nFirst very raw version at having a central \u0027perf\u0027 command and\na list of subcommands:\n\n  perf top\n  perf stat\n  perf record\n  perf report\n  ...\n\nThis is done by picking up Git\u0027s collection of utility functions,\nand hacking them to build fine in this new environment.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ]
}
