)]}'
{
  "log": [
    {
      "commit": "5ad90e4ea4a096af9f0a362e34dfae5686a191ef",
      "tree": "f537aae3fd9e04395658c19cc97a401431c972fa",
      "parents": [
        "62e3436b5f3461662929eae102beefbd12127cb1"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed May 26 13:26:02 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed May 26 13:26:02 2010 -0300"
      },
      "message": "perf symbols: Add the build id cache to the vmlinux path\n\nSo that if the kernel DSO has a build id because record inserted it in\nthe perf.data build id table in the header, or a BUILD_ID event was\ninserted in the stream, we first look at the build id cache\n($HOME/.debug/).\n\nIf we find it there, try to use it, allowing offline annotation in\naddition to \u0027perf report\u0027.\n\nReported-by: Stephane Eranian \u003ceranian@google.com\u003e\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\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": "edb7c60e27c1baff38d82440dc52eaffac9a45f4",
      "tree": "fc49d1f862fd5f1393c8b6245d571d97b208d91a",
      "parents": [
        "8035458fbb567ae138c77a5f710050107c6a7066"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon May 17 16:22:41 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon May 17 16:22:41 2010 -0300"
      },
      "message": "perf options: Type check all the remaining OPT_ variants\n\nOPT_SET_INT was renamed to OPT_SET_UINT since the only use in these\ntools is to set something that has an enum type, that is builtin\ncompatible with unsigned int.\n\nSeveral string constifications were done to make OPT_STRING require a\nconst char * type.\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\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": "1967936d688c475b85d34d84e09858cf514c893c",
      "tree": "e9788fe79c7d2af4ad1fab0d9cfe4b3822f468ff",
      "parents": [
        "c100edbee8dbf033ec4095a976a74c1c75c9fc1d"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon May 17 15:39:16 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon May 17 15:43:38 2010 -0300"
      },
      "message": "perf options: Check v type in OPT_U?INTEGER\n\nTo avoid problems like the one fixed by Stephane Eranian in 3de29ca, now\nwe\u0027ll got this instead:\n\n\tbench/sched-messaging.c:259: error: negative width in bit-field ‘\u003canonymous\u003e’\n\tbench/sched-messaging.c:261: error: negative width in bit-field ‘\u003canonymous\u003e’\n\nWhich is rather cryptic, but is how BUILD_BUG_ON_ZERO works, so kernel\nhackers should be already used to this.\n\nWith it in place found some problems, fixed by changing the affected\nvariables to sensible types or changed some OPT_INTEGER to OPT_UINTEGER.\n\nNext csets will go thru converting each of the remaining OPT_ so that\nreview can be made easier by grouping changes per type per patch.\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\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": "ab608344bcbde4f55ec4cd911b686b0ce3eae076",
      "tree": "ebd38efabfaab59d6de11a24143d70e1eec36fae",
      "parents": [
        "2b0b5c6fe9b383f3cf35a0a6371c9d577bd523ff"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Thu Apr 08 23:03:20 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri May 07 11:31:02 2010 +0200"
      },
      "message": "perf, x86: Improve the PEBS ABI\n\nRename perf_event_attr::precise to perf_event_attr::precise_ip and\nwiden it to 2 bits. This new field describes the required precision of\nthe PERF_SAMPLE_IP field:\n\n  0 - SAMPLE_IP can have arbitrary skid\n  1 - SAMPLE_IP must have constant skid\n  2 - SAMPLE_IP requested to have 0 skid\n  3 - SAMPLE_IP must have 0 skid\n\nAnd modify the Intel PEBS code accordingly. The PEBS implementation\nnow supports up to precise_ip \u003d\u003d 2, where we perform the IP fixup.\n\nAlso s/PERF_RECORD_MISC_EXACT/\u0026_IP/ to clarify its meaning, this bit\nshould be set for each PERF_SAMPLE_IP field known to match the actual\ninstruction triggering the event.\n\nThis new scheme allows for a PEBS mode that uses the buffer for more\nthan a single event.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\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": "cbf6968098f89d3216d074f06544b5032b344da4",
      "tree": "842750b609ec0ad6f246be03fc39f7614c98316f",
      "parents": [
        "d28c62232e50eab202bcd3f19b5c7a25b8b900b6"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Apr 27 21:22:44 2010 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Apr 27 21:22:44 2010 -0300"
      },
      "message": "perf machines: Make the machines class adopt the dsos__fprintf methods\n\nNow those methods don\u0027t operate on a global list of dsos, but on lists\nof machines, so make this clear by renaming the functions.\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: 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": "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": "c05556421742eb47f80301767653a4bcb19de9de",
      "tree": "1e9c441a457acee41d2585e05692cc90c1d88be2",
      "parents": [
        "53e5b5c215ce8372250e227f2c9acf9892de8434"
      ],
      "author": {
        "name": "Ian Munsie",
        "email": "imunsie@au.ibm.com",
        "time": "Tue Apr 13 18:37:33 2010 +1000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 14 11:26:44 2010 +0200"
      },
      "message": "perf: Fix endianness argument compatibility with OPT_BOOLEAN() and introduce OPT_INCR()\n\nParsing an option from the command line with OPT_BOOLEAN on a\nbool data type would not work on a big-endian machine due to the\nmanner in which the boolean was being cast into an int and\nincremented. For example, running \u0027perf probe --list\u0027 on a\nPowerPC machine would fail to properly set the list_events bool\nand would therefore print out the usage information and\nterminate.\n\nThis patch makes OPT_BOOLEAN work as expected with a bool\ndatatype. For cases where the original OPT_BOOLEAN was\nintentionally being used to increment an int each time it was\npassed in on the command line, this patch introduces OPT_INCR\nwith the old behaviour of OPT_BOOLEAN (the verbose variable is\ncurrently the only such example of this).\n\nI have reviewed every use of OPT_BOOLEAN to verify that a true\nC99 bool was passed. Where integers were used, I verified that\nthey were only being used for boolean logic and changed them to\nbools to ensure that they would not be mistakenly used as ints.\nThe major exception was the verbose variable which now uses\nOPT_INCR instead of OPT_BOOLEAN.\n\nSigned-off-by: Ian Munsie \u003cimunsie@au.ibm.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: \u003cstable@kernel.org\u003e # NOTE: wont apply to .3[34].x cleanly, please backport\nCc: Git development list \u003cgit@vger.kernel.org\u003e\nCc: Ian Munsie \u003cimunsie@au1.ibm.com\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: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Hitoshi Mitake \u003cmitake@dcl.info.waseda.ac.jp\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Eric B Munson \u003cebmunson@us.ibm.com\u003e\nCc: Valdis.Kletnieks@vt.edu\nCc: WANG Cong \u003camwang@redhat.com\u003e\nCc: Thiago Farina \u003ctfransosi@gmail.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nCc: Jaswinder Singh Rajput \u003cjaswinderrajput@gmail.com\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nCc: John Kacur \u003cjkacur@redhat.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1271147857-11604-1-git-send-email-imunsie@au.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5a10317483f606106395814ee2fdaa2f1256a3b3",
      "tree": "34b5258334dface9664ef24eee5ed94c6c8a165b",
      "parents": [
        "5aab621b7bf024608f0c089e21656e7fe875a150"
      ],
      "author": {
        "name": "Zhang, Yanmin",
        "email": "yanmin_zhang@linux.intel.com",
        "time": "Thu Mar 25 19:59:01 2010 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 26 08:52:59 2010 +0100"
      },
      "message": "perf record: Zero out mmap_array to fix segfault\n\nReported-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nTested-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Zhang Yanmin \u003cyanmin_zhang@linux.intel.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003c1269557941-15617-6-git-send-email-acme@infradead.org\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d6d901c23a9c4c7361aa901b5b2dda69703dd5e0",
      "tree": "601fc2cafac552c80b8456c8dd4b9964171552db",
      "parents": [
        "46be604b5ba738d53e5f5314813a4e7092864baf"
      ],
      "author": {
        "name": "Zhang, Yanmin",
        "email": "yanmin_zhang@linux.intel.com",
        "time": "Thu Mar 18 11:36:05 2010 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 18 16:21:12 2010 +0100"
      },
      "message": "perf events: Change perf parameter --pid to process-wide collection instead of thread-wide\n\nParameter --pid (or -p) of perf currently means a thread-wide\ncollection. For exmaple, if a process whose id is 8888 has 10\nthreads, \u0027perf top -p 8888\u0027 just collects the main thread\nstatistics. That\u0027s misleading. Users are used to attach a whole\nprocess when debugging a process by gdb. To follow normal usage\nstyle, the patch change --pid to process-wide collection and add\n--tid (-t) to mean a thread-wide collection.\n\nUsage example is:\n\n # perf top -p 8888\n # perf record -p 8888 -f sleep 10\n # perf stat -p 8888 -f sleep 10\n\nAbove commands collect the statistics of all threads of process\n8888.\n\nSigned-off-by: Zhang Yanmin \u003cyanmin_zhang@linux.intel.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Sheng Yang \u003csheng@linux.intel.com\u003e\nCc: Joerg Roedel \u003cjoro@8bytes.org\u003e\nCc: Jes Sorensen \u003cJes.Sorensen@redhat.com\u003e\nCc: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nCc: Gleb Natapov \u003cgleb@redhat.com\u003e\nCc: zhiteng.huang@intel.com\nCc: Zachary Amsden \u003czamsden@redhat.com\u003e\nLKML-Reference: \u003c1268922965-14774-3-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e4713e93b125497e9ba44d93de1bd9d8e5ad8946",
      "tree": "c57f865a10fc1b2419f83bcbbe4a46ee711a60a3",
      "parents": [
        "984763cb90d4b5444baa0c3e43feff7926bf1834",
        "a6b84574eed7e4fd8cb8dac2d0926fe2cf34b941"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 17 11:31:45 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 17 11:31:48 2010 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: We\u0027ll be queueing dependent changes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "00909e955125e90a6ebb34671c56c4c851e62951",
      "tree": "b34dd00db05ec69cf74125eaac7b83db6b6fb2c8",
      "parents": [
        "d0cb4260f899d07462d49fc67e29f2438dbaca2f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 16 18:28:46 2010 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 16 22:51:00 2010 +0100"
      },
      "message": "perf top: Add missing initialization to zero\n\nThe dso_short_width has to start as zero, as we\u0027re calculating\nthe maximum short DSO name length, somehow I missed this one.\n\nReported-by: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1268774926-27488-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b63be8d7beda7fe5879559be6f70f8e1c93109e4",
      "tree": "f5bd2f8f24030539029d31a18ab18dc35f1cfdb2",
      "parents": [
        "fc6ceea045031658d0b59af562369eae980b4370"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Mar 15 15:03:50 2010 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 16 09:52:36 2010 +0100"
      },
      "message": "perf top: Improve the autosizing of column lenghts\n\nWhen profiling C++ workloads the symbol name length can be\nreally big, so cap it before it garbles the result.\n\nThis builds upon the autosizing already present where we choose\nto use the short, basename of DSOs instead of its long, full\npathname.\n\nReported-by: Pavel Krauz \u003ckrauz@cngroup.cz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1268676230-9261-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b0a9ab62ab96e258a0ddd81d7fe2719c3db36006",
      "tree": "f86b57423ac24262533a11fae4c5dc72f7b912bd",
      "parents": [
        "bedbfdea31daf3880745001d56450c683959ee7e"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Mar 15 11:46:58 2010 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 15 16:08:42 2010 +0100"
      },
      "message": "perf top: Properly notify the user that vmlinux is missing\n\nBefore this patch this message would very briefly appear on the\nscreen and then the screen would get updates only on the top,\nfor number of interrupts received, etc, but no annotation would\nbe performed:\n\n [root@doppio linux-2.6-tip]# perf top -s n_tty_write \u003e /tmp/bla\n objdump: \u0027[kernel.kallsyms]\u0027: No such file\n\nNow this is what the user gets:\n\n [root@doppio linux-2.6-tip]# perf top -s n_tty_write\n Can\u0027t annotate n_tty_write: No vmlinux file was found in the\n path: [0] vmlinux\n [1] /boot/vmlinux\n [2] /boot/vmlinux-2.6.33-rc5\n [3] /lib/modules/2.6.33-rc5/build/vmlinux\n [4] /usr/lib/debug/lib/modules/2.6.33-rc5/vmlinux\n [root@doppio linux-2.6-tip]#\n\nThis bug was introduced when we added automatic search for\nvmlinux, before that time the user had to specify a vmlinux\nfile.\n\nReported-by: David S. Miller \u003cdavem@davemloft.net\u003e\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: \u003cstable@kernel.org\u003e\nLKML-Reference: \u003c1268664418-28328-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "895f0edc3cd04a2a3de2c608ba20821b832a8abb",
      "tree": "7299c301e00077082553ccb0e0ca378a99c1cd22",
      "parents": [
        "fe2197b8bb2f318c1e0b0f589f24f781dd27d1f2"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Mar 11 20:12:41 2010 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 12 10:28:36 2010 +0100"
      },
      "message": "perf top: Export get_window_dimensions\n\nWill be used by the newt code 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: \u003c1268349164-5822-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "937779db13fb6cb621e28d9ae0a6cf1d05b57d05",
      "tree": "6c27402677c347c4dc01980de78c270630588847",
      "parents": [
        "6230f2c7ef01a69e2ba9370326572c287209d32a",
        "9f591fd76afdc0e5192e9ed00a36f8efc0b4dfe6"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 12 10:20:57 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 12 10:20:59 2010 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: We want to queue up a dependent patch.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a12b51c478899fe0b7e874a559b05ba35f1128ee",
      "tree": "25b9911c1932c13fd8b468aa18eb17982ba31b59",
      "parents": [
        "220b140b52ab6cc133f674a7ffec8fa792054f25"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Mar 10 20:36:09 2010 +1100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 11 13:36:53 2010 +0100"
      },
      "message": "perf tools: Fix sparse CPU numbering related bugs\n\nAt present, the perf subcommands that do system-wide monitoring\n(perf stat, perf record and perf top) don\u0027t work properly unless\nthe online cpus are numbered 0, 1, ..., N-1.  These tools ask\nfor the number of online cpus with sysconf(_SC_NPROCESSORS_ONLN)\nand then try to create events for cpus 0, 1, ..., N-1.\n\nThis creates problems for systems where the online cpus are\nnumbered sparsely.  For example, a POWER6 system in\nsingle-threaded mode (i.e. only running 1 hardware thread per\ncore) will have only even-numbered cpus online.\n\nThis fixes the problem by reading the /sys/devices/system/cpu/online\nfile to find out which cpus are online.  The code that does that is in\ntools/perf/util/cpumap.[ch], and consists of a read_cpu_map()\nfunction that sets up a cpumap[] array and returns the number of\nonline cpus.  If /sys/devices/system/cpu/online can\u0027t be read or\ncan\u0027t be parsed successfully, it falls back to using sysconf to\nask how many cpus are online and sets up an identity map in cpumap[].\n\nThe perf record, perf stat and perf top code then calls\nread_cpu_map() in the system-wide monitoring case (instead of\nsysconf) and uses cpumap[] to get the cpu numbers to pass to\nperf_event_open.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@infradead.org\u003e\nLKML-Reference: \u003c20100310093609.GA3959@brick.ozlabs.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1676b8a077c352085d52578fb4f29350b58b6e74",
      "tree": "95931b2f1c1f50d6459eb3f13e16c9d38a160383",
      "parents": [
        "ef21f683a045a79b6aa86ad81e5fdfc0d5ddd250"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Mar 04 14:19:36 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 10 13:23:33 2010 +0100"
      },
      "message": "perf-top: Show the percentage of successfull PEBS-fixups\n\nUse the PERF_RECORD_MISC_EXACT information to measure the success rate of\nthe PEBS fix-up.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@infradead.org\u003e\nCc: paulus@samba.org\nCc: eranian@google.com\nCc: robert.richter@amd.com\nCc: fweisbec@gmail.com\nLKML-Reference: \u003c20100304140100.694233760@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "018cbffe6819f6f8db20a0a3acd9bab9bfd667e4",
      "tree": "fadde2521591998dc653fa094c636e8a547e620d",
      "parents": [
        "1dd2980d990068e20045b90c424518cc7f3657ff",
        "60b341b778cc2929df16c0a504c91621b3c6a4ad"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Feb 27 16:18:46 2010 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Feb 27 16:18:46 2010 +0100"
      },
      "message": "Merge commit \u0027v2.6.33\u0027 into perf/core\n\nMerge reason:\n\t__percpu annotations need the corresponding sparse address\nspace definition upstream.\n\nConflicts:\n\ttools/perf/util/probe-event.c (trivial)\n"
    },
    {
      "commit": "c7ad21af2c8b7accb893a576b100296c61c5d610",
      "tree": "8f12dbcd9f6b2227e7d2c1e05cc9729c27433e60",
      "parents": [
        "37fe5fcb7a5b5235c8b71bf5469ce4c7246e3fab"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Feb 22 16:14:22 2010 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 25 12:26:16 2010 +0100"
      },
      "message": "perf top: Use a macro instead of a constant variable\n\nTo overcome a silly gcc warning:\n\n cc1: warnings being treated as errors\n builtin-top.c: In function ‘lookup_sym_source’:\n builtin-top.c:291: warning: not protecting local variables:\n variable length buffer make: *** [builtin-top.o] Error 1\n make: *** Waiting for unfinished jobs....\n\nThat is emitted for this:\n\n\tconst size_t pattern_len \u003d BITS_PER_LONG / 4 + 2;\n\tchar pattern[pattern_len + 1];\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: \u003c1266866062-6287-1-git-send-email-acme@infradead.org\u003e\n[ -v2: macroify the naming style ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1a72cfa6856e7d58e049c42c6e6a789669478479",
      "tree": "d5057413c79eab687412b4915fa71a53d39f84d1",
      "parents": [
        "7fbfc683f1cc4051aa095ebe48d9d1e8b015682d"
      ],
      "author": {
        "name": "Kirill Smelkov",
        "email": "kirr@landau.phys.spbu.ru",
        "time": "Fri Feb 12 19:20:59 2010 +0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 14 09:46:02 2010 +0100"
      },
      "message": "perf top: Fix help text alignment\n\nPrint this:\n\nMapped keys:\n        [d]     display refresh delay.                  (2)\n        [e]     display entries (lines).                (46)\n        [f]     profile display filter (count).         (5)\n        [F]     annotate display filter (percent).      (5%)\n        [s]     annotate symbol.                        (NULL)\n        [S]     stop annotation.\n        [K]     hide kernel_symbols symbols.            (no)\n        [U]     hide user symbols.                      (no)\n        [z]     toggle sample zeroing.                  (0)\n        [qQ]    quit.\n\ninstead of:\n\nMapped keys:\n        [d]     display refresh delay.                  (2)\n        [e]     display entries (lines).                (46)\n        [f]     profile display filter (count).         (5)\n        [F]     annotate display filter (percent).      (5%)\n        [s]     annotate symbol.                        (NULL)\n        [S]     stop annotation.\n        [K]     hide kernel_symbols symbols.                    (no)\n        [U]     hide user symbols.                      (no)\n        [z]     toggle sample zeroing.                  (0)\n        [qQ]    quit.\n\nSigned-off-by: Kirill Smelkov \u003ckirr@landau.phys.spbu.ru\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20100212162059.GA30041@landau.phys.spbu.ru\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5f485364365f00853e5249cb3ae31f876936b552",
      "tree": "52b2bf9ef3201b6190a5f2abcb398db3e139cb38",
      "parents": [
        "ee11b90b12eb1ec25e1044bac861e90bfd19ec9e"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Feb 07 11:46:16 2010 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 07 17:30:21 2010 +0100"
      },
      "message": "perf top: Use address pattern in lookup_sym_source\n\nBecause we may have aliases, like __GI___strcoll_l in\n/lib64/libc-2.10.2.so that appears in objdump as:\n\n$ objdump --start-address\u003d0x0000003715a86420 \\\n           --stop-address\u003d0x0000003715a872dc -dS /lib64/libc-2.10.2.so\n\n0000003715a86420 \u003c__strcoll_l\u003e:\n  3715a86420:\t55                   \tpush   %rbp\n  3715a86421:\t48 89 e5             \tmov    %rsp,%rbp\n  3715a86424:\t41 57                \tpush   %r15\n[root@doppio linux-2.6-tip]#\n\nSo look for the address exactly at the start of the line instead\nso that annotation can work for in these cases.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Kirill Smelkov \u003ckirr@landau.phys.spbu.ru\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: \u003c1265550376-12665-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ee11b90b12eb1ec25e1044bac861e90bfd19ec9e",
      "tree": "987838529d9b80246841d63755db48b1e87ce30c",
      "parents": [
        "5ecaafdbf44b1ba400b746c60c401d54c7ee0863"
      ],
      "author": {
        "name": "Kirill Smelkov",
        "email": "kirr@landau.phys.spbu.ru",
        "time": "Sun Feb 07 11:46:15 2010 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 07 17:30:20 2010 +0100"
      },
      "message": "perf top: Fix annotate for userspace\n\nFirst, for programs and prelinked libraries, annotate code was\nfooled by objdump output IPs (src-\u003eeip in the code) being\nwrongly converted to absolute IPs. In such case there were no\nconversion needed, but in\n\n   src-\u003eeip \u003d strtoull(src-\u003eline, NULL, 16);\n   src-\u003eeip \u003d map-\u003eunmap_ip(map, src-\u003eeip); // \u003d eip + map-\u003estart - map-\u003epgoff\n\nwe were reading absolute address from objdump (e.g. 8048604) and\nthen almost doubling it, because eip \u0026 map-\u003estart are\napproximately close for small programs.\n\nNeedless to say, that later, in record_precise_ip() there was no\nmatching with real runtime IPs.\n\nAnd second, like with `perf annotate` the problem with\nnon-prelinked *.so was that we were doing rip -\u003e objdump address\nconversion wrong.\n\nAlso, because unlike `perf annotate`, `perf top` code does\nannotation based on absolute IPs for performance reasons(*), new\nhelper for mapping objdump addresse to IP is introduced.\n\n(*) we get samples info in absolute IPs, and since we do lots of\n    hit-testing on absolute IPs at runtime in record_precise_ip(), it\u0027s\n    better to convert objdump addresses to IPs once and do no conversion\n    at runtime.\n\nI also had to fix how objdump output is parsed (with hardcoded\n8/16 characters format, which was inappropriate for ET_DYN dsos\nwith small addresses like \u00274ac\u0027)\n\nAlso note, that not all objdump output lines has associtated\nIPs, e.g. look at source lines here:\n\n    000004ac \u003cmy_strlen\u003e:\n    extern \"C\"\n    int my_strlen(const char *s)\n     4ac:   55                      push   %ebp\n     4ad:   89 e5                   mov    %esp,%ebp\n     4af:   83 ec 10                sub    $0x10,%esp\n    {\n        int len \u003d 0;\n     4b2:   c7 45 fc 00 00 00 00    movl   $0x0,-0x4(%ebp)\n     4b9:   eb 08                   jmp    4c3 \u003cmy_strlen+0x17\u003e\n\n        while (*s) {\n            ++len;\n     4bb:   83 45 fc 01             addl   $0x1,-0x4(%ebp)\n            ++s;\n     4bf:   83 45 08 01             addl   $0x1,0x8(%ebp)\n\nSo we mark them with eip\u003d0, and ignore such lines in annotate\nlookup code.\n\nSigned-off-by: Kirill Smelkov \u003ckirr@landau.phys.spbu.ru\u003e\n[ Note: one hunk of this patch was applied by Mike in 57d8188 ]\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c1265550376-12665-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "57d818895f9d294ab9080e5a662675fdee943ff1",
      "tree": "dbfeb6bd22bc6f7bb94e291ed3b8114a6bc85bc4",
      "parents": [
        "6cff0e8dbaa4d5d822a814e5028683d7e71c3291"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Thu Feb 04 07:31:46 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 04 09:33:28 2010 +0100"
      },
      "message": "perf annotate: Fix perf top module symbol annotation\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Kirill Smelkov \u003ckirr@landau.phys.spbu.ru\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@infradead.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1265265106.6364.5.camel@marge.simson.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6cff0e8dbaa4d5d822a814e5028683d7e71c3291",
      "tree": "c18d3d87b33b0d22b73990e0f7168b40149c00c5",
      "parents": [
        "7a2b6209863626cf8362e5ff4653491558f91e67"
      ],
      "author": {
        "name": "Kirill Smelkov",
        "email": "kirr@landau.phys.spbu.ru",
        "time": "Wed Feb 03 16:52:08 2010 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 04 09:33:28 2010 +0100"
      },
      "message": "perf top: Teach it to autolocate vmlinux\n\nBy relying on logic in dso__load_kernel_sym(), we can\nautomatically load vmlinux.\n\nThe only thing which needs to be adjusted, is how --sym-annotate\noption is handled - now we can\u0027t rely on vmlinux been loaded\nuntil full successful pass of dso__load_vmlinux(), but that\u0027s\nnot the case if we\u0027ll do sym_filter_entry setup in\nsymbol_filter().\n\nSo move this step right after event__process_sample() where we\nknow the whole dso__load_kernel_sym() pass is done.\n\nBy the way, though conceptually similar `perf top` still can\u0027t\nannotate userspace - see next patches with fixes.\n\nSigned-off-by: Kirill Smelkov \u003ckirr@landau.phys.spbu.ru\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c1265223128-11786-9-git-send-email-acme@infradead.org\u003e\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": "72b8fa1730207274f6818b47b891ce5dff79287e",
      "tree": "cc8fd9f816c3a3b9f251c9507f72bf9860b6b601",
      "parents": [
        "75c9f3284a7ff957829f44baace82406a6354ceb"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Jan 27 21:05:49 2010 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 29 09:20:57 2010 +0100"
      },
      "message": "perf top: Exit if specified --vmlinux can\u0027t be used\n\nAs we do lazy loading of symtabs we only will know if the\nspecified vmlinux file is invalid when we actually have a hit in\nkernel space and then try to load it. So if we get kernel hits\nand there are _no_ symbols in the DSO backing the kernel map,\nbail out.\n\nReported-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1264633557-17597-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0f35cd4cea08a8893e3e2ea03cbdb65f5d2b0e7a",
      "tree": "7746ee8a305bc057e35d41da2bbeb7253242eb99",
      "parents": [
        "24bfef0f924b4ac4312614422a4982b5f4d9a4c7"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Jan 21 13:04:44 2010 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 27 12:46:48 2010 +0100"
      },
      "message": "perf top: Handle PERF_RECORD_{FORK,EXIT} events\n\nAs noticed by Mike, symbols in new tasks were not being\nprocessed as we weren\u0027t processing these events.\n\nReported-by: Mike Galbraith \u003cefault@gmx.de\u003e\nTested-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1264086284-1431-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "24bfef0f924b4ac4312614422a4982b5f4d9a4c7",
      "tree": "1a92f748c8bee85fc300faf778945e70c3332a89",
      "parents": [
        "abd50713944c8ea9e0af5b7bffa0aacae21cc91a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Jan 21 13:04:43 2010 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 27 12:46:48 2010 +0100"
      },
      "message": "perf top: Fix sample counting\n\nBroken since \"5b2bb75 perf top: Support userspace symbols too\".\n\nReported-by: Mike Galbraith \u003cefault@gmx.de\u003e\nTested-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1264086284-1431-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "66aeb6d5cb701aedd508187e08612bfd1e108e2e",
      "tree": "b584f223c7ac757e003ae1b385e725abcefa5b06",
      "parents": [
        "0895cf0a823e03ea6d79736611e90186006c805e"
      ],
      "author": {
        "name": "Kirill Smelkov",
        "email": "kirr@landau.phys.spbu.ru",
        "time": "Wed Jan 13 13:22:19 2010 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 13 17:39:44 2010 +0100"
      },
      "message": "perf top: Fix code typo in prompt_symbol()\n\nsym_filter is what was (if ever) passed with -s option. What was\ntyped by user, and what we were looking for, is in buf.\n\nSigned-off-by: Kirill Smelkov \u003ckirr@landau.phys.spbu.ru\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003c1263396139-4798-3-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": "c410a33887c17cac95ed8b0d860cdfb5c087a7d8",
      "tree": "54fe6ed5ac64ff77763ff686af58bd36b04e73d6",
      "parents": [
        "655000e7c75a559681ee7f15f6fa870c80ae3194"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Dec 15 20:04:41 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 08:53:49 2009 +0100"
      },
      "message": "perf symbols: Move symbol filtering to event__preprocess_sample()\n\nSo that --dsos, --comm, --symbols can bem used in more tools,\nlike in perf diff:\n\n$ perf record -f find / \u003e /dev/null\n$ perf record -f find / \u003e /dev/null\n$ perf diff --dsos /lib64/libc-2.10.1.so | head -5\n   1        +22392124     /lib64/libc-2.10.1.so   _IO_vfprintf_internal\n   2         +6410655     /lib64/libc-2.10.1.so   __GI_memmove\n   3    +1   +9192692     /lib64/libc-2.10.1.so   _int_malloc\n   4    -1  -15158605     /lib64/libc-2.10.1.so   _int_free\n   5           +45669     /lib64/libc-2.10.1.so   _IO_new_file_xsputn\n$\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-3-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": "c249a4ce796b30b742bb4854bf3039ced12ef8e5",
      "tree": "f1f992df68e8ace8cb8f7a0a0460264217e13f7c",
      "parents": [
        "86a9eee047ba09a714c3b8e27c9df2bbf715393a"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Dec 15 03:15:22 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 15 08:52:31 2009 +0100"
      },
      "message": "perf tools: Make symbol_conf static\n\nperf top, report and annotate all define their own symbol_conf,\nit should be static.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1260843322-6602-1-git-send-regression-fweisbec@gmail.com\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": "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": "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": "95011c600740837288a3b34b411244a4d9157c4e",
      "tree": "f52496d2d378a338e7b0eee9b75e627bdfc4d2f1",
      "parents": [
        "23ea4a3fadc6b1692dec935397ea15e2affc1cba"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Nov 27 16:29:20 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 27 20:22:00 2009 +0100"
      },
      "message": "perf symbols: Support multiple symtabs in struct thread\n\nMaking the routines that were so far specific to the kernel maps\nuseful for all threads.\n\nThis is done by making the kernel maps be contained in a kernel\n\"thread\".\n\nThis gets the kernel specific routines closer to the userspace\ncounterparts, which will help in reducing the boilerplate for\nresolving a symbol, as will be demonstrated in the next patches.\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: \u003c1259346563-12568-9-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6a4694a433a218c729d336b348a01bfc720da095",
      "tree": "19c166d8cb244fa0ec504cd49f7de957552ce573",
      "parents": [
        "3610583c29563e23dd038d2870f59c88438bf7a3"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Nov 27 16:29:17 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 27 20:21:59 2009 +0100"
      },
      "message": "perf symbols: Better support for multiple symbol tables per dso\n\nBy using an array of rb_roots in struct dso we can, from a\nstruct map instance to get the right symbol rb_tree more easily.\nThis way we can have just one symbol lookup method for struct\nmap instances, map__find_symbol, instead of one per symtab type\n(functions, variables).\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: \u003c1259346563-12568-6-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3610583c29563e23dd038d2870f59c88438bf7a3",
      "tree": "cb8d20387bcc8e37b0db2432f339387a4fd52150",
      "parents": [
        "605ca4ba017455d39ac6991c58eb1e80fb8af48d"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Nov 27 16:29:16 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 27 20:21:59 2009 +0100"
      },
      "message": "perf symbols: Add a \u0027type\u0027 field to struct map\n\nThat way we will be able to check if the right symtab is loaded\nin the underlying DSO.\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: \u003c1259346563-12568-5-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": "364794845cbc49e638b83d7ef739524291e1e961",
      "tree": "e720975b26d307d6566afb9305c9f6e44290a7da",
      "parents": [
        "b32d133aec5dc882cf783a293f393bfb3f4379e1"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Nov 24 12:05:16 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 24 16:37:02 2009 +0100"
      },
      "message": "perf tools: Introduce zalloc() for the common calloc(1, N) case\n\nThis way we type less characters and it looks more like the\nkzalloc kernel counterpart.\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-3-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": "7cc017edb9459193d3b581155a14029e4bef0c49",
      "tree": "030c69f7688a83dceee4172bf6fc73606d842130",
      "parents": [
        "e74328d3a17ed75ffdf72b86f289965823a47240"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Nov 24 12:05:14 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 24 16:37:02 2009 +0100"
      },
      "message": "perf top: Always show the DSO column, even if its all the same\n\nIngo found it confusing, and I agree with that, for \u0027perf\nreport\u0027 its OK because it is static, but for a tool refreshing\nit the eventual switch from column to summary at the top may\nseem confusing.\n\nSuggested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1259071517-3242-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2890284bcf5c13c10fae8a0c20ad2f575118a092",
      "tree": "0e4bebc7afcb7bab0fe8c6ec7ced9991ec5a48cd",
      "parents": [
        "cc612d8199089413719397c9d92e5823da578eac"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Nov 23 17:51:08 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 23 21:55:20 2009 +0100"
      },
      "message": "perf tools: Move graph_line and graph_dotted_line from top\n\nSo that they can be used in other tools.\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: \u003c1259005869-13487-1-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": "c338aee853db197e1855b393e6d6cc667784537f",
      "tree": "f97fea21c608a689144302b8dd78ef29bfaa5c88",
      "parents": [
        "78075caad99dc36ec6ef5826b7a5273ea14295fc"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Nov 20 20:51:27 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Nov 21 14:11:33 2009 +0100"
      },
      "message": "perf symbols: Do lazy symtab loading for the kernel \u0026 modules too\n\nJust like we do with the other DSOs. This also simplifies the\nkernel_maps setup process, now all that the tools need to do is\nto call kernel_maps__init and the maps for the modules and\nkernel will be created, then, later, when\nkernel_maps__find_symbol() is used, it will also call\nmaps__find_symbol that already checks if the symtab was loaded,\nloading it if needed.\n\nNow if one does \u0027perf top --hide_kernel_symbols\u0027 we won\u0027t pay\nthe price of loading the (many) symbols in /proc/kallsyms or\nvmlinux.\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: \u003c1258757489-5978-4-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6671cb1674e69e2aba3d610714bdd3e97a7b51ff",
      "tree": "61eb72c744c19086b272af4b3da21ef959ae35d5",
      "parents": [
        "96200591a34f8ecb98481c626125df43a2463b55"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Nov 20 20:51:24 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Nov 21 14:11:32 2009 +0100"
      },
      "message": "perf symbols: Remove unrelated actions from dso__load_kernel_sym\n\nIt should just load kernel symbols, not load the list of\nmodules. There are more stuff to move to other routines, but\nlets do it in several steps.\n\nEnd goal is to be able to defer symbol table loading till we\nfind a hit for that map address range. So that the kernel \u0026\nmodules are handled just like all the other DSOs in the system.\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: \u003c1258757489-5978-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2446042c93bfc6eeebfc89e88fdef2435d2bb5c4",
      "tree": "3b442923926652127331449cf9a2da811a8fca4a",
      "parents": [
        "f1617b40596cb341ee6602a9d969c5e4cebe9260"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Nov 18 20:20:53 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 19 08:28:13 2009 +0100"
      },
      "message": "perf symbols: Capture the running kernel buildid too\n\n[root@doppio linux-2.6-tip]# perf record -a -f sleep 3s ; perf\nbuildid-list | grep vmlinux\n[ perf record: Woken up 1 times to write data ]\n[ perf record: Captured and wrote 0.171 MB perf.data (~7489\nsamples) ] 18e7cc53db62a7d35e9d6f6c9ddc23017d38ee9a vmlinux\n[root@doppio linux-2.6-tip]#\n\nSeveral refactorings were needed so that we can have symmetry\nbetween dsos__load_modules() and dsos__load_kernel(), i.e. those\nfunctions will respectively create and add to the dsos list the\nloaded modules and kernel, with its buildids, but not load its\nsymbols. That is something the subcomands that need will have to\ncall dso__load_kernel_sym(), just like we do with modules with\ndsos__load_module_sym()/dso__load_module_sym().\n\nNext csets will actually use this info to stop producing bogus\nresults using mismatched vmlinux and .ko files.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Roland McGrath \u003croland@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: \u003c1258582853-8579-4-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b269876c8d57fb8c801bea1fc34b461646c5abd0",
      "tree": "c9ac282b3a5f2d18a865180eb85c888f9e8cd338",
      "parents": [
        "5a8e5a3065bf04b7673262fd6c46123e4b888d2b"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Nov 17 18:38:02 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 19 06:03:41 2009 +0100"
      },
      "message": "perf top: Don\u0027t allocate the source parsing members upfront\n\nDefer to parse_source() time allocating it.\n\nNow we use about this much memory:\n\n 1724 root      20   0 42104  10m  940 S  0.0  0.4   0:00.23 perf\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: \u003c1258490282-1821-3-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5a8e5a3065bf04b7673262fd6c46123e4b888d2b",
      "tree": "efd85b86b8904a2a551f603a45e3ec0199ec7539",
      "parents": [
        "51a472decb845e920137284a5cfef51fb7d61206"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Nov 17 18:38:01 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 19 06:03:40 2009 +0100"
      },
      "message": "perf top: Allocate space only for the number of counters used\n\nReducing memory consumption on a typical desktop machine:\n\nFrom:\n\n32710 root      20   0  172m 142m 1056 S  0.0  4.7   0:00.37\nperf\n\nTo:\n\n  420 root      20   0 47528  16m 1056 R  0.3  0.5   0:00.24 perf\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: \u003c1258490282-1821-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "51a472decb845e920137284a5cfef51fb7d61206",
      "tree": "73afe582cf006532f3c21cb3495e07c09b60c0e6",
      "parents": [
        "1a105f743d9fa5f7b8eeeca0afb789951164a361"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Nov 17 18:38:00 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 19 06:03:38 2009 +0100"
      },
      "message": "perf top: Introduce helper function to access symbol from sym_entry\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: \u003c1258490282-1821-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1a105f743d9fa5f7b8eeeca0afb789951164a361",
      "tree": "0cae254f57fafa10d4dfaf08a698ab3896ff7129",
      "parents": [
        "13cc5079f235906e60577dbce8da2f9607e67e93"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Nov 17 15:40:55 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 19 06:03:37 2009 +0100"
      },
      "message": "perf top: Suppress DSO column if only one is present\n\nE.g.\n\n[root@doppio ~]# perf top -U\n---------------------------------------------------------------------------\n   PerfTop:     482 irqs/sec  kernel:100.0% [1000Hz cycles],  (all, 2 CPUs)\n---------------------------------------------------------------------------\nDSO: vmlinux\n             samples  pcnt function\n             _______ _____ _________________________\n\n              471.00 47.9% read_hpet\n               57.00  5.8% acpi_os_read_port\n               30.00  3.1% hpet_next_event\n               30.00  3.1% find_busiest_group\n               22.00  2.2% schedule\n               18.00  1.8% sched_clock_local\n               14.00  1.4% _spin_lock_irqsave\n               14.00  1.4% native_read_tsc\n               13.00  1.3% trace_hardirqs_off\n                9.00  0.9% fget_light\n                9.00  0.9% ioread8\n                8.00  0.8% do_sys_poll\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: \u003c1258479655-28662-3-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "13cc5079f235906e60577dbce8da2f9607e67e93",
      "tree": "46e38168af043489b657b9d2715b4dab0aad1428",
      "parents": [
        "cfc10d3bcc50d70f72c0f43d03eee965c726ccc0"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Nov 17 15:40:54 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 19 06:03:36 2009 +0100"
      },
      "message": "perf top: Auto adjust symbol and dso widths\n\nWe pre-calculate the symbol name length, then after we sort the\nentries to print, calculate the biggest one and use that for the\nsymbol name width justification, then use the\ndso-\u003elong_name-\u003elen to justificate the DSO name, deciding whether\nusing the short or long name depending on how much space we have\non the terminal.\n\nIOW give as much info to the user as the terminal width allows.\n\nSuggested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1258479655-28662-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8ffcda17314cfeb698a667567ea63f63362dffbb",
      "tree": "c5af65799761e1a339be01144bdfd471a051ebd3",
      "parents": [
        "3b6ed98895b0fccd8c387f3fc44016fb922c0658"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Nov 16 21:45:24 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 17 07:19:53 2009 +0100"
      },
      "message": "perf top: Introduce --hide_{user,kernel}_symbols\n\nDefault continues to be showing all symbols. \u0027K\u0027 and \u0027U\u0027 can be\nused to toggle showing kernel and user symbols.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c1258415125-15019-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3b6ed98895b0fccd8c387f3fc44016fb922c0658",
      "tree": "63b6af491b245af1b8051959cb42d45c5bc95ada",
      "parents": [
        "dc79c0fc08a94b857aed446bfb47cdfde529400c"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Nov 16 19:30:27 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 17 07:19:53 2009 +0100"
      },
      "message": "perf top: Use all the lines in the screen\n\nBy querying the current number of rows, if the user specifies\nthe number of entries, use that instead. If the user uses the\n\u0027e\u0027 command to change the number of lines 0 will mean do it\nautomatically, any other number disables the auto resizing.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c1258407027-384-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "39dc78b6510323848e3356452f7dab9499736978",
      "tree": "cf8a8fede74e41b203fd00e3ccd21ead2e851442",
      "parents": [
        "4c49b12853fbb5eff4849b7b6a1e895776f027a1",
        "156171c71a0dc4bce12b4408bb1591f8fe32dc1a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 15 09:50:38 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 15 09:50:41 2009 +0100"
      },
      "message": "Merge commit \u0027v2.6.32-rc7\u0027 into perf/core\n\nMerge reason: pick up perf fixlets\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c10edee2e1716f8cf217cf52ed01ae4742fcdf3c",
      "tree": "30d894124621ba13ea5e7e06050b99953a401b62",
      "parents": [
        "dd77038d233d106f297b907bf51459dfb1099eb1"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Sun Nov 08 18:01:06 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 08 17:04:54 2009 +0100"
      },
      "message": "perf tools: Fix permission checks\n\nThe perf_event_open() system call returns EACCES if the user is\nnot root which results in a very confusing error message:\n\n  $ perf record -A -a -f\n\n    Error: perfcounter syscall returned with -1 (Permission denied)\n\n    Fatal: No CONFIG_PERF_EVENTS\u003dy kernel support configured?\n\nIt turns out that\u0027s because perf tools are checking only for\nEPERM. Fix that up to get a much better error message:\n\n  $ perf record -A -a -f\n    Fatal: Permission error - are you root?\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: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1257696066-4046-1-git-send-email-penberg@cs.helsinki.fi\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "00a192b395b0606ad0265243844b3cd68e73420a",
      "tree": "09149f550807c365f170c857b1021d66e5bb8b4b",
      "parents": [
        "afb7b4f08e274cecd8337f9444affa288a9cd4c1"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Oct 30 16:28:24 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 02 16:52:11 2009 +0100"
      },
      "message": "perf tools: Simplify the symbol priv area mechanism\n\nBefore we were storing this in the DSO, but in fact this is a\nproperty of the \u0027symbol\u0027 class, not something that will vary\namong DSOs, so move it to a global variable and initialize it\nusing the existing symbol__init routine.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c1256927305-4628-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "66bd8424cc05e800db384053bf7ab967e4658468",
      "tree": "2d58312238c78b1fe8482032e019c9437b3564ed",
      "parents": [
        "689d30187828afe1faedf050b2f7593515b90c76"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Oct 28 21:51:21 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 29 08:23:40 2009 +0100"
      },
      "message": "perf tools: Delay loading symtabs till we hit a map with it\n\nSo that we can have a quicker start on perf top and even\nspeedups in the other tools, as we can have maps with no hits,\nso no need to load its symtabs.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c1256773881-4191-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5b2bb75a0d4b08cd16bc35ecd674f957fc3b0eb7",
      "tree": "78b89706226435397f5c8539bd162b81c49db2a6",
      "parents": [
        "234fbbf508c58c5084292b11b242377553897459"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Oct 26 19:23:19 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 27 13:51:54 2009 +0100"
      },
      "message": "perf top: Support userspace symbols too\n\nExample:\n\nCompiling the kernel with \u0027make -k 22 allyesconfig\u0027\n\n[root@emilia linux-2.6-tip]# perf top -r 90\n------------------------------------------------------------------------------\n   PerfTop:    3669 irqs/sec  kernel:59.9% [1000Hz cycles],  (all, 8 CPUs)\n------------------------------------------------------------------------------\n\n             samples  pcnt function                                 DSO\n             _______ _____ ________________________________ ________________\n\n             3062.00  6.5% clear_page_c                     [kernel]\n             2233.00  4.8% _int_malloc                      /lib64/libc-2.5.so\n             2100.00  4.5% yylex                            /home/acme/git/build/allyesconfig/scripts/genksyms/genksyms\n             2029.00  4.3% memset                           /lib64/libc-2.5.so\n             1224.00  2.6% page_fault                       [kernel]\n             1075.00  2.3% __GI_strlen                      /lib64/libc-2.5.so\n              863.00  1.8% sub_preempt_count                [kernel]\n              822.00  1.8% __GI_memcpy                      /lib64/libc-2.5.so\n              810.00  1.7% __GI_vfprintf                    /lib64/libc-2.5.so\n              786.00  1.7% _int_free                        /lib64/libc-2.5.so\n              775.00  1.7% __GI_strcmp                      /lib64/libc-2.5.so\n              748.00  1.6% _spin_lock                       [kernel]\n              699.00  1.5% main                             /home/acme/git/build/allyesconfig/scripts/basic/fixdep\n              659.00  1.4% add_preempt_count                [kernel]\n              649.00  1.4% yyparse                          /home/acme/git/build/allyesconfig/scripts/genksyms/genksyms\n              645.00  1.4% preempt_trace                    [kernel]\n              635.00  1.4% __GI___libc_free                 /lib64/libc-2.5.so\n              597.00  1.3% trace_preempt_on                 [kernel]\n              551.00  1.2% __GI___libc_malloc               /lib64/libc-2.5.so\n              516.00  1.1% _spin_lock_irqsave               [kernel]\n              481.00  1.0% copy_user_generic_string         [kernel]\n              479.00  1.0% unmap_vmas                       [kernel]\n              429.00  0.9% _IO_file_xsputn_internal         /lib64/libc-2.5.so\n              425.00  0.9% __GI_strncpy                     /lib64/libc-2.5.so\n              416.00  0.9% get_page_from_freelist           [kernel]\n              414.00  0.9% malloc_consolidate               /lib64/libc-2.5.so\n              406.00  0.9% get_parent_ip                    [kernel]\n              362.00  0.8% __rmqueue                        [kernel]\n              347.00  0.7% in_lock_functions                [kernel]\n              316.00  0.7% __d_lookup                       [kernel]\n\n[root@emilia linux-2.6-tip]#\n\nMore polishing is needed to print just DSO basename when not\n--verbose, etc.\n\nSupporting a \u0027comm\u0027 column requires some more reworking of \u0027perf\ntop\u0027 internals as we will need to use something like the hist\nentries \u0027perf report\u0027 uses and will be done in another patch.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c1256592199-9608-3-git-send-email-acme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6beba7adbe092e63dfe8d09fbd1e3ec140474a13",
      "tree": "d45a3347de224513c6d3d0e1061b78641f9aaf8a",
      "parents": [
        "802da5f2289bbe363acef084805195c11f453c48"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Oct 21 17:34:06 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 23 08:22:47 2009 +0200"
      },
      "message": "perf tools: Unify debug messages mechanisms\n\nWe were using eprintf in some places, that looks at a global\n\u0027verbose\u0027 level, and at other places passing a \u0027v\u0027 parameter to\nspecify the verbosity level, unify it by introducing\npr_{err,warning,debug,etc}, just like in the kernel.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c1256153646-10097-1-git-send-email-acme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c88e4bf60de6253a048cf4e6b3b0715e543e0460",
      "tree": "14eae172a497f5d024c1da49fa014f7bb5b26c67",
      "parents": [
        "8f0b037398a909ccf703ad5f5803066db6327f22"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Oct 20 15:54:55 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 20 21:12:59 2009 +0200"
      },
      "message": "perf top: Fix symbol annotation\n\nWe need to use map-\u003eunmap_ip() here too to match section\nrelative symbol address to the absolute address needed to match\nobjdump -dS addresses.\n\nReported-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1256061295-19835-1-git-send-email-acme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c258449bc9d286e2ee6546c9cdf911e96cbc126a",
      "tree": "51d389391bf6bef4be756652e401823f8171656e",
      "parents": [
        "79b9ad361be8c6f3eeea97dd3883e8bcfa989333",
        "2e600d01c131ee189f55ca1879cd364b9e056df8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 20 07:51:41 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 20 07:51:44 2009 +0200"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: Queue up dependent patch.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dc79959aaf80e518741657a702fa2727c86c1189",
      "tree": "39e7a00b90c972714657c74fd88d12759f36ea37",
      "parents": [
        "210f9cb2cf2effca690271085f4bd6a3ea286e6c"
      ],
      "author": {
        "name": "Tim Blechmann",
        "email": "tim@klingt.org",
        "time": "Sat Oct 17 18:08:29 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 19 09:52:39 2009 +0200"
      },
      "message": "perf top: Fix --delay_secs 0 division by zero\n\nAdd delay_secs sanity check to handle_keypress,\nthis fixes a division by zero crash.\n\nSigned-off-by: Tim Blechmann \u003ctim@klingt.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4AD9EBFD.106@klingt.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f4f0b418188cc7995375acbb54e87c80f21861bd",
      "tree": "20c60c9bf367e53d3ddbd5fddd41de9d64fb4ded",
      "parents": [
        "cfed95a693e1ea5d08b9c9019bc30e448437ee2f"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Oct 13 14:57:20 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 13 15:30:15 2009 +0200"
      },
      "message": "perf tools: Remove expensive old debug code from perf top\n\nCalling gettimeofday() at high frequency is painful for handicapped\nboxen. The spot calling gettimeofday() is old unneeded debug code,\nso remove it.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1255438640.7173.1.camel@marge.simson.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7e4ff9e3e8f88de8a8536f43294cd32b4e7d9123",
      "tree": "4033b2ab865ce039f0287059c520be8703a08d42",
      "parents": [
        "fe9081cc9bdabb0be953a39ad977cea14e35bce5"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Mon Oct 12 07:56:03 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 12 09:10:55 2009 +0200"
      },
      "message": "perf tools: Fix counter sample frequency breakage\n\nCommit 42e59d7d19dc4b4 switched to a default sample frequency of\n1KHz, which overrides any user supplied count, causing sched, top\nand timechart to miss events due to their discrete events\nbeing flagged PERF_SAMPLE_PERIOD.\n\nOverride default sample frequency when the user profides a\nperiod count, and make both record and top honor that user\nsupplied option.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nLKML-Reference: \u003c1255326963.15107.2.camel@marge.simson.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "42e59d7d19dc4b49feab2a860fd9a8ca3248c833",
      "tree": "a1c597604dcb239804684f452263bec295d77ae3",
      "parents": [
        "064739bc4b3d7f424b2f25547e6611bcf0132415"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 06 15:14:21 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 06 15:41:09 2009 +0200"
      },
      "message": "perf tools: Default to 1 KHz auto-sampling freq events\n\nUse auto-freq events by default in perf record and\nperf top.\n\nThis allows more consistent hardware event sampling,\nregardless of the intensity of the underlying event.\n\nIt also keeps us from over-sampling on larger/busier\nsystems.\n\n(also make surrounding initializations more consistent)\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d9b2002c406011164f245de7a81304625989f1c9",
      "tree": "a2bb74773cd1409acbec5eb2fbba2ae9889d55e8",
      "parents": [
        "c3b32fcbc7f4fd9a9b84718b991b175b0fd53f8c",
        "906010b2134e14a2e377decbadd357b3d0ab9c6a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 06 15:02:30 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 06 15:02:34 2009 +0200"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: Upcoming patch is dependent on a fix in perf/urgent.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5c2068059a0e852f72b7c2608d92170b752d821f",
      "tree": "940a885a6b910aded2826f6f6e6b362b6f89b0de",
      "parents": [
        "ec218fc4a796a1b584741d59ef22615d96981188"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Oct 05 14:26:15 2009 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 05 20:35:22 2009 +0200"
      },
      "message": "perf top: Keep the default of asking for kernel module symbols\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "439d473b4777de510e1322168ac6f2f377ecd5bc",
      "tree": "f33622a0b98c2b0ce16637322d48542eb93e2fa3",
      "parents": [
        "2ccdc450e658053681202d42ac64b3638f22dc1a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Oct 02 03:29:58 2009 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 02 10:48:42 2009 +0200"
      },
      "message": "perf tools: Rewrite and improve support for kernel modules\n\nRepresenting modules as struct map entries, backed by a DSO, etc,\nusing /proc/modules to find where the module is loaded.\n\nDSOs now can have a short and long name, so that in verbose mode we\ncan show exactly which .ko or vmlinux image was used.\n\nAs kernel modules now are a DSO separate from the kernel, we can\nask for just the hits for a particular set of kernel modules, just\nlike we can do with shared libraries:\n\n[root@doppio linux-2.6-tip]# perf report -n --vmlinux\n/home/acme/git/build/tip-recvmmsg/vmlinux --modules --dsos \\[drm\\] | head -15\n    84.58%      13266             Xorg  [k] drm_clflush_pages\n     4.02%        630             Xorg  [k] trace_kmalloc.clone.0\n     3.95%        619             Xorg  [k] drm_ioctl\n     2.07%        324             Xorg  [k] drm_addbufs\n     1.68%        263             Xorg  [k] drm_gem_close_ioctl\n     0.77%        120             Xorg  [k] drm_setmaster_ioctl\n     0.70%        110             Xorg  [k] drm_lastclose\n     0.68%        106             Xorg  [k] drm_open\n     0.54%         85             Xorg  [k] drm_mm_search_free\n[root@doppio linux-2.6-tip]#\n\nSpecifying --dsos /lib/modules/2.6.31-tip/kernel/drivers/gpu/drm/drm.ko\nwould have the same effect. Allowing specifying just \u0027drm.ko\u0027 is left\nfor another patch.\n\nProcessing kallsyms so that per kernel module struct map are\ninstantiated was also left for another patch. That will allow\nremoving the module name from each of its symbols.\n\nstruct symbol was reduced by removing the -\u003emodule backpointer and\nmoving it (well now the map) to struct symbol_entry in perf top,\nthat is its only user right now.\n\nThe total linecount went down by ~500 lines.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2ccdc450e658053681202d42ac64b3638f22dc1a",
      "tree": "58ca06856642b491bb6dc4cd0e9205a6a05f0242",
      "parents": [
        "cad3071424edd7854f63aa80d09473e84f49ed79"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Sep 24 14:24:00 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 01 08:46:15 2009 +0200"
      },
      "message": "perf top: Remove dead {min,max}_ip unused variables\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20090924212400.GA15321@ghostprotocols.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8357275bb919d91093bc5a959932ef7b1ea816e8",
      "tree": "34d4bec5725ce1f6e2212b4c64f9ef0578659586",
      "parents": [
        "17d857be649a21ca90008c6dc425d849fa83db5c"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Sep 25 15:02:39 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Sep 30 13:56:54 2009 +0200"
      },
      "message": "perf top: Add poll_idle to the skip list\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20090925220239.GA5488@ghostprotocols.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cdd6c482c9ff9c55475ee7392ec8f672eddb7be6",
      "tree": "81f98a3ab46c589792057fe2392c1e10f8ad7893",
      "parents": [
        "dfc65094d0313cc48969fa60bcf33d693aeb05a7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 21 12:02:48 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 21 14:28:04 2009 +0200"
      },
      "message": "perf: Do the big rename: Performance Counters -\u003e Performance Events\n\nBye-bye Performance Counters, welcome Performance Events!\n\nIn the past few months the perfcounters subsystem has grown out its\ninitial role of counting hardware events, and has become (and is\nbecoming) a much broader generic event enumeration, reporting, logging,\nmonitoring, analysis facility.\n\nNaming its core object \u0027perf_counter\u0027 and naming the subsystem\n\u0027perfcounters\u0027 has become more and more of a misnomer. With pending\ncode like hw-breakpoints support the \u0027counter\u0027 name is less and\nless appropriate.\n\nAll in one, we\u0027ve decided to rename the subsystem to \u0027performance\nevents\u0027 and to propagate this rename through all fields, variables\nand API names. (in an ABI compatible fashion)\n\nThe word \u0027event\u0027 is also a bit shorter than \u0027counter\u0027 - which makes\nit slightly more convenient to write/handle as well.\n\nThanks goes to Stephane Eranian who first observed this misnomer and\nsuggested a rename.\n\nUser-space tooling and ABI compatibility is not affected - this patch\nshould be function-invariant. (Also, defconfigs were not touched to\nkeep the size down.)\n\nThis patch has been generated via the following script:\n\n  FILES\u003d$(find * -type f | grep -vE \u0027oprofile|[^K]config\u0027)\n\n  sed -i \\\n    -e \u0027s/PERF_EVENT_/PERF_RECORD_/g\u0027 \\\n    -e \u0027s/PERF_COUNTER/PERF_EVENT/g\u0027 \\\n    -e \u0027s/perf_counter/perf_event/g\u0027 \\\n    -e \u0027s/nb_counters/nb_events/g\u0027 \\\n    -e \u0027s/swcounter/swevent/g\u0027 \\\n    -e \u0027s/tpcounter_event/tp_event/g\u0027 \\\n    $FILES\n\n  for N in $(find . -name perf_counter.[ch]); do\n    M\u003d$(echo $N | sed \u0027s/perf_counter/perf_event/g\u0027)\n    mv $N $M\n  done\n\n  FILES\u003d$(find . -name perf_event.*)\n\n  sed -i \\\n    -e \u0027s/COUNTER_MASK/REG_MASK/g\u0027 \\\n    -e \u0027s/COUNTER/EVENT/g\u0027 \\\n    -e \u0027s/\\\u003cevent\\\u003e/event_id/g\u0027 \\\n    -e \u0027s/counter/event/g\u0027 \\\n    -e \u0027s/Counter/Event/g\u0027 \\\n    $FILES\n\n... to keep it as correct as possible. This script can also be\nused by anyone who has pending perfcounters patches - it converts\na Linux kernel tree over to the new naming. We tried to time this\nchange to the point in time where the amount of pending patches\nis the smallest: the end of the merge window.\n\nNamespace clashes were fixed up in a preparatory patch - and some\nstylistic fallout will be fixed up in a subsequent patch.\n\n( NOTE: \u0027counters\u0027 are still the proper terminology when we deal\n  with hardware registers - and these sed scripts are a bit\n  over-eager in renaming them. I\u0027ve undone some of that, but\n  in case there\u0027s something left where \u0027counter\u0027 would be\n  better than \u0027event\u0027 we can undo that on an individual basis\n  instead of touching an otherwise nicely automated patch. )\n\nSuggested-by: Stephane Eranian \u003ceranian@google.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nReviewed-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7ced156bb8bb6363b6ed541871bf19a90273f910",
      "tree": "11ef21aaba1719166818f4a1a1329acbe4c62159",
      "parents": [
        "a4be7c2778d1fd8e0a8a5607bec91fa221ab2c91"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Aug 26 11:51:26 2009 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Aug 26 20:21:45 2009 +0200"
      },
      "message": "perf top: Show RIP only in verbose mode\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20090826145126.GA5255@ghostprotocols.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8f28827a162fd1e8da4e96bed69b06d2606e8322",
      "tree": "b57a24ca7819a1b347374aa62dd90444740811f8",
      "parents": [
        "0d3a5c885971de1e3124d85bfadf818abac9ba12"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Aug 16 22:05:48 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Aug 16 23:06:45 2009 +0200"
      },
      "message": "perf tools: Librarize trace_event() helper\n\nLibrarize trace_event() helper so that perf trace can use it\ntoo. Also clean up the debug.h includes a bit.\n\nIt\u0027s not good to have it included in perf.h because it doesn\u0027t\nmake it flexible against other headers it may need (headers\nthat can also depend on perf.h and then create a recursive\nheader dependency).\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c1250453149-664-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "83a0944fa919fb2ebcfc1f8933d86e437b597ca6",
      "tree": "814906744656554a1bc07cdad6b84b3581565358",
      "parents": [
        "6baa0a5ae0954fb2486c480a20556a9f1aee0965"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Aug 15 12:26:57 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Aug 16 10:47:47 2009 +0200"
      },
      "message": "perf: Enable more compiler warnings\n\nRelated to a shadowed variable bug fix Valdis Kletnieks noticed\nthat perf does not get built with -Wshadow, which could have\nhelped us avoid the bug.\n\nSo enable -Wshadow and also enable the following warnings on\nperf builds, in addition to the already enabled -Wall -Wextra\n-std\u003dgnu99 warnings:\n\n -Wcast-align\n -Wformat\u003d2\n -Wshadow\n -Winit-self\n -Wpacked\n -Wredundant-decls\n -Wstack-protector\n -Wstrict-aliasing\u003d3\n -Wswitch-default\n -Wswitch-enum\n -Wno-system-headers\n -Wundef\n -Wvolatile-register-var\n -Wwrite-strings\n -Wbad-function-cast\n -Wmissing-declarations\n -Wmissing-prototypes\n -Wnested-externs\n -Wold-style-definition\n -Wstrict-prototypes\n -Wdeclaration-after-statement\n\nAnd change/fix the perf code to build cleanly under GCC 4.3.2.\n\nThe list of warnings enablement is rather arbitrary: it\u0027s based\non my (quick) reading of the GCC manpages and trying them on\nperf.\n\nI categorized the warnings based on individually enabling them\nand looking whether they trigger something in the perf build.\nIf i liked those warnings (i.e. if they trigger for something\nthat arguably could be improved) i enabled the warning.\n\nIf the warnings seemed to come from language laywers spamming\nthe build with tons of nuisance warnings i generally kept them\noff. Most of the sign conversion related warnings were in\nthis category. (A second patch enabling some of the sign\nwarnings might be welcome - sign bugs can be nasty.)\n\nI also kept warnings that seem to make sense from their manpage\ndescription and which produced no actual warnings on our code\nbase. These warnings might still be turned off if they end up\nbeing a nuisance.\n\nI also left out a few warnings that are not supported in older\ncompilers.\n\n[ Note that these changes might break the build on older\n  compilers i did not test, or on non-x86 architectures that\n  produce different warnings, so more testing would be welcome. ]\n\nReported-by: Valdis.Kletnieks@vt.edu\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1fe2c1066ce6a30bda7b27785ee3d9b8e62ffbbd",
      "tree": "b19630a1a6a2d44a61da0443b0f9de52e42738a6",
      "parents": [
        "cd84c2ac6d6425dd4d1b80a2231e534b9b03df18"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Aug 12 10:19:53 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Aug 12 12:04:39 2009 +0200"
      },
      "message": "perf tools: Factorize the event structure definitions in a single file\n\nFactorize the multiple definition of the events structures into a\nsingle util/event.h file.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Brice Goglin \u003cBrice.Goglin@inria.fr\u003e\n"
    },
    {
      "commit": "cd84c2ac6d6425dd4d1b80a2231e534b9b03df18",
      "tree": "943332327f02f7a056dc87c64e72e340c484ede6",
      "parents": [
        "9f8666971185b86615a074bcac67c90fdf8af8bc"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Aug 12 10:03:49 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Aug 12 12:02:38 2009 +0200"
      },
      "message": "perf tools: Factorize high level dso helpers\n\nFactorize multiple definitions of high level dso helpers into the\nsymbol source file.\n\nThe side effect is a general export of the verbose and eprintf\ndebugging helpers into a new file dedicated to debugging purposes.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Brice Goglin \u003cBrice.Goglin@inria.fr\u003e\n"
    },
    {
      "commit": "091bd2e993fcb1094a23e36157285b62bc87afdf",
      "tree": "6f6d88d3543ff3efcf1976b38b9ce90910cab22e",
      "parents": [
        "7b4b6658e152ed4568cfff48175d93645df081d1"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Aug 04 10:21:23 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Aug 09 12:54:31 2009 +0200"
      },
      "message": "perf top: Improve interactive key handling\n\nPressing any key which is not currently mapped to\nfunctionality, based on startup command line options, displays\ncurrently mapped keys, and prompts for input.\n\nPressing any unmapped key at the prompt returns the user to\ndisplay mode with variables unchanged.  eg, pressing ? \u003cSPACE\u003e\n\u003cESC\u003e etc displays currently available keys, the value of the\nvariable associated with that key, and prompts.\n\nPressing same again aborts input.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "46ab976443c6c566c8fe6fc72a6733a55ba9fbea",
      "tree": "53db4a44087cddf14b0b8cd8bc8911d4998fd2ff",
      "parents": [
        "923c42c19944da214d697e312a040384a0e33e78"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Fri Jul 24 10:09:50 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Aug 09 12:54:30 2009 +0200"
      },
      "message": "perf_counter tools: Allow perf top top users to switch between weighted and individual counter display\n\nAdd [w]eighted hotkey.  Pressing [w] toggles between displaying\nweighted total of all counters, and the counter selected via\n[E]vent select key.\n\n------------------------------------------------------------------------------\n   PerfTop:   90395 irqs/sec  kernel:16.1% [cache-misses/cache-references/instructions],  (all, 4 CPUs)\n------------------------------------------------------------------------------\n\n  weight     samples    pcnt         RIP          kernel function\n  ______     _______   _____   ________________   _______________\n\n1275408.6      10881 -  5.3% - ffffffff81146f70 : copy_page_c\n 553683.4      43569 - 21.3% - ffffffff81146f20 : clear_page_c\n  74075.0       6768 -  3.3% - ffffffff81147190 : copy_user_generic_string\n  40602.9       7538 -  3.7% - ffffffff81284ba2 : _spin_lock\n  26882.1        965 -  0.5% - ffffffff8109d280 : file_ra_state_init\n\n[w]\n\n------------------------------------------------------------------------------\n   PerfTop:   91221 irqs/sec  kernel:14.5% [10000Hz cache-misses],  (all, 4 CPUs)\n------------------------------------------------------------------------------\n\n  weight     samples    pcnt         RIP          kernel function\n  ______     _______   _____   ________________   _______________\n\n            47320.00 - 22.3% - ffffffff81146f20 : clear_page_c\n            14261.00 -  6.7% - ffffffff810992f5 : __rmqueue\n            11046.00 -  5.2% - ffffffff81146f70 : copy_page_c\n             7842.00 -  3.7% - ffffffff81284ba2 : _spin_lock\n             7234.00 -  3.4% - ffffffff810aa1d6 : unmap_vmas\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "923c42c19944da214d697e312a040384a0e33e78",
      "tree": "6cfbb04b457a26ed993c0df7b895edc7630d125f",
      "parents": [
        "f413cdb80ce00ec1a4d0ab949b5d96c81cae7f75"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Wed Jul 22 20:36:03 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Aug 09 12:54:29 2009 +0200"
      },
      "message": "perf_counter tools: Fix/resurrect perf top annotation in a simple interactive form\n\nperf top used to have annotation support, but it has bitrotted and\nremoved.\n\nThis patch restores that: it allows the user to select any symbol\nin kernel space for source level annotation on the fly, switch\nbetween event counters and alter display variables. When symbol\ndetails are being displayed, stopping annotation reverts to normal.\n\nknown keys:\n        [d]     select display delay.\n        [e]     select display entries (lines).\n        [E]     select annotation event counter.\n        [f]     select normal display count filter.\n        [F]     select annotation display count filter (percentage).\n        [qQ]    quit.\n        [s]     select annotation symbol and start annotation.\n        [S]     stop annotation, revert to normal display.\n        [z]     toggle event count zeroing.\n\nSample:\n------------------------------------------------------------------------------\n   PerfTop:   16719 irqs/sec  kernel:78.7% [cache-misses/cache-references/instructions/cycles],  (all, 4 CPUs)\n------------------------------------------------------------------------------\n\nShowing cache-misses for e1000_clean_rx_irq\n  Events  Pcnt (\u003e\u003d3%)\n       0  0.0%                  /* adjust length to remove Ethernet CRC */\n       0  0.0%                  if (!(adapter-\u003eflags2 \u0026 FLAG2_CRC_STRIPPING))\n       0  0.0%                          length -\u003d 4;\n     436  5.0%      f039:       41 f6 84 24 5c 29 00    testb  $0x1,0x295c(%r12)\n       0  0.0%      f089:       8b 4d 84                mov    -0x7c(%rbp),%ecx\n       0  0.0%      f08c:       48 83 ef 02             sub    $0x2,%rdi\n       0  0.0%      f090:       48 83 ee 02             sub    $0x2,%rsi\n     811  9.3%      f094:       f3 a4                   rep movsb %ds:(%rsi),%es:(%rdi)\n       0  0.0%\n       0  0.0%          while (rx_desc-\u003estatus \u0026 E1000_RXD_STAT_DD) {\n       0  0.0%      f114:       41 f6 47 0c 01          testb  $0x1,0xc(%r15)\n    7226 82.6%      f119:       0f 85 24 fe ff ff       jne    ef43 \u003ce1000_clean_rx_irq+0x84\u003e\n\nAvailable events:\n        0 cache-misses\n        1 cache-references\n        2 instructions\n        3 cycles\nEnter details event counter: 2\n------------------------------------------------------------------------------\n   PerfTop:   15035 irqs/sec  kernel:79.0% [cache-misses/cache-references/instructions/cycles],  (all, 4 CPUs)\n------------------------------------------------------------------------------\n\nShowing instructions for e1000_clean_rx_irq\n  Events  Pcnt (\u003e\u003d3%)\n       0  0.0%                                 int *work_done, int work_to_do)\n       0  0.0%  {\n     175  0.9%      eebf:       55                      push   %rbp\n    1898  9.8%      eec0:       48 89 e5                mov    %rsp,%rbp\n       0  0.0%\n       0  0.0%          i \u003d rx_ring-\u003enext_to_clean;\n     140  0.7%      ef0a:       0f b7 41 1a             movzwl 0x1a(%rcx),%eax\n     670  3.4%      ef0e:       89 45 ac                mov    %eax,-0x54(%rbp)\n       0  0.0%  {\n       0  0.0%          memcpy(skb-\u003edata + offset, from, len);\n      91  0.5%      f07b:       49 8b b6 e8 00 00 00    mov    0xe8(%r14),%rsi\n    1153  5.9%      f082:       48 8b b8 e8 00 00 00    mov    0xe8(%rax),%rdi\n      42  0.2%      f089:       8b 4d 84                mov    -0x7c(%rbp),%ecx\n      14  0.1%      f08c:       48 83 ef 02             sub    $0x2,%rdi\n       0  0.0%      f090:       48 83 ee 02             sub    $0x2,%rsi\n    1618  8.3%      f094:       f3 a4                   rep movsb %ds:(%rsi),%es:(%rdi)\n       0  0.0%\n       0  0.0%                  /* return some buffers to hardware, one at a time is too slow */\n       0  0.0%                  if (cleaned_count \u003e\u003d E1000_RX_BUFFER_WRITE) {\n     867  4.5%      f0e7:       83 7d b0 0f             cmpl   $0xf,-0x50(%rbp)\n       0  0.0%\n       0  0.0%          while (rx_desc-\u003estatus \u0026 E1000_RXD_STAT_DD) {\n      37  0.2%      f114:       41 f6 47 0c 01          testb  $0x1,0xc(%r15)\n    4047 20.8%      f119:       0f 85 24 fe ff ff       jne    ef43 \u003ce1000_clean_rx_irq+0x84\u003e\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "59b9005692d4c8b5d73cfc41aa7229f47be163a9",
      "tree": "ea3d2d6ff46d9f29ee0cc744c4ad6080b9d757b0",
      "parents": [
        "9b30a26bf3d2c56dcb1c3afaca28b73fcd6ed405"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Jul 26 19:06:19 2009 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Aug 02 13:58:16 2009 +0200"
      },
      "message": "perf top: Add mwait_idle_with_hints to skip_symbols[]\n\nWe skip the display of idle routine related symbols because\nthey are typically rather erratic and confusing: they depend\non the IRQ rate or sometimes they dominate the profile if\nthey are polling based.\n\nAdd mwait_idle_with_hints too, this is one of the idle\nroutines on x86.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0fdc7e67dd312986e30b861adff48732bd33eb3f",
      "tree": "5d5133f36e3f20d174f0754defca47d244224e7c",
      "parents": [
        "d20ff6bd6bba2e7e6681fa17565347b410c46ab3"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Jul 21 10:30:36 2009 +0200"
      },
      "committer": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Jul 22 18:05:58 2009 +0200"
      },
      "message": "perf_counter tools: Give perf top inherit option\n\nCurrently, perf top -p only tracks the pid provided, which isn\u0027t very useful\nfor watching forky loads, so give it an inherit option.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1248165036.9795.10.camel@marge.simson.net\u003e\n"
    },
    {
      "commit": "1e11fd82d247e4e48a1d6c49402214434538d3fd",
      "tree": "7ac435b0be559c113987a64126559ea9b41627dc",
      "parents": [
        "c20ab37ef30f4a874cf27e84c12c73e584e6f5cc"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Jul 02 20:14:34 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 02 21:38:37 2009 +0200"
      },
      "message": "perf_counter tools: Provide helper to print percents color\n\nAmong perf annotate, perf report and perf top, we can find the\ncommon colored printing of percents according to the following\nrules:\n\n    High overhead \u003d  \u003e 5%, colored in red\n    Mid overhead \u003d  \u003e 0.5%, colored in green\n    Low overhead \u003d  \u003c 0.5%, default color\n\nFactorize these multiple checks in a single function named\npercent_color_fprintf() and also provide a get_percent_color()\nfor sites which print percentages and other things at the same\ntime.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003c1246558475-10624-2-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "429764873cf3fc3e73142872a674bb27cda589c1",
      "tree": "a7c11887ad7aa055f56276a14acbe004d0ead434",
      "parents": [
        "6cfcc53ed4f3ecb9319e73a03f34f1eddcb644dd"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Thu Jul 02 08:09:46 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 02 08:42:21 2009 +0200"
      },
      "message": "perf_counter tools: Enable kernel module symbol loading in tools\n\nAdd the -m/--modules option to perf report and perf annotate,\nwhich enables live module symbol/image loading. To be used\nwith -k/--vmlinux.\n\n(Also give perf annotate a -P/--full-paths option.)\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\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\nLKML-Reference: \u003c1246514986.13293.48.camel@marge.simson.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6cfcc53ed4f3ecb9319e73a03f34f1eddcb644dd",
      "tree": "8840ca050d86223443f2539085c4ef12234be069",
      "parents": [
        "208b4b4a59351011b7f212e273f2b7bc47a9c482"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Thu Jul 02 08:08:36 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 02 08:42:21 2009 +0200"
      },
      "message": "perf_counter tools: Connect module support infrastructure to symbol loading infrastructure\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\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\nLKML-Reference: \u003c1246514916.13293.46.camel@marge.simson.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9974f496782b7612e36a143bedda858f1cb953d4",
      "tree": "3552e4515a40691a9ae5e769117ee3676a6cab70",
      "parents": [
        "a92bef0f216bbf3d05c0c0709ea02e267f2b920e"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Thu Jul 02 08:05:58 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 02 08:42:20 2009 +0200"
      },
      "message": "perf_counter tools: Make symbol loading consistently return number of loaded symbols\n\nperf_counter tools: Make symbol loading consistently return number of loaded symbols.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\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\nLKML-Reference: \u003c1246514758.13293.42.camel@marge.simson.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "43cbcd8acb4c992cbd22d1ec8a08c0591be5d719",
      "tree": "38bd75deba4635ee6fe38bb0dcff1a76db872189",
      "parents": [
        "73c24cb86c51ff6445b292d9914d31236204393b"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Jul 01 12:28:37 2009 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 01 22:37:22 2009 +0200"
      },
      "message": "perf_counter tools: Share rbtree.with the kernel\n\nThe tools/perf/util/rbtree.c copy already drifted by three\ncsets:\n\n 4b324126e0c6c3a5080ca3ec0981e8766ed6f1ee\n 4c60117811171d867d4f27f17ea07d7419d45dae\n 16c047add3ceaf0ab882e3e094d1ec904d02312d\n\nSo remove the copy and use the lib/rbtree.c directly, sharing\nthe source code while still generating a separate object file,\nsince tools/perf uses a far more agressive -O6 switch.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20090701152837.GG15682@ghostprotocols.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f37a291c527c954df4da568de718ebb36b8261c0",
      "tree": "bb4863fbd185fbfef5f7d28cb4001d59d4123a2d",
      "parents": [
        "88a69dfbc6ab1e3b51bba8c9103055e21089ebb9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 01 12:37:06 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 01 12:49:48 2009 +0200"
      },
      "message": "perf_counter tools: Add more warnings and fix/annotate them\n\nEnable -Wextra. This found a few real bugs plus a number\nof signed/unsigned type mismatches/uncleanlinesses. It\nalso required a few annotations\n\nAll things considered it was still worth it so lets try with\nthis enabled for now.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3a3393ef75a14ae259a82f3f38624efa17884168",
      "tree": "1d4cd1f95a1211fb99063a6342e7ef088cb2aef8",
      "parents": [
        "2ab52083ffc057014e502cf3473adc41436922fa"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Wed Jul 01 09:00:47 2009 +1000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 01 01:25:19 2009 +0200"
      },
      "message": "perf top: Add ppc64 specific skip symbols and strip ppc64 . prefix\n\nFilter out some ppc64 specific idle loop functions and remove\nleading \u0027.\u0027 on ppc64 text symbols.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nCc: a.p.zijlstra@chello.nl\nCc: paulus@samba.org\nLKML-Reference: \u003c20090630230140.995643441@samba.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2ab52083ffc057014e502cf3473adc41436922fa",
      "tree": "b169ba14b8bce50bd5c6ee01787657b0626b5d92",
      "parents": [
        "6717534ddc328ae5cdf89f1ef802db83fc451f19"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Wed Jul 01 09:00:46 2009 +1000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 01 01:25:19 2009 +0200"
      },
      "message": "perf top: Move skip symbols to an array\n\nMove the list of symbols we skip into an array, making it\neasier to add new ones.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nCc: a.p.zijlstra@chello.nl\nCc: paulus@samba.org\nLKML-Reference: \u003c20090630230140.904782938@samba.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1f208ea67821703fd4de056ea6f0baa81f4ad4a5",
      "tree": "4095281591798121f0744726b6c784bb5ebe7fff",
      "parents": [
        "7bec7a9134c25cecb0d7029199b59f7b1bef35b8"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Wed Jul 01 09:00:44 2009 +1000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 01 01:25:18 2009 +0200"
      },
      "message": "perf report: Fix -z option\n\nFix a copy and paste error, -z was setting the group option.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nCc: a.p.zijlstra@chello.nl\nCc: paulus@samba.org\nLKML-Reference: \u003c20090630230140.714204656@samba.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e6e18ec79b023d5fe84226cef533cf0e3770ce93",
      "tree": "6fc1bd9afd21454864abe2aec6a0e35e17d47f04",
      "parents": [
        "bfbd3381e63aa2a14c6706afb50ce4630aa0d9a2"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 25 11:27:12 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 25 21:39:08 2009 +0200"
      },
      "message": "perf_counter: Rework the sample ABI\n\nThe PERF_EVENT_READ implementation made me realize we don\u0027t\nactually need the sample_type int the output sample, since\nwe already have that in the perf_counter_attr information.\n\nTherefore, remove the PERF_EVENT_MISC_OVERFLOW bit and the\nevent-\u003etype overloading, and imply put counter overflow\nsamples in a PERF_EVENT_SAMPLE type.\n\nThis also fixes the issue that event-\u003etype was only 32-bit\nand sample_type had 64 usable bits.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9cffa8d53335d891cc0ecb3824a67118b3ee4b2f",
      "tree": "420e0f96198f0e78aedd006280826b8cf0839820",
      "parents": [
        "b49a9e7e72103ea91946453c19703a4dfa1994fe"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jun 19 22:21:42 2009 +1000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 19 18:25:47 2009 +0200"
      },
      "message": "perf_counter tools: Define and use our own u64, s64 etc. definitions\n\nOn 64-bit powerpc, __u64 is defined to be unsigned long rather than\nunsigned long long.  This causes compiler warnings every time we\nprint a __u64 value with %Lx.\n\nRather than changing __u64, we define our own u64 to be unsigned long\nlong on all architectures, and similarly s64 as signed long long.\nFor consistency we also define u32, s32, u16, s16, u8 and s8.  These\ndefinitions are put in a new header, types.h, because these definitions\nare needed in util/string.h and util/symbol.h.\n\nThe main change here is the mechanical change of __[us]{64,32,16,8}\nto remove the \"__\".  The other changes are:\n\n* Create types.h\n* Include types.h in perf.h, util/string.h and util/symbol.h\n* Add types.h to the LIB_H definition in Makefile\n* Added (u64) casts in process_overflow_event() and print_sym_table()\n  to kill two remaining warnings.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: benh@kernel.crashing.org\nLKML-Reference: \u003c19003.33494.495844.956580@cargo.ozlabs.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f4dbfa8f3131a84257223393905f7efad0ca5996",
      "tree": "67bb2666868c4449c2fa9ba6dc931721f60deb6c",
      "parents": [
        "1c432d899d32d36371ee4ee310fa3609cf0e5742"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 11 14:06:28 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 11 17:54:15 2009 +0200"
      },
      "message": "perf_counter: Standardize event names\n\nPure renames only, to PERF_COUNT_HW_* and PERF_COUNT_SW_*.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "729ff5e2aaf181f5d3ab849337fce406cd19b1d9",
      "tree": "49591d8103f05bd157c083b9392ed7f4a8b3ae17",
      "parents": [
        "df58ab24bf26b166874bfb18b3b5a2e0a8e63179"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 11 14:16:15 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 11 16:48:38 2009 +0200"
      },
      "message": "perf_counter tools: Clean up u64 usage\n\nA build error slipped in:\n\n builtin-report.c: In function ‘hist_entry__fprintf’:\n builtin-report.c:711: error: format ‘%12d’ expects type ‘int’, but argument 3 has type ‘uint64_t’\n\nBecause we got a bit sloppy with those types. uint64_t really sucks,\nbecause there\u0027s no printf format for it. So standardize on __u64\ninstead - for all types that go to or come from the ABI (which is __u64),\nor for values that need to be large enough even on 32-bit.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ],
  "next": "aefcf37b82886260d8540c9fb815e613c8977e06"
}
