Adrian Hunter 82b897782d perf: Differentiate exec() and non-exec() comm events
perf tools like 'perf report' can aggregate samples by comm strings,
which generally works.  However, there are other potential use-cases.
For example, to pair up 'calls' with 'returns' accurately (from branch
events like Intel BTS) it is necessary to identify whether the process
has exec'd.  Although a comm event is generated when an 'exec' happens
it is also generated whenever the comm string is changed on a whim
(e.g. by prctl PR_SET_NAME).  This patch adds a flag to the comm event
to differentiate one case from the other.

In order to determine whether the kernel supports the new flag, a
selection bit named 'exec' is added to struct perf_event_attr.  The
bit does nothing but will cause perf_event_open() to fail if the bit
is set on kernels that do not have it defined.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/537D9EBE.7030806@intel.com
Cc: Paul Mackerras <paulus@samba.org>
Cc: Dave Jones <davej@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-fsdevel@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2014-06-06 07:56:22 +02:00
..
2014-04-05 15:46:37 -07:00
2014-03-28 20:42:01 +01:00
2014-02-15 10:58:17 +00:00
2014-04-09 08:39:39 -07:00
2014-04-18 16:40:08 -07:00
2014-01-24 22:39:54 +01:00
2014-04-01 15:14:04 -07:00
2014-05-13 11:26:27 -04:00
2014-03-11 11:52:47 +01:00
2014-04-03 16:20:58 -07:00
2014-02-13 10:08:52 +05:30
2014-01-16 10:23:02 +10:30
2014-04-01 23:19:14 -04:00
2014-03-10 11:44:42 -04:00
2014-03-10 17:26:19 -07:00
2014-02-20 14:54:28 +01:00
2014-03-04 07:55:47 -08:00
2014-01-16 11:15:50 +01:00
2014-04-07 16:36:07 -07:00
2014-03-07 11:41:32 -05:00
2014-04-17 12:30:40 -07:00
2014-03-13 12:11:00 +10:30
2014-01-25 08:55:09 +01:00
2014-04-03 16:20:50 -07:00
2014-02-28 15:36:37 -08:00
2014-05-06 14:02:53 -04:00
2014-04-01 23:19:08 -04:00
2014-03-04 13:51:06 -05:00
2014-01-27 21:02:39 -08:00
2014-04-01 23:19:10 -04:00
2014-03-17 15:14:16 -04:00
2014-03-17 15:15:21 -04:00
2014-01-25 03:14:05 -05:00
2014-04-07 10:59:19 -07:00
2014-04-03 16:21:04 -07:00
2014-04-01 18:49:04 -07:00
2014-03-19 15:11:19 -06:00
2014-03-19 22:24:08 -04:00
2014-02-17 15:01:52 -08:00
2014-04-01 16:13:21 -07:00
2014-03-09 19:53:45 +01:00
2014-01-28 13:20:09 -08:00
2014-04-01 17:08:43 +02:00
2014-01-27 21:02:39 -08:00
2014-02-15 11:55:28 -08:00
2014-02-17 15:01:37 -08:00
2014-04-01 17:06:09 -07:00
2014-04-07 16:35:53 -07:00
2014-01-30 16:56:55 -08:00