)]}'
{
  "commit": "dd60fba7324572498d91163e96b1cfe5cd5f7f3b",
  "tree": "840943df1c2f561e7de3c4a0e603f58e82b25e1a",
  "parents": [
    "30d476ae738d1ce33f170dd79398ecd211274df6"
  ],
  "author": {
    "name": "Mathieu Poirier",
    "email": "mathieu.poirier@linaro.org",
    "time": "Tue Sep 06 10:37:15 2016 -0600"
  },
  "committer": {
    "name": "Arnaldo Carvalho de Melo",
    "email": "acme@redhat.com",
    "time": "Tue Sep 13 17:09:11 2016 -0300"
  },
  "message": "perf tools: Add infrastructure for PMU specific configuration\n\nThis patch adds PMU driver specific configuration to the parser\ninfrastructure by preceding any term with the \u0027@\u0027 letter.  As such doing\nsomething like:\n\nperf record -e some_event/@cfg1,@cfg2\u003dconfig/ ...\n\nwill see \u0027cfg1\u0027 and \u0027cfg2\u003dconfig\u0027 being added to the list of evsel\nconfig terms.  Token \u0027cfg1\u0027 and \u0027cfg2\u003dconfig\u0027 are not processed in user\nspace and are meant to be interpreted by the PMU driver.\n\nFirst the lexer/parser are supplemented with the required definitions to\nrecognise the driver specific configuration.  From there they are simply\nadded to the list of event terms.  The bulk of the work is done in\nfunction \"parse_events_add_pmu()\" where driver config event terms are\nadded to a new list of driver config terms, which in turn spliced with\nthe event\u0027s new driver configuration list.\n\nSigned-off-by: Mathieu Poirier \u003cmathieu.poirier@linaro.org\u003e\nAcked-by: Jiri Olsa \u003cjolsa@kernel.org\u003e\nCc: Alexander Shishkin \u003calexander.shishkin@linux.intel.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/1473179837-3293-4-git-send-email-mathieu.poirier@linaro.org\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "379a2bed07c09da5698f0555f567512c33453146",
      "old_mode": 33188,
      "old_path": "tools/perf/Documentation/perf-record.txt",
      "new_id": "1a24f4d64328c1e7551822c12c12fd9854c68284",
      "new_mode": 33188,
      "new_path": "tools/perf/Documentation/perf-record.txt"
    },
    {
      "type": "modify",
      "old_id": "4d44129e050b0fef0ddc43ef2fd9c9c446349f0a",
      "old_mode": 33188,
      "old_path": "tools/perf/util/evsel.h",
      "new_id": "323806082c58592256913fa155def7cc2f28eaee",
      "new_mode": 33188,
      "new_path": "tools/perf/util/evsel.h"
    },
    {
      "type": "modify",
      "old_id": "6c913c3914fb92163a6f8cabda62c0282b64c38e",
      "old_mode": 33188,
      "old_path": "tools/perf/util/parse-events.c",
      "new_id": "2eb8b1ed4cc8dcc2db13d9bbb8a8da6bb1f1f84f",
      "new_mode": 33188,
      "new_path": "tools/perf/util/parse-events.c"
    },
    {
      "type": "modify",
      "old_id": "d1edbf8cc66a7704cf774c3f3fc80fee8f1a31bd",
      "old_mode": 33188,
      "old_path": "tools/perf/util/parse-events.h",
      "new_id": "8d09a976fca80cb4a481158e79c1751c7f9a4f26",
      "new_mode": 33188,
      "new_path": "tools/perf/util/parse-events.h"
    },
    {
      "type": "modify",
      "old_id": "7a2519435da05273febd9af1974637cbc1c5d8c7",
      "old_mode": 33188,
      "old_path": "tools/perf/util/parse-events.l",
      "new_id": "9f43fda2570f959833c85b89aa29b3612c6d6abb",
      "new_mode": 33188,
      "new_path": "tools/perf/util/parse-events.l"
    },
    {
      "type": "modify",
      "old_id": "5be4a5f216d6d23889e07e225810fec40df67c30",
      "old_mode": 33188,
      "old_path": "tools/perf/util/parse-events.y",
      "new_id": "879115f93edcdc52171b42fc6e544662b579da1f",
      "new_mode": 33188,
      "new_path": "tools/perf/util/parse-events.y"
    }
  ]
}
