|
@@ -261,16 +261,7 @@ static int create_perf_stat_counter(struct perf_evsel *evsel,
|
|
*/
|
|
*/
|
|
attr->sample_period = 0;
|
|
attr->sample_period = 0;
|
|
|
|
|
|
- /*
|
|
|
|
- * But set sample_type to PERF_SAMPLE_IDENTIFIER, which should be harmless
|
|
|
|
- * while avoiding that older tools show confusing messages.
|
|
|
|
- *
|
|
|
|
- * However for pipe sessions we need to keep it zero,
|
|
|
|
- * because script's perf_evsel__check_attr is triggered
|
|
|
|
- * by attr->sample_type != 0, and we can't run it on
|
|
|
|
- * stat sessions.
|
|
|
|
- */
|
|
|
|
- if (!(STAT_RECORD && perf_stat.data.is_pipe))
|
|
|
|
|
|
+ if (config->identifier)
|
|
attr->sample_type = PERF_SAMPLE_IDENTIFIER;
|
|
attr->sample_type = PERF_SAMPLE_IDENTIFIER;
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -3064,6 +3055,17 @@ int cmd_stat(int argc, const char **argv)
|
|
if (perf_stat_init_aggr_mode())
|
|
if (perf_stat_init_aggr_mode())
|
|
goto out;
|
|
goto out;
|
|
|
|
|
|
|
|
+ /*
|
|
|
|
+ * Set sample_type to PERF_SAMPLE_IDENTIFIER, which should be harmless
|
|
|
|
+ * while avoiding that older tools show confusing messages.
|
|
|
|
+ *
|
|
|
|
+ * However for pipe sessions we need to keep it zero,
|
|
|
|
+ * because script's perf_evsel__check_attr is triggered
|
|
|
|
+ * by attr->sample_type != 0, and we can't run it on
|
|
|
|
+ * stat sessions.
|
|
|
|
+ */
|
|
|
|
+ stat_config.identifier = !(STAT_RECORD && perf_stat.data.is_pipe);
|
|
|
|
+
|
|
/*
|
|
/*
|
|
* We dont want to block the signals - that would cause
|
|
* We dont want to block the signals - that would cause
|
|
* child tasks to inherit that and Ctrl-C would not work.
|
|
* child tasks to inherit that and Ctrl-C would not work.
|