)]}'
{
  "log": [
    {
      "commit": "aaf045f72335653b24784d6042be8e4aee114403",
      "tree": "55c11335e23759e56e0a5ae2daf1c31bb9769662",
      "parents": [
        "668fe01f1cea2154da479dd12946eeb53413396e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 06 00:47:56 2012 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Apr 25 13:28:48 2012 +0200"
      },
      "message": "perf: Have perf use the new libtraceevent.a library\n\nThe event parsing code in perf was originally copied from trace-cmd\nbut never was kept up-to-date with the changes that was done there.\nThe trace-cmd libtraceevent.a code is much more mature than what is\ncurrently in perf.\n\nThis updates the code to use wrappers to handle the calls to the\nnew event parsing code. The new code requires a handle to be pass\naround, which removes the global event variables and allows\nmore than one event structure to be read from different files\n(and different machines).\n\nBut perf still has the old global events and the code throughout\nperf does not yet have a nice way to pass around a handle.\nA global \u0027pevent\u0027 has been made for perf and the old calls have\nbeen created as wrappers to the new event parsing code that uses\nthe global pevent.\n\nWith this change, perf can later incorporate the pevent handle into\nthe perf structures and allow more than one file to be read and\ncompared, that contains different events.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Borislav Petkov \u003cbp@alien8.de\u003e\nCc: Jiri Olsa \u003cjolsa@redhat.com\u003e\nCc: Arun Sharma \u003casharma@fb.com\u003e\nCc: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "1b22859d4320d472a7a51ff4a43f62b0578469de",
      "tree": "8608f8319ad618198850943b2ddf162913abb87b",
      "parents": [
        "8442da1d9f445b454accdb148355ee990ebf3b32"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Sun Jan 08 02:25:29 2012 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Jan 08 13:27:54 2012 -0200"
      },
      "message": "perf kmem: Fix a memory leak\n\nThe \u0027str\u0027 should be freed when sort_dimension__add() failed too.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1325957132-10600-5-git-send-email-namhyung@gmail.com\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "8442da1d9f445b454accdb148355ee990ebf3b32",
      "tree": "90731e4e9acfb8b4d8d352c0a5bc84a2bd9754bd",
      "parents": [
        "cdce445906852d90efdc773ca7ba460e6e41664d"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Sun Jan 08 02:25:28 2012 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Jan 08 13:27:06 2012 -0200"
      },
      "message": "perf kmem: Add missing closedir() calls\n\nThe setup_cpunode_map() calls opendir() but misses corresponding\nclosedir(). Add them.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1325957132-10600-4-git-send-email-namhyung@gmail.com\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "efad14150a0b4429f37da7245001a8096ef7ee38",
      "tree": "61c41a83384266dca00a2a4c88f43ebf4bdf5b5e",
      "parents": [
        "1b5495043d5bc058def21f9b66fd8feaa794eb44"
      ],
      "author": {
        "name": "Robert Richter",
        "email": "robert.richter@amd.com",
        "time": "Wed Dec 07 10:02:54 2011 +0100"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Dec 23 17:01:03 2011 -0200"
      },
      "message": "perf report: Accept fifos as input file\n\nThe default input file for perf report is not handled the same way as\nperf record does it for its output file. This leads to unexpected\nbehavior of perf report, etc. E.g.:\n\n # perf record -a -e cpu-cycles sleep 2 | perf report | cat\n failed to open perf.data: No such file or directory  (try \u0027perf record\u0027 first)\n\nWhile perf record writes to a fifo, perf report expects perf.data to be\nread. This patch changes this to accept fifos as input file.\n\nApplies to the following commands:\n\n perf annotate\n perf buildid-list\n perf evlist\n perf kmem\n perf lock\n perf report\n perf sched\n perf script\n perf timechart\n\nAlso fixes char const* -\u003e const char* type declaration for filename\nstrings.\n\nv2:\n* Prevent potential null pointer access to input_name in\n  builtin-report.c. Needed due to removal of patch \"perf report: Setup\n  browser if stdout is a pipe\"\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLink: http://lkml.kernel.org/r/1323248577-11268-5-git-send-email-robert.richter@amd.com\nSigned-off-by: Robert Richter \u003crobert.richter@amd.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "45694aa7702bc44d538a3bcb51bb2bb96cf190c0",
      "tree": "81bc1f449f55984556d89b63c461dcf181dc97e5",
      "parents": [
        "743eb868657bdb1b26c7b24077ca21c67c82c777"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Nov 28 08:30:20 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Nov 28 10:39:28 2011 -0200"
      },
      "message": "perf tools: Rename perf_event_ops to perf_tool\n\nTo better reflect that it became the base class for all tools, that must\nbe in each tool struct and where common stuff will be put.\n\nCc: David Ahern \u003cdsahern@gmail.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\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLink: http://lkml.kernel.org/n/tip-qgpc4msetqlwr8y2k7537cxe@git.kernel.org\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "743eb868657bdb1b26c7b24077ca21c67c82c777",
      "tree": "4803b557725213043ccd5d3f83d2eec796a49f69",
      "parents": [
        "d20deb64e0490ee9442b5181bc08a62d2cadcb90"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Nov 28 07:56:39 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Nov 28 10:39:12 2011 -0200"
      },
      "message": "perf tools: Resolve machine earlier and pass it to perf_event_ops\n\nReducing the exposure of perf_session further, so that we can use the\nclasses in cases where no perf.data file is created.\n\nCc: David Ahern \u003cdsahern@gmail.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\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLink: http://lkml.kernel.org/n/tip-stua66dcscsezzrcdugvbmvd@git.kernel.org\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "d20deb64e0490ee9442b5181bc08a62d2cadcb90",
      "tree": "afdb3f6fc9abbce9d0a96b7049d1f8121178a356",
      "parents": [
        "7009cc34b964939815160d7de64cf0215cdbf8bb"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Nov 25 08:19:45 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Nov 28 10:38:56 2011 -0200"
      },
      "message": "perf tools: Pass tool context in the the perf_event_ops functions\n\nSo that we don\u0027t need to have that many globals.\n\nNext steps will remove the \u0027session\u0027 pointer, that in most cases is\nnot needed.\n\nThen we can rename perf_event_ops to \u0027perf_tool\u0027 that better describes\nthis class hierarchy.\n\nCc: David Ahern \u003cdsahern@gmail.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\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLink: http://lkml.kernel.org/n/tip-wp4djox7x6w1i2bab1pt4xxp@git.kernel.org\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "9e69c210822c4035708a6111567c96364ca244d5",
      "tree": "3bae4b7f4309ec18bf4628b81cf85bb1570f6a31",
      "parents": [
        "880f57318450dbead6a03f9e31a1468924d6dd88"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 15 15:44:01 2011 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Mar 23 19:28:58 2011 -0300"
      },
      "message": "perf session: Pass evsel in event_ops-\u003esample()\n\nResolving the sample-\u003eid to an evsel since the most advanced tools,\nreport and annotate, and the others will too when they evolve to\nproperly support multi-event perf.data files.\n\nGood also because it does an extra validation, checking that the ID is\nvalid when present. When that is not the case, the overhead is just a\nbranch + function call (perf_evlist__id2evsel).\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "8115d60c323dd9931b95221c0a392aeddc1d6ef3",
      "tree": "13e75d71c5163c78efc9d8ab33988cc6c7be74a1",
      "parents": [
        "8d50e5b4171a69cf48ca94a1e7c14033d0b4771d"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Jan 29 14:01:45 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Jan 29 16:25:37 2011 -0200"
      },
      "message": "perf tools: Kill event_t typedef, use \u0027union perf_event\u0027 instead\n\nAnd move the event_t methods to the perf_event__ too.\n\nNo code changes, just namespace consistency.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "8d50e5b4171a69cf48ca94a1e7c14033d0b4771d",
      "tree": "6ebf659f92f0770917c7f47c24449ebfe048ce61",
      "parents": [
        "93fc64f14472ae24fd640bf3834a178f59142842"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Jan 29 13:02:00 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Jan 29 16:25:20 2011 -0200"
      },
      "message": "perf tools: Rename \u0027struct sample_data\u0027 to \u0027struct perf_sample\u0027\n\nMaking the namespace more uniform.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "9486aa38771661e96fbb51c549b9901b5df609d8",
      "tree": "72cecbff0cb5124c960feeec3a6ac1fff75c649a",
      "parents": [
        "57b84e53171ce672683faf1cab2e660965a6bdaf"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Jan 22 20:37:02 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Jan 22 23:41:57 2011 -0200"
      },
      "message": "perf tools: Fix 64 bit integer format strings\n\nUsing %L[uxd] has issues in some architectures, like on ppc64.  Fix it\nby making our 64 bit integers typedefs of stdint.h types and using\nPRI[ux]64 like, for instance, git does.\n\nReported by Denis Kirjanov that provided a patch for one case, I went\nand changed all cases.\n\nReported-by: Denis Kirjanov \u003cdkirjanov@kernel.org\u003e\nTested-by: Denis Kirjanov \u003cdkirjanov@kernel.org\u003e\nLKML-Reference: \u003c20110120093246.GA8031@hera.kernel.org\u003e\nCc: Denis Kirjanov \u003cdkirjanov@kernel.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Pingtian Han \u003cphan@redhat.com\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "21ef97f05a7da5bc23b26cb34d6746f83ca9bf20",
      "tree": "c47c09c178f7929f01dcb7b302ceed21f3758ded",
      "parents": [
        "7639dae0ca11038286bbbcda05f2bef601c1eb8d"
      ],
      "author": {
        "name": "Ian Munsie",
        "email": "imunsie@au1.ibm.com",
        "time": "Fri Dec 10 14:09:16 2010 +1100"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Dec 21 20:17:51 2010 -0200"
      },
      "message": "perf session: Fallback to unordered processing if no sample_id_all\n\nIf we are running the new perf on an old kernel without support for\nsample_id_all, we should fall back to the old unordered processing of\nevents. If we didn\u0027t than we would *always* process events without\ntimestamps out of order, whether or not we hit a reordering race. In\nother words, instead of there being a chance of not attributing samples\ncorrectly, we would guarantee that samples would not be attributed.\n\nWhile processing all events without timestamps before events with\ntimestamps may seem like an intuitive solution, it falls down as\nPERF_RECORD_EXIT events would also be processed before any samples.\nEven with a workaround for that case, samples before/after an exec would\nnot be attributed correctly.\n\nThis patch allows commands to indicate whether they need to fall back to\nunordered processing, so that commands that do not care about timestamps\non every event will not be affected. If we do fallback, this will print\nout a warning if report -D was invoked.\n\nThis patch adds the test in perf_session__new so that we only need to\ntest once per session. Commands that do not use an event_ops (such as\nrecord and top) can simply pass NULL in it\u0027s place.\n\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLKML-Reference: \u003c1291951882-sup-6069@au1.ibm.com\u003e\nSigned-off-by: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "ce47dc56a2241dc035160a85bc5e34283cdd622c",
      "tree": "d9404df9d3ca0ddacdd8faae791ece27206dece4",
      "parents": [
        "965bb6beaf70862d3846e330ea7a14996d82c499"
      ],
      "author": {
        "name": "Chris Samuel",
        "email": "chris@csamuel.org",
        "time": "Sat Nov 13 13:35:06 2010 +1100"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Dec 06 12:52:35 2010 -0200"
      },
      "message": "perf tools: Catch a few uncheck calloc/malloc\u0027s\n\nThere were a few stray calloc()\u0027s and malloc()\u0027s which were not having\ntheir return values checked for success.\n\nAs the calling code either already coped with failure or didn\u0027t actually\ncare we just return -ENOMEM at that point.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Chris Samuel \u003cchris@csamuel.org\u003e\nLKML-Reference: \u003c4CDDF95A.1050400@csamuel.org\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "640c03ce837fe8d4b56342aba376ea0da3960459",
      "tree": "e954290ccacf032ab4d9052eac01710fda1b7fab",
      "parents": [
        "c980d1091810df13f21aabbce545fd98f545bbf7"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Dec 02 14:10:21 2010 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Dec 04 23:05:19 2010 -0200"
      },
      "message": "perf session: Parse sample earlier\n\nAt perf_session__process_event, so that we reduce the number of lines in eache\ntool sample processing routine that now receives a sample_data pointer already\nparsed.\n\nThis will also be useful in the next patch, where we\u0027ll allow sample the\nidentity fields in MMAP, FORK, EXIT, etc, when it will be possible to see (cpu,\ntimestamp) just after before every event.\n\nAlso validate callchains in perf_session__process_event, i.e. as early as\npossible, and keep a counter of the number of events discarded due to invalid\ncallchains, warning the user about it if it happens.\n\nThere is an assumption that was kept that all events have the same sample_type,\nthat will be dealt with in the future, when this preexisting limitation will be\nremoved.\n\nTested-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ian Munsie \u003cimunsie@au1.ibm.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: Stephane Eranian \u003ceranian@google.com\u003e\nLKML-Reference: \u003c1291318772-30880-4-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "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": "5c0541d53ef3897494768decb09eb8f1087953a5",
      "tree": "38b8eab8e45a2d2265db64b131320e6baa43b984",
      "parents": [
        "18acde52b83bd1c8e1d007db519f46d344aa13ed"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Apr 29 15:25:23 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Apr 29 15:25:23 2010 -0300"
      },
      "message": "perf symbols: Add machine helper routines\n\nCreated when writing the first \u0027perf test\u0027 regression testing routine.\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": "d28c62232e50eab202bcd3f19b5c7a25b8b900b6",
      "tree": "544aca2fe1c7a6c813cf2bf319a8ceb4d212b649",
      "parents": [
        "48ea8f5470aa6f35244d1b218316705ea88c0259"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Apr 27 21:20:43 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Apr 27 21:21:18 2010 -0300"
      },
      "message": "perf machine: Adopt some map_groups functions\n\nThose functions operated on members now grouped in \u0027struct machine\u0027, so\nmove those methods to this new class.\n\nThe changes made to \u0027perf probe\u0027 shows that using this abstraction\ninserting probes on guests almost got supported for free.\n\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.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\nCc: Zhang, Yanmin \u003cyanmin_zhang@linux.intel.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "23346f21b277e3aae5e9989e711a11cbe8133a45",
      "tree": "21f11a72cf21d4eb3d824f46e274dc8f9815d749",
      "parents": [
        "462b04e28a7ec1339c892117c3f20a40e55d0e83"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Apr 27 21:17:50 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Apr 27 21:17:50 2010 -0300"
      },
      "message": "perf tools: Rename \"kernel_info\" to \"machine\"\n\nstruct kernel_info and kerninfo__ are too vague, what they really\ndescribe are machines, virtual ones or hosts.\n\nThere are more changes to introduce helpers to shorten function calls\nand to make more clear what is really being done, but I left that for\nsubsequent patches.\n\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\nCc: Zhang, Yanmin \u003cyanmin_zhang@linux.intel.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "587570d4cc3cac80da7d569bee9cea3ca104d60e",
      "tree": "fe18a758fb098dd974489be85365d63a2718df89",
      "parents": [
        "a64eae703b390185abe1d15fa932b48f04fa7fbb"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Apr 24 00:34:53 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Apr 24 03:50:44 2010 +0200"
      },
      "message": "perf: Use generic sample reordering in perf kmem\n\nUse the new generic sample events reordering from perf kmem,\nthis drops the need of multiplexing the buffers on record time,\nimproving the scalability of perf kmem.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Hitoshi Mitake \u003cmitake@dcl.info.waseda.ac.jp\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.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": "71cf8b8ff7d6a79af086be9e4c72628da9d62d58",
      "tree": "8a8d6f97995133971d8f8bec3f4a885070ce103f",
      "parents": [
        "e727ca73f85d4c5be3547eda674168219d1c22d8"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Apr 01 21:24:38 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Apr 02 16:28:25 2010 -0300"
      },
      "message": "perf kmem: Fixup the symbol address before using it\n\nWe get absolute addresses in the events, but relative ones from the\nsymbol subsystem, so calculate the absolute address by asking for the\nmap where the symbol was found, that has the place where the DSO was\nactually loaded.\n\nFor the core kernel this poses no problems if the kernel is not\nrelocated by things like kexec, or if we use /proc/kallsyms, but for\nmodules we were getting really large, negative offsets.\n\nLKML-Reference: \u003cnew-submission\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.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": "e727ca73f85d4c5be3547eda674168219d1c22d8",
      "tree": "be77d34b7dc8b3ed30c1ce0eb17f0b08d8c517ed",
      "parents": [
        "a4e3b956a820162b7c1d616117b4f23b6017f504"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Apr 01 19:12:13 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Apr 02 16:28:20 2010 -0300"
      },
      "message": "perf kmem: Resolve kernel symbols again\n\nDue to the assumption in perf_session__new that the kernel maps would be\ncreated using the fake PERF_RECORD_MMAP event in a perf.data file \u0027perf\nkmem --stat caller\u0027, that doesn\u0027t have such event, ends up not being\nable to resolve the kernel addresses.\n\nFix it by calling perf_session__create_kernel_maps() in __cmd_kmem().\n\nLKML-Reference: \u003cnew-submission\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": "7e5e1b1404c30db5f6bc3f5203b6c21c1d244f99",
      "tree": "1203765ed3e60af2ba7682677ed2553c6226f058",
      "parents": [
        "c6e718ff8cdcf5e7855077687720b37c4a07650a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Mar 26 12:30:40 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Apr 02 16:27:43 2010 -0300"
      },
      "message": "perf symbols: map_groups__find_symbol must return the map too\n\nTools need to know from which map in the map_group a symbol was resolved\nto, so that, for isntance, we can annotate kernel modules symbols by\ngetting its precise name, etc.\n\nAlso add the _by_name variants for completeness.\n\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": "9de89fe7c577847877ae00ea1aa6315559b10243",
      "tree": "523bcd2c2b1e2a839100b472ff864860cdc8caeb",
      "parents": [
        "b8f46c5a34fa64fd456295388d18f50ae69d9f37"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Feb 03 16:52:00 2010 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 04 09:33:24 2010 +0100"
      },
      "message": "perf symbols: Remove perf_session usage in symbols layer\n\nI noticed while writing the first test in \u0027perf regtest\u0027 that to\njust test the symbol handling routines one needs to create a\nperf session, that is a layer centered on a perf.data file,\nevents, etc, so I untied these layers.\n\nThis reduces the complexity for the users as the number of\nparameters to most of the symbols and session APIs now was\nreduced while not adding more state to all the map instances by\nonly having data that is needed to split the kernel (kallsyms\nand ELF symtab sections) maps and do vmlinux relocation on the\nmain kernel map.\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: \u003c1265223128-11786-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ae7f6711d6231c9ba54feb5ba9856c3775e482f8",
      "tree": "89070c82204b2503348e4fd6c51d25a169375545",
      "parents": [
        "64abebf731df87e6f4ae7d9ffc340bdf0c033e44",
        "b23ff0e9330e4b11e18af984d50573598e10e7f9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 29 09:24:57 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 29 10:36:22 2010 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: We want to queue up a dependent patch. Also update to\n              later -rc\u0027s.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "64abebf731df87e6f4ae7d9ffc340bdf0c033e44",
      "tree": "5ccf8953ac39f72875254321dd51e9ec9503aaa0",
      "parents": [
        "fd1d908c543fbdfae82839d24b0872c542fceedc"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Jan 27 21:05:52 2010 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 29 09:20:58 2010 +0100"
      },
      "message": "perf session: Create kernel maps in the constructor\n\nRemoving one extra step needed in the tools that need this,\nfixing a bug in \u0027perf probe\u0027 where this was not being done.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@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: \u003c1264633557-17597-4-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b00eca8cd66029128615e8be9a19e284a950c0f2",
      "tree": "6864cf18a60fc787ff85095963db813432bde8e1",
      "parents": [
        "47103277f8861dcb48ab845533db331ddb9427ca"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Tue Jan 19 19:26:11 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 20 07:20:08 2010 +0100"
      },
      "message": "perf kmem: Print usage help for unknown commands\n\nThis patch fixes \"perf kmem\" to print usage help instead of\ndoing nothing.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nLKML-Reference: \u003c1263921971-10782-1-git-send-email-penberg@cs.helsinki.fi\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "47103277f8861dcb48ab845533db331ddb9427ca",
      "tree": "f5326bc9d538563ed75052664c769ca7f151bac3",
      "parents": [
        "0bb7a95f5455cd87e6a69e5818bc1f509a98d187"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Tue Jan 19 19:23:23 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 20 07:20:07 2010 +0100"
      },
      "message": "perf kmem: Increase \"Hit\" column length\n\nIt\u0027s fairly easy to overflow the \"Hit\" column with just few\nseconds of tracing so increase the column length to avoid broken\nformatting.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nLKML-Reference: \u003c1263921803-10214-1-git-send-email-penberg@cs.helsinki.fi\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0d755034dbd01e240eadf2d31f4f75d3088ccd21",
      "tree": "922b509d4bf2964ea369c8586f9f2931065e0191",
      "parents": [
        "66aeb6d5cb701aedd508187e08612bfd1e108e2e"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Jan 14 12:23:09 2010 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 16 10:58:45 2010 +0100"
      },
      "message": "perf tools: Don\u0027t cast RIP to pointers\n\nSince they can come from another architecture with bigger\npointers, i.e. processing a 64-bit perf.data on a 32-bit arch.\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: \u003c1263478990-8200-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b7cece76783c68fb391f9882235b4b0c9c300c46",
      "tree": "8a0224493acc3cf74c218384a3b76b3e47c131a2",
      "parents": [
        "ff314d3903c2843de65c2148f66f277f2440ed26"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Jan 13 13:22:17 2010 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 13 17:39:43 2010 +0100"
      },
      "message": "perf tools: Encode kernel module mappings in perf.data\n\nWe were always looking at the running machine /proc/modules,\neven when processing a perf.data file, which only makes sense\nwhen we\u0027re doing \u0027perf record\u0027 and \u0027perf report\u0027 on the same\nmachine, and in close sucession, or if we don\u0027t use modules at\nall, right Peter? ;-)\n\nNow, at \u0027perf record\u0027 time we read /proc/modules, find the long\npath for modules, and put them as PERF_MMAP events, just like we\ndid to encode the reloc reference symbol for vmlinux. Talking\nabout that now it is encoded in .pgoff, so that we can use\n.{start,len} to store the address boundaries for the kernel so\nthat when we reconstruct the kmaps tree we can do lookups right\naway, without having to fixup the end of the kernel maps like we\ndid in the past (and now only in perf record).\n\nOne more step in the \u0027perf archive\u0027 direction when we\u0027ll finally\nbe able to collect data in one machine and analyse in another.\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: \u003c1263396139-4798-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "61405fea92c42d072d9b8bd189689f1502a838af",
      "tree": "013ea3e7ed71f4114004d5852d40b6e89e128f76",
      "parents": [
        "9c443dfdd31eddea6cbe6ee0ca469fbcc4e1dc3b",
        "1703f2c321a8a531c393e137a82602e16c6061cb"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 13 09:58:37 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 13 10:08:50 2010 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: queue up dependent patch, update to -rc4\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4efb5290ae187514bd31af8c2d7755e175245e19",
      "tree": "2699b1274783ee0823d796373e6771f574dd2f46",
      "parents": [
        "c2ef6661ce62e26a8c0978e521fab646128a144b"
      ],
      "author": {
        "name": "Wenji Huang",
        "email": "wenji.huang@oracle.com",
        "time": "Mon Dec 21 17:52:55 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 10:31:56 2009 +0100"
      },
      "message": "perf kmem: Fix statistics typo\n\nReplace bytes_req with bytes_alloc.\n\nSigned-off-by: Wenji Huang \u003cwenji.huang@oracle.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: acme@redhat.com\nLKML-Reference: \u003c1261389175-2227-1-git-send-email-wenji.huang@oracle.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "659d8cfbb225f1fa5a4f8671a847ef3ab5a89660",
      "tree": "5eb4d89c29110f8d82edbb86b6bf3a6aee431e4a",
      "parents": [
        "fd2a50a0240f5f5b59070474eabd83a85720a406"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Sat Dec 19 16:40:28 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 10:18:37 2009 +0100"
      },
      "message": "perf tools: Do a few more directory handling optimizations\n\nA few more optimizations for perf when dealing with directories.\n\nSome of them significantly cut down the work which has to be\ndone. d_type should always be set; otherwise fix the kernel\ncode. And there are functions available to parse fstab-like\nfiles, so use them.\n\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: a.p.zijlstra@chello.nl\nCc: acme@redhat.com\nCc: eranian@google.com\nCc: fweisbec@gmail.com\nCc: lizf@cn.fujitsu.com\nCc: paulus@samba.org\nCc: xiaoguangrong@cn.fujitsu.com\nLKML-Reference: \u003c200912192140.nBJLeSfA028905@hs20-bc2-1.build.redhat.com\u003e\n[ v2: two small stylistic fixlets ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "55aa640f54280da25046acd2075842d464f451e6",
      "tree": "ab9f390de0a7315bbcac3dc7105673d3eeb8c521",
      "parents": [
        "f7d87444e6ee6f4a19634e5412664c1c529a2370"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Dec 27 21:37:05 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 09:03:35 2009 +0100"
      },
      "message": "perf session: Remove redundant prefix \u0026 suffix from perf_event_ops\n\nSince now all that we have are perf event handlers, leave just\nthe name of the event.\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: \u003c1261957026-15580-9-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d549c7690190d9739005e19604faad6da4b802ac",
      "tree": "1a03376ecc41ecd9495298ed3ad34f72da7ecea0",
      "parents": [
        "27295592c22e71bbd38110c302da8dbb43912a60"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Dec 27 21:37:02 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 09:03:34 2009 +0100"
      },
      "message": "perf session: Remove sample_type_check from event_ops\n\nThis is really something tools need to do before asking for the\nevents to be processed, leaving perf_session__process_events to\ndo just that, process events.\n\nAlso add a msg parameter to perf_session__has_traces() so that\nthe right message can be printed, fixing a regression added by\nme in the previous cset (right timechart message) and also\nfixing \u0027perf kmem\u0027, that was not asking if \u0027perf kmem record\u0027\nwas ran.\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: \u003c1261957026-15580-6-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "27295592c22e71bbd38110c302da8dbb43912a60",
      "tree": "01442f9b788e3b0a01bc29e22a0e799e1c45c91d",
      "parents": [
        "4a58e61161074776aa34187ea369414ce4852394"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Dec 27 21:37:01 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 09:03:33 2009 +0100"
      },
      "message": "perf session: Share the common trace sample_check routine as perf_session__has_traces\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: \u003c1261957026-15580-5-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "655000e7c75a559681ee7f15f6fa870c80ae3194",
      "tree": "69a56e19c818b0929dbea8d119fa133853c5ee80",
      "parents": [
        "75be6cf48738aec68aac49b428423569492cfba3"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Dec 15 20:04:40 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 08:53:49 2009 +0100"
      },
      "message": "perf symbols: Adopt the strlists for dso, comm\n\nWill be used in perf diff too.\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: \u003c1260914682-29652-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "75be6cf48738aec68aac49b428423569492cfba3",
      "tree": "d7f5ceb028361e8b725ba6f3b8219e66c7b89790",
      "parents": [
        "7ef17aafc98406d01ebbf7fe98ef1332b70d20bb"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Dec 15 20:04:39 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 08:53:48 2009 +0100"
      },
      "message": "perf symbols: Make symbol_conf global\n\nThis simplifies a lot of functions, less stuff to be done by\ntool writers.\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: \u003c1260914682-29652-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c019879bcc5692ec9267c1cedad91f1794d0b693",
      "tree": "ec499400b1ee0b1d93e961cc67b9dead9cd8c9a9",
      "parents": [
        "a328626b61aeda1a7d00a80c475c76ca1b815e0d"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Dec 14 14:23:00 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 17:34:56 2009 +0100"
      },
      "message": "perf session: Adopt the sample_type variable\n\nAll tools had copies, and perf diff would have to specify a\nsample_type_check method just for copying it.\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: \u003c1260807780-19377-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4e4f06e4c8f17ea96f7dd76251cab99511026401",
      "tree": "18b7f83b664939be0a9bde8e43daf9db8ca7fccc",
      "parents": [
        "b9bf089212d95746ce66482bcdbc7e77a0651088"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Dec 14 13:10:39 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 16:57:18 2009 +0100"
      },
      "message": "perf session: Move the hist_entries rb tree to perf_session\n\nAs we\u0027ll need to sort multiple times for multiple perf sessions,\nso that we can then do a diff.\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: \u003c1260803439-16783-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4aa65636411ccb12f006a6ad593930655c445ff6",
      "tree": "0f494705a2a7631070a5372bb53f873684b001c2",
      "parents": [
        "b3165f414416a717f72a376720564012af5a2e01"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Dec 13 19:50:29 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 16:57:17 2009 +0100"
      },
      "message": "perf session: Move kmaps to perf_session\n\nThere is still some more work to do to disentangle map creation\nfrom DSO loading, but this happens only for the kernel, and for\nthe early adopters of perf diff, where this disentanglement\nmatters most, we\u0027ll be testing different kernels, so no problem\nhere.\n\nFurther clarification: right now we create the kernel maps for\nthe various modules and discontiguous kernel text maps when\nloading the DSO, we should do it as a two step process, first\ncreating the maps, for multiple mappings with the same DSO\nstore, then doing the dso load just once, for the first hit on\none of the maps sharing this DSO backing store.\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: \u003c1260741029-4430-6-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b3165f414416a717f72a376720564012af5a2e01",
      "tree": "b066e4ae00b7d4bdb7386f4054e6e3ace0b976c3",
      "parents": [
        "ec913369733923dbfd6bdff5953a918107059701"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Dec 13 19:50:28 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 16:57:16 2009 +0100"
      },
      "message": "perf session: Move the global threads list to perf_session\n\nSo that we can process two perf.data files.\n\nWe still need to add a O_MMAP mode for perf_session so that we\ncan do all the mmap stuff in it.\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: \u003c1260741029-4430-5-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ec913369733923dbfd6bdff5953a918107059701",
      "tree": "4c4397f5de47bb1352bfed874919bb438b6e4816",
      "parents": [
        "13df45ca1c9a430d5f53862854070fcc324e015c"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Dec 13 19:50:27 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 16:57:16 2009 +0100"
      },
      "message": "perf session: Reduce the number of parms to perf_session__process_events\n\nBy having the cwd/cwdlen in the perf_session struct and\nfull_paths in perf_event_ops.\n\nNow its just a matter of passing the ops.\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: \u003c1260741029-4430-4-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "13df45ca1c9a430d5f53862854070fcc324e015c",
      "tree": "d20c0bfe5d0caedb2f2dd1f0959255127a7e9a26",
      "parents": [
        "301a0b020210360c6e441c7765521248bc87d58e"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Dec 13 19:50:26 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 16:57:15 2009 +0100"
      },
      "message": "perf session: Register the idle thread in perf_session__process_events\n\nNo need for all tools to register it and then immediately call\nperf_session__process_events.\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: \u003c1260741029-4430-3-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "301a0b020210360c6e441c7765521248bc87d58e",
      "tree": "5321a8ab67584d0aac0e3df9a749df1b4206460b",
      "parents": [
        "d8f66248d6f25f7c935cc5307c43bf394db07272"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Dec 13 19:50:25 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 16:57:15 2009 +0100"
      },
      "message": "perf session: Ditch register_perf_file_handler\n\nPass the event_ops to perf_session__process_events instead.\n\nAlso move the event_ops definition to session.h, starting to\nmove things around to their right place, trimming the many\nunneeded headers we have.\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: \u003c1260741029-4430-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d8f66248d6f25f7c935cc5307c43bf394db07272",
      "tree": "f30b5512dd08e6a8713fa9fde158c75d57ce1d6b",
      "parents": [
        "2cd9046cc53dd2625e2cf5854d6cbb1ba61de914"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Dec 13 19:50:24 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 16:57:13 2009 +0100"
      },
      "message": "perf session: Pass the perf_session to the event handling operations\n\nThey will need it to get the right threads list, etc.\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: \u003c1260741029-4430-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "94c744b6c0c6c5802a85ebfebbec429ac5851f2b",
      "tree": "e34dcaca54f1d7752ab1e7974bb73f94ff3cf94c",
      "parents": [
        "ea08d8cbd162fe3756e3e2298efbe0b8b12f92d1"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Dec 11 21:24:02 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Dec 12 07:42:12 2009 +0100"
      },
      "message": "perf tools: Introduce perf_session class\n\nThat does all the initialization boilerplate, opening the file,\nreading the header, checking if it is valid, etc.\n\nAnd that will as well have the threads list, kmap (now) global\nvariable, etc, so that we can handle two (or more) perf.data files\ndescribing sessions to compare.\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: \u003c1260573842-19720-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9958e1f0aee632c3665162c9c93cf8fde8006a94",
      "tree": "ffd81c34d3ca8044c3fe0d670dc1786113624bbb",
      "parents": [
        "58e9f94138c1d9c47f6a63632ca7a78fc6dcc15f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Dec 11 14:50:36 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Dec 12 07:42:09 2009 +0100"
      },
      "message": "perf symbols: Rename kthreads to kmaps, using another abstraction for it\n\nUsing a struct thread instance just to hold the kernel space maps\n(vmlinux + modules) is overkill and confuses people trying to\nunderstand the perf symbols abstractions.\n\nThe kernel maps are really present in all threads, i.e. the kernel\nis a library, not a separate thread.\n\nSo introduce the \u0027map_groups\u0027 abstraction and use it for the kernel\nmaps, now in the kmaps global variable.\n\nIt, in turn, will move, together with the threads list to the\nperf_file abstraction, so that we can support multiple perf_file\ninstances, needed by perf diff.\n\nBrainstormed-with: Eduardo Habkost \u003cehabkost@redhat.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Eduardo Habkost \u003cehabkost@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: \u003c1260550239-5372-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7931241694b25589658b1ceb02218d2750540ae0",
      "tree": "79cf096d9045b4b242a21f36793ac2bc503f9b0c",
      "parents": [
        "716d69e4fda0563ef67d62ee44baa17b377b9b23"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 10 08:43:34 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 10 08:44:39 2009 +0100"
      },
      "message": "perf kmem: Fix unused argument build warning\n\nFix:\n\n builtin-kmem.c: In function \u0027parse_caller_opt\u0027:\n builtin-kmem.c:690: error: unused parameter \u0027arg\u0027\n builtin-kmem.c: In function \u0027parse_alloc_opt\u0027:\n builtin-kmem.c:697: error: unused parameter \u0027arg\u0027\n\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nLKML-Reference: \u003c4B20A195.8030106@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "90b86a9f7dc22e7ff8e8c79ed553860454ff8dd9",
      "tree": "3cb7015aa85ed6410eb9947f9bfd607f74f36f95",
      "parents": [
        "1bbfa6f25673019dc0acc9308b667c96f6cda8bf"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Dec 10 15:21:57 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 10 08:30:27 2009 +0100"
      },
      "message": "perf kmem: Show usage if no option is specified\n\nAs Ingo suggested, make \"perf kmem\" show help information.\n\"perf kmem stat [--caller] [--alloc] ..\" will show memory\nstatistics.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nLKML-Reference: \u003c4B20A195.8030106@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f48f669d42e133db839af16656fd720107ef6742",
      "tree": "0fbc78abb79390ba22c40b48e1684f1f8b5badcb",
      "parents": [
        "d9541ed3241bb6c2b805d3ea0e87563cf2a0c5c3"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Mon Dec 07 13:04:04 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 07 06:26:25 2009 +0100"
      },
      "message": "perf_event: Eliminate raw-\u003esize\n\nraw-\u003esize is not used, this patch just cleans it up.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B1C8CC4.4050007@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d8bd9e0aedabcb47887712497bc386a06ddcbd12",
      "tree": "b8fbdb8987323a3b572554ebe00487d444abfec4",
      "parents": [
        "c0777c5aa835a97ccc77d82e55388940f0140a61"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Mon Dec 07 12:06:29 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 07 06:26:24 2009 +0100"
      },
      "message": "perf_event: Fix raw event processing\n\nWe use \u0027data.raw_data\u0027 parameter to call process_raw_event(),\nbut data.raw_data buffer not include data size. it can make perf\ntool crash.\n\nThis bug was introduced by commit 180f95e29a (\"perf: Make common\nSAMPLE_EVENT parser\").\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B1C7F45.5080105@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "180f95e29aa8782c019caa64ede2a28d8ab62564",
      "tree": "eefd1631820b00992f4495cc8cdba66a9155ee6c",
      "parents": [
        "028c515253761084c6594bf9ac9b194b51d87065"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Sun Dec 06 20:08:24 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Dec 06 18:15:01 2009 +0100"
      },
      "message": "perf: Make common SAMPLE_EVENT parser\n\nCurrently, sample event data is parsed for each commands, and it\nis assuming that the data is not including other data. (E.g.\ntimechart, trace, etc. can\u0027t parse the event if it has\nPERF_SAMPLE_CALLCHAIN)\n\nSo, even if we record the superset data for multiple commands at\na time, commands can\u0027t parse. etc.\n\nTo fix it, this makes common sample event parser, and use it to\nparse sample event correctly. (PERF_SAMPLE_READ is unsupported\nfor now though, it seems to be not using.)\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\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: \u003c87hbs48imv.fsf@devron.myhome.or.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1ed091c45ae33b2179d387573c3fe3f3b4adf60a",
      "tree": "d2b689de158e5a11673b5f0d08b491d243768138",
      "parents": [
        "62daacb51a2bf8480e6f6b3696b03f102fc15eb0"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Nov 27 16:29:23 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 27 20:22:02 2009 +0100"
      },
      "message": "perf tools: Consolidate symbol resolving across all tools\n\nNow we have a very high level routine for simple tools to\nprocess IP sample events:\n\n\tint event__preprocess_sample(const event_t *self,\n\t\t\t\t     struct addr_location *al,\n\t\t\t\t     symbol_filter_t filter)\n\nIt receives the event itself and will insert new threads in the\nglobal threads list and resolve the map and symbol, filling all\nthis info into the new addr_location struct, so that tools like\nannotate and report can further process the event by creating\nhist_entries in their specific way (with or without callgraphs,\netc).\n\nIt in turn uses the new next layer function:\n\n\tvoid thread__find_addr_location(struct thread *self, u8 cpumode,\n\t\t\t\t\tenum map_type type, u64 addr,\n\t\t\t\t\tstruct addr_location *al,\n\t\t\t\t\tsymbol_filter_t filter)\n\nThis one will, given a thread (userspace or the kernel kthread\none), will find the given type (MAP__FUNCTION now, MAP__VARIABLE\ntoo in the near future) at the given cpumode, taking vdsos into\naccount (userspace hit, but kernel symbol) and will fill all\nthese details in the addr_location given.\n\nTools that need a more compact API for plain function\nresolution, like \u0027kmem\u0027, can use this other one:\n\n\tstruct symbol *thread__find_function(struct thread *self, u64 addr,\n\t\t\t\t\t     symbol_filter_t filter)\n\nSo, to resolve a kernel symbol, that is all the \u0027kmem\u0027 tool\nneeds, its just a matter of calling:\n\n\tsym \u003d thread__find_function(kthread, addr, NULL);\n\nThe \u0027filter\u0027 parameter is needed because we do lazy\nparsing/loading of ELF symtabs or /proc/kallsyms.\n\nWith this we remove more code duplication all around, which is\nalways good, huh? :-)\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: John Kacur \u003cjkacur@redhat.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: \u003c1259346563-12568-12-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "62daacb51a2bf8480e6f6b3696b03f102fc15eb0",
      "tree": "5b9ed87005a5e59bcc95dd9a42e3d09d6481362d",
      "parents": [
        "1de8e24520ffdcf2a90c842eed937f59079a2abd"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Nov 27 16:29:22 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 27 20:22:01 2009 +0100"
      },
      "message": "perf tools: Reorganize event processing routines, lotsa dups killed\n\nWhile implementing event__preprocess_sample, that will do all of\nthe symbol lookup in one convenient function, I noticed that\nutil/process_event.[ch] were not being used at all, then started\nlooking if there were other functions that could be shared\nand...\n\nAll those functions really don\u0027t need to receive offset + head,\nthe only thing they did was common to all of them, so do it at\none place instead.\n\nStats about number of each type of event processed now is done\nin a central place.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: John Kacur \u003cjkacur@redhat.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: \u003c1259346563-12568-11-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fcf1203a919c3a3d212c0ed01f5240fd592bf5ae",
      "tree": "bd7a9f796882c5b01fabc4afe2bdea6ac74c2098",
      "parents": [
        "727dad10c17cbaade3cb6a56bd4863a4630f4d13"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Nov 24 13:01:52 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 24 16:37:03 2009 +0100"
      },
      "message": "perf symbols: Rename find_symbol routines to find_function\n\nPaving the way for supporting variable in adition to function\nsymbols.\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: \u003c1259074912-5924-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b32d133aec5dc882cf783a293f393bfb3f4379e1",
      "tree": "41fc56a4aaec8892a235ffd530b36278d147dc4e",
      "parents": [
        "7cc017edb9459193d3b581155a14029e4bef0c49"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Nov 24 12:05:15 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 24 16:37:02 2009 +0100"
      },
      "message": "perf symbols: Simplify symbol machinery setup\n\nAnd also express its configuration toggles via a struct.\n\nNow all one has to do is to call symbol__init(NULL) if the\ndefaults are OK, or pass a struct symbol_conf pointer with the\ndesired configuration.\n\nIf a tool uses kernel_maps__find_symbol() to look at the kernel\nand modules mappings for a symbol but didn\u0027t call symbol__init()\nfirst, that will generate a one time warning too, alerting the\nsubcommand developer that symbol__init() must be called.\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: \u003c1259071517-3242-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "079d3f653134e2f2ac99dae28b08c0cc64268103",
      "tree": "f2b5b4a7ca276f7db6c96c14eaa87d1fe01aef93",
      "parents": [
        "7d0d39459dab20bf60cac30a1a7d50b286c60cc1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Nov 24 13:26:55 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 24 08:49:50 2009 +0100"
      },
      "message": "perf kmem: Measure kmalloc/kfree CPU ping-pong call-sites\n\nShow statistics for allocations and frees on different cpus:\n\n------------------------------------------------------------------------------------------------------\nCallsite                           | Total_alloc/Per | Total_req/Per   | Hit   | Ping-pong | Frag\n------------------------------------------------------------------------------------------------------\n perf_event_alloc.clone.0+0         |      7504/682   |      7128/648   |     11 |        0 |  5.011%\n alloc_buffer_head+16               |       288/57    |       280/56    |      5 |        0 |  2.778%\n radix_tree_preload+51              |       296/296   |       288/288   |      1 |        0 |  2.703%\n tracepoint_add_probe+32e           |       157/31    |       154/30    |      5 |        0 |  1.911%\n do_maps_open+0                     |       796/12    |       792/12    |     66 |        0 |  0.503%\n sock_alloc_send_pskb+16e           |     23780/495   |     23744/494   |     48 |       38 |  0.151%\n anon_vma_prepare+9a                |      3744/44    |      3740/44    |     85 |        0 |  0.107%\n d_alloc+21                         |     64948/164   |     64944/164   |    396 |        0 |  0.006%\n proc_alloc_inode+23                |    262292/676   |    262288/676   |    388 |        0 |  0.002%\n create_object+28                   |    459600/200   |    459600/200   |   2298 |       71 |  0.000%\n journal_start+67                   |     14440/40    |     14440/40    |    361 |        0 |  0.000%\n get_empty_filp+df                  |     53504/256   |     53504/256   |    209 |        0 |  0.000%\n getname+2a                         |    823296/4096  |    823296/4096  |    201 |        0 |  0.000%\n seq_read+2b0                       |    544768/4096  |    544768/4096  |    133 |        0 |  0.000%\n seq_open+6d                        |     17024/128   |     17024/128   |    133 |        0 |  0.000%\n mmap_region+2e6                    |     11704/88    |     11704/88    |    133 |        0 |  0.000%\n single_open+0                      |      1072/16    |      1072/16    |     67 |        0 |  0.000%\n __alloc_skb+2e                     |     12544/256   |     12544/256   |     49 |       38 |  0.000%\n __sigqueue_alloc+4a                |      1296/144   |      1296/144   |      9 |        8 |  0.000%\n tracepoint_add_probe+6f            |        80/16    |        80/16    |      5 |        0 |  0.000%\n------------------------------------------------------------------------------------------------------\n...\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: linux-mm@kvack.org \u003clinux-mm@kvack.org\u003e\nLKML-Reference: \u003c4B0B6E9F.6020309@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7d0d39459dab20bf60cac30a1a7d50b286c60cc1",
      "tree": "95d6e01ef1f5d6d5e14282148af5c5906c4e0e7d",
      "parents": [
        "29b3e15289eb66788a0bf5ea4903f9fbeb1ec751"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Nov 24 13:26:31 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 24 08:49:50 2009 +0100"
      },
      "message": "perf kmem: Collect cross node allocation statistics\n\nShow cross node memory allocations:\n\n # ./perf kmem\n\n SUMMARY\n \u003d\u003d\u003d\u003d\u003d\u003d\u003d\n ...\n Cross node allocations: 0/3633\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: linux-mm@kvack.org \u003clinux-mm@kvack.org\u003e\nLKML-Reference: \u003c4B0B6E87.10906@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "29b3e15289eb66788a0bf5ea4903f9fbeb1ec751",
      "tree": "a7169a54cb24ac140b6b821a014db30a4ee292b7",
      "parents": [
        "7707b6b6f8d9188b612f9fc88c65411264b1ed57"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Nov 24 13:26:10 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 24 08:49:49 2009 +0100"
      },
      "message": "perf kmem: Default to sort by fragmentation\n\nMake the output sort by fragmentation by default.\n\nAlso make the usage of \"--sort\" option consistent with other\nperf tools. That is, we support multi keys: \"--sort\nkey1[,key2]...\".\n\n # ./perf kmem --stat caller\n ------------------------------------------------------------------------------\n Callsite                    |Total_alloc/Per | Total_req/Per | Hit  | Frag\n ------------------------------------------------------------------------------\n __netdev_alloc_skb+23       |    5048/1682   |    4564/1521  |     3|   9.588%\n perf_event_alloc.clone.0+0  |    7504/682    |    7128/648   |    11|   5.011%\n tracepoint_add_probe+32e    |     157/31     |     154/30    |     5|   1.911%\n alloc_buffer_head+16        |     456/57     |     448/56    |     8|   1.754%\n radix_tree_preload+51       |     584/292    |     576/288   |     2|   1.370%\n ...\n\nTODO:\n- Extract duplicate code in builtin-kmem.c and builtin-sched.c\n  into util/sort.c.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: linux-mm@kvack.org \u003clinux-mm@kvack.org\u003e\nLKML-Reference: \u003c4B0B6E72.7010200@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7707b6b6f8d9188b612f9fc88c65411264b1ed57",
      "tree": "f2095e162560e32a9739898ab5fcd1bd7d24f14b",
      "parents": [
        "ee3d250446f1c1be4eceab48f3a23794d9a6564c"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Nov 24 13:25:48 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 24 08:49:49 2009 +0100"
      },
      "message": "perf kmem: Add new option to show raw ip\n\nAdd option \"--raw-ip\" to show raw ip instead of symbols:\n\n # ./perf kmem --stat caller --raw-ip\n ------------------------------------------------------------------------------\n Callsite                    |Total_alloc/Per | Total_req/Per | Hit  | Frag\n ------------------------------------------------------------------------------\n 0xc05301aa                  |  733184/4096   |  733184/4096  |   179|   0.000%\n 0xc0542ba0                  |  483328/4096   |  483328/4096  |   118|   0.000%\n ...\n\nAlso show symbols with format sym+offset instead of sym/offset.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: linux-mm@kvack.org \u003clinux-mm@kvack.org\u003e\nLKML-Reference: \u003c4B0B6E5C.4080900@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1b145ae58035f30353d78d25bea665091df9b438",
      "tree": "78cf5fcdbb98d2e0d15a0499246e0d065614a586",
      "parents": [
        "2890284bcf5c13c10fae8a0c20ad2f575118a092"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Nov 23 17:51:09 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 23 21:55:20 2009 +0100"
      },
      "message": "perf kmem: Resolve symbols\n\nE.g.:\n\n  [root@doppio linux-2.6-tip]# perf kmem record sleep 3s\n  [ perf record: Woken up 2 times to write data ]\n  [ perf record: Captured and wrote 0.804 MB perf.data (~35105 samples) ]\n\n  [root@doppio linux-2.6-tip]# perf kmem --stat caller | head -10\n  ------------------------------------------------------------------------------\n  Callsite                    |Total_alloc/Per | Total_req/Per | Hit  | Frag\n  ------------------------------------------------------------------------------\n  getname/40                  | 1519616/4096   | 1519616/4096  |   371|   0.000%\n  seq_read/a2                 |  987136/4096   |  987136/4096  |   241|   0.000%\n  __netdev_alloc_skb/43       |  260368/1049   |  259968/1048  |   248|   0.154%\n  __alloc_skb/5a              |   77312/256    |   77312/256   |   302|   0.000%\n  proc_alloc_inode/33         |   76480/632    |   76472/632   |   121|   0.010%\n  get_empty_filp/8d           |   70272/192    |   70272/192   |   366|   0.000%\n  split_vma/8e                |   42064/176    |   42064/176   |   239|   0.000%\n  [root@doppio linux-2.6-tip]#\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: linux-mm@kvack.org \u003clinux-mm@kvack.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.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\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1259005869-13487-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cc612d8199089413719397c9d92e5823da578eac",
      "tree": "aec84294a839bc82b738326ed5f338e6ebc47a30",
      "parents": [
        "1b290d670ffa883b7e062177463a8efd00eaa2c1"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Nov 23 16:39:10 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 23 19:51:48 2009 +0100"
      },
      "message": "perf symbols: Look for vmlinux in more places\n\nNow that we can check the buildid to see if it really matches,\nthis can be done safely:\n\n  vmlinux\n  /boot/vmlinux\n  /boot/vmlinux-\u003cuts.release\u003e\n  /lib/modules/\u003cuts.release\u003e/build/vmlinux\n  /usr/lib/debug/lib/modules/%s/vmlinux\n\nMore can be added - if you know about distros that put the\nvmlinux somewhere else please let us know.\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: \u003c1259001550-8194-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f3ced7cdb24e7968a353d828955fa2daf4167e72",
      "tree": "b7dad79eda3ca8a779ce1c5e467855ea67934335",
      "parents": [
        "96b02d78a7e47cd189f6b307c5513fec6b2155dc"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Sun Nov 22 11:58:00 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 22 11:21:37 2009 +0100"
      },
      "message": "perf kmem: Add --sort hit and --sort frag\n\nThis patch adds support for \"--sort hit\" and \"--sort frag\" to\nthe \"perf kmem\" tool. The former was already mentioned in the\nhelp text and the latter is useful for finding call-sites that\nexhibit worst case behavior for SLAB allocators.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: 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: \u003c1258883880-7149-1-git-send-email-penberg@cs.helsinki.fi\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"
    }
  ]
}
