)]}'
{
  "commit": "3e76ac78b08479e84a3eca3fb1b3066fb8230461",
  "tree": "974a1ca64ec49605232f2d4800e6b8b23c0837c7",
  "parents": [
    "124ba9403318d834ef21bcd899c22c870708d2c4"
  ],
  "author": {
    "name": "Andrew Vagin",
    "email": "avagin@openvz.org",
    "time": "Tue Dec 20 17:32:45 2011 +0300"
  },
  "committer": {
    "name": "Arnaldo Carvalho de Melo",
    "email": "acme@redhat.com",
    "time": "Tue Dec 20 12:50:09 2011 -0200"
  },
  "message": "perf record: Add ability to record event period\n\nThe problem is that when SAMPLE_PERIOD is not set, the kernel generates\na number of samples in proportion to an event\u0027s period. Number of these\nsamples may be too big and the kernel throttles all samples above a\ndefined limit.\n\nE.g.: I want to trace when a process sleeps. I created a process which\nsleeps for 1ms and for 4ms.  perf got 100 events in both cases.\n\nswapper 0 [000] 1141.371830: sched_stat_sleep: comm\u003dfoo pid\u003d1801 delay\u003d1386750 [ns]\nswapper 0 [000] 1141.369444: sched_stat_sleep: comm\u003dfoo pid\u003d1801 delay\u003d4499585 [ns]\n\nIn the first case a kernel want to send 4499585 events and in the second\ncase it wants to send 1386750 events.  perf-reports shows that process\nsleeps in both places equal time.\n\nInstead of this we can get only one sample with an attribute period. As\nresult we have less data transferring between kernel and user-space and\nwe avoid throttling of samples.\n\nThe patch \"events: Don\u0027t divide events if it has field period\" added a\nkernel part of this functionality.\n\nAcked-by: Arun Sharma \u003casharma@fb.com\u003e\nCc: Arun Sharma \u003casharma@fb.com\u003e\nCc: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: devel@openvz.org\nLink: http://lkml.kernel.org/r/1324391565-1369947-1-git-send-email-avagin@openvz.org\nSigned-off-by: Andrew Vagin \u003cavagin@openvz.org\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "766fa0a91a320547490d66c7a9452fbd2a1b863f",
      "old_mode": 33188,
      "old_path": "tools/perf/builtin-record.c",
      "new_id": "f8fd14fb62ecb44a0a677e9ec0c27960bb2f077d",
      "new_mode": 33188,
      "new_path": "tools/perf/builtin-record.c"
    },
    {
      "type": "modify",
      "old_id": "ea804f5a8cc2ff66df346395181306f1ff912bad",
      "old_mode": 33188,
      "old_path": "tools/perf/perf.h",
      "new_id": "64f8bee31ced8d7eb3586788e4a69f872c33e57a",
      "new_mode": 33188,
      "new_path": "tools/perf/perf.h"
    },
    {
      "type": "modify",
      "old_id": "4a8c8b02e9cc4961298477eb4dab10e35f0db16c",
      "old_mode": 33188,
      "old_path": "tools/perf/util/evsel.c",
      "new_id": "60ad0286759ef78f11f3dbf528d024da002a8023",
      "new_mode": 33188,
      "new_path": "tools/perf/util/evsel.c"
    }
  ]
}
