public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4] perf report: Fix regression when decoding intelPT traces
@ 2018-01-10 20:31 Mathieu Poirier
  2018-01-18 16:28 ` Arnaldo Carvalho de Melo
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Mathieu Poirier @ 2018-01-10 20:31 UTC (permalink / raw)
  To: acme
  Cc: jolsa, peterz, mingo, alexander.shishkin, linux-kernel,
	mathieu.poirier

Commit (93d10af26bb7 perf tools: Optimize sample parsing for ordered
events) breaks intelPT trace decoding by invariably returning an error if
the event type isn't a PERF_SAMPLE_TIME.

With this patch the timestamp is initialised and processing is allowed to
continue if the error returned by function
perf_evlist__parse_sample_timestamp() is not a fault.

Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Acked-by: Jiri Olsa <jolsa@redhat.com>
---
Changes for v4:
- Rebased to latest perf/core branch
- Added Jiri's ACK
---
 tools/perf/util/session.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
index 54e30f1bcbd7..07221884f725 100644
--- a/tools/perf/util/session.c
+++ b/tools/perf/util/session.c
@@ -1508,10 +1508,10 @@ static s64 perf_session__process_event(struct perf_session *session,
 		return perf_session__process_user_event(session, event, file_offset);
 
 	if (tool->ordered_events) {
-		u64 timestamp;
+		u64 timestamp = -1ULL;
 
 		ret = perf_evlist__parse_sample_timestamp(evlist, event, &timestamp);
-		if (ret)
+		if (ret && ret != -1)
 			return ret;
 
 		ret = perf_session__queue_event(session, event, timestamp, file_offset);
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH v4] perf report: Fix regression when decoding intelPT traces
  2018-01-10 20:31 [PATCH v4] perf report: Fix regression when decoding intelPT traces Mathieu Poirier
@ 2018-01-18 16:28 ` Arnaldo Carvalho de Melo
  2018-01-18 16:29 ` Arnaldo Carvalho de Melo
  2018-01-24 11:22 ` [tip:perf/core] perf report: Fix regression when decoding intel_pt traces tip-bot for Mathieu Poirier
  2 siblings, 0 replies; 5+ messages in thread
From: Arnaldo Carvalho de Melo @ 2018-01-18 16:28 UTC (permalink / raw)
  To: Mathieu Poirier; +Cc: jolsa, peterz, mingo, alexander.shishkin, linux-kernel

Em Wed, Jan 10, 2018 at 01:31:52PM -0700, Mathieu Poirier escreveu:
> Commit (93d10af26bb7 perf tools: Optimize sample parsing for ordered
> events) breaks intelPT trace decoding by invariably returning an error if
> the event type isn't a PERF_SAMPLE_TIME.

Thanks, applied.
 
> With this patch the timestamp is initialised and processing is allowed to
> continue if the error returned by function
> perf_evlist__parse_sample_timestamp() is not a fault.
> 
> Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
> Acked-by: Jiri Olsa <jolsa@redhat.com>
> ---
> Changes for v4:
> - Rebased to latest perf/core branch
> - Added Jiri's ACK
> ---
>  tools/perf/util/session.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
> index 54e30f1bcbd7..07221884f725 100644
> --- a/tools/perf/util/session.c
> +++ b/tools/perf/util/session.c
> @@ -1508,10 +1508,10 @@ static s64 perf_session__process_event(struct perf_session *session,
>  		return perf_session__process_user_event(session, event, file_offset);
>  
>  	if (tool->ordered_events) {
> -		u64 timestamp;
> +		u64 timestamp = -1ULL;
>  
>  		ret = perf_evlist__parse_sample_timestamp(evlist, event, &timestamp);
> -		if (ret)
> +		if (ret && ret != -1)
>  			return ret;
>  
>  		ret = perf_session__queue_event(session, event, timestamp, file_offset);
> -- 
> 2.7.4

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v4] perf report: Fix regression when decoding intelPT traces
  2018-01-10 20:31 [PATCH v4] perf report: Fix regression when decoding intelPT traces Mathieu Poirier
  2018-01-18 16:28 ` Arnaldo Carvalho de Melo
@ 2018-01-18 16:29 ` Arnaldo Carvalho de Melo
  2018-01-19  7:12   ` Adrian Hunter
  2018-01-24 11:22 ` [tip:perf/core] perf report: Fix regression when decoding intel_pt traces tip-bot for Mathieu Poirier
  2 siblings, 1 reply; 5+ messages in thread
From: Arnaldo Carvalho de Melo @ 2018-01-18 16:29 UTC (permalink / raw)
  To: Adrian Hunter
  Cc: Mathieu Poirier, jolsa, peterz, mingo, alexander.shishkin,
	linux-kernel

Em Wed, Jan 10, 2018 at 01:31:52PM -0700, Mathieu Poirier escreveu:
> Commit (93d10af26bb7 perf tools: Optimize sample parsing for ordered
> events) breaks intelPT trace decoding by invariably returning an error if
> the event type isn't a PERF_SAMPLE_TIME.

Adrian, have you had the chance of looking at this?

I'm tentatively applying with Jiri's ack.

- Arnaldo
 
> With this patch the timestamp is initialised and processing is allowed to
> continue if the error returned by function
> perf_evlist__parse_sample_timestamp() is not a fault.
> 
> Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
> Acked-by: Jiri Olsa <jolsa@redhat.com>
> ---
> Changes for v4:
> - Rebased to latest perf/core branch
> - Added Jiri's ACK
> ---
>  tools/perf/util/session.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
> index 54e30f1bcbd7..07221884f725 100644
> --- a/tools/perf/util/session.c
> +++ b/tools/perf/util/session.c
> @@ -1508,10 +1508,10 @@ static s64 perf_session__process_event(struct perf_session *session,
>  		return perf_session__process_user_event(session, event, file_offset);
>  
>  	if (tool->ordered_events) {
> -		u64 timestamp;
> +		u64 timestamp = -1ULL;
>  
>  		ret = perf_evlist__parse_sample_timestamp(evlist, event, &timestamp);
> -		if (ret)
> +		if (ret && ret != -1)
>  			return ret;
>  
>  		ret = perf_session__queue_event(session, event, timestamp, file_offset);
> -- 
> 2.7.4

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v4] perf report: Fix regression when decoding intelPT traces
  2018-01-18 16:29 ` Arnaldo Carvalho de Melo
@ 2018-01-19  7:12   ` Adrian Hunter
  0 siblings, 0 replies; 5+ messages in thread
From: Adrian Hunter @ 2018-01-19  7:12 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo
  Cc: Mathieu Poirier, jolsa, peterz, mingo, alexander.shishkin,
	linux-kernel

On 18/01/18 18:29, Arnaldo Carvalho de Melo wrote:
> Em Wed, Jan 10, 2018 at 01:31:52PM -0700, Mathieu Poirier escreveu:
>> Commit (93d10af26bb7 perf tools: Optimize sample parsing for ordered
>> events) breaks intelPT trace decoding by invariably returning an error if
>> the event type isn't a PERF_SAMPLE_TIME.
> 
> Adrian, have you had the chance of looking at this?
> 
> I'm tentatively applying with Jiri's ack.

Yes, it is fine.  FWIW

Acked-by: Adrian Hunter <adrian.hunter@intel.com>

> 
> - Arnaldo
>  
>> With this patch the timestamp is initialised and processing is allowed to
>> continue if the error returned by function
>> perf_evlist__parse_sample_timestamp() is not a fault.
>>
>> Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
>> Acked-by: Jiri Olsa <jolsa@redhat.com>
>> ---
>> Changes for v4:
>> - Rebased to latest perf/core branch
>> - Added Jiri's ACK
>> ---
>>  tools/perf/util/session.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
>> index 54e30f1bcbd7..07221884f725 100644
>> --- a/tools/perf/util/session.c
>> +++ b/tools/perf/util/session.c
>> @@ -1508,10 +1508,10 @@ static s64 perf_session__process_event(struct perf_session *session,
>>  		return perf_session__process_user_event(session, event, file_offset);
>>  
>>  	if (tool->ordered_events) {
>> -		u64 timestamp;
>> +		u64 timestamp = -1ULL;
>>  
>>  		ret = perf_evlist__parse_sample_timestamp(evlist, event, &timestamp);
>> -		if (ret)
>> +		if (ret && ret != -1)
>>  			return ret;
>>  
>>  		ret = perf_session__queue_event(session, event, timestamp, file_offset);
>> -- 
>> 2.7.4
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [tip:perf/core] perf report: Fix regression when decoding intel_pt traces
  2018-01-10 20:31 [PATCH v4] perf report: Fix regression when decoding intelPT traces Mathieu Poirier
  2018-01-18 16:28 ` Arnaldo Carvalho de Melo
  2018-01-18 16:29 ` Arnaldo Carvalho de Melo
@ 2018-01-24 11:22 ` tip-bot for Mathieu Poirier
  2 siblings, 0 replies; 5+ messages in thread
From: tip-bot for Mathieu Poirier @ 2018-01-24 11:22 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: linux-kernel, mathieu.poirier, peterz, mingo, alexander.shishkin,
	tglx, jolsa, hpa, acme, adrian.hunter

Commit-ID:  631e8f0a9748d7ef1eb6a84d0d5b9e81a79433ef
Gitweb:     https://git.kernel.org/tip/631e8f0a9748d7ef1eb6a84d0d5b9e81a79433ef
Author:     Mathieu Poirier <mathieu.poirier@linaro.org>
AuthorDate: Wed, 10 Jan 2018 13:31:52 -0700
Committer:  Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Tue, 23 Jan 2018 09:51:36 -0300

perf report: Fix regression when decoding intel_pt traces

Commit (93d10af26bb7 perf tools: Optimize sample parsing for ordered
events) breaks intelPT trace decoding by invariably returning an error
if the event type isn't a PERF_SAMPLE_TIME.

With this patch the timestamp is initialised and processing is allowed
to continue if the error returned by function
perf_evlist__parse_sample_timestamp() is not a fault.

Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Acked-by: Jiri Olsa <jolsa@redhat.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Fixes: 93d10af26bb7 ("perf tools: Optimize sample parsing for ordered events")
Link: http://lkml.kernel.org/r/1515616312-27645-1-git-send-email-mathieu.poirier@linaro.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/util/session.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
index 8d0fa2f..c71ced7 100644
--- a/tools/perf/util/session.c
+++ b/tools/perf/util/session.c
@@ -1508,10 +1508,10 @@ static s64 perf_session__process_event(struct perf_session *session,
 		return perf_session__process_user_event(session, event, file_offset);
 
 	if (tool->ordered_events) {
-		u64 timestamp;
+		u64 timestamp = -1ULL;
 
 		ret = perf_evlist__parse_sample_timestamp(evlist, event, &timestamp);
-		if (ret)
+		if (ret && ret != -1)
 			return ret;
 
 		ret = perf_session__queue_event(session, event, timestamp, file_offset);

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-01-24 11:26 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-10 20:31 [PATCH v4] perf report: Fix regression when decoding intelPT traces Mathieu Poirier
2018-01-18 16:28 ` Arnaldo Carvalho de Melo
2018-01-18 16:29 ` Arnaldo Carvalho de Melo
2018-01-19  7:12   ` Adrian Hunter
2018-01-24 11:22 ` [tip:perf/core] perf report: Fix regression when decoding intel_pt traces tip-bot for Mathieu Poirier

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox