[tip:perf/core] perf time-utils: Treat time ranges consistently

From: tip-bot for Adrian Hunter
Date: Mon Jun 17 2019 - 15:51:08 EST


Commit-ID: f79a7689d99366aee9f89d785bca6c52ed6b76eb
Gitweb: https://git.kernel.org/tip/f79a7689d99366aee9f89d785bca6c52ed6b76eb
Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
AuthorDate: Tue, 4 Jun 2019 16:00:10 +0300
Committer: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
CommitDate: Mon, 10 Jun 2019 16:20:12 -0300

perf time-utils: Treat time ranges consistently

Currently, options allow only 1 explicit (non-percentage) time range.
In preparation for adding support for multiple explicit time ranges,
treat time ranges consistently.

Instead of treating some time ranges as inclusive and some as excluding
the end time, treat all time ranges as inclusive. This is only a 1
nanosecond change but is necessary to treat multiple explicit time
ranges in a consistent manner.

Note, there is a later patch that adds a test for time-utils.

Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
Cc: Jin Yao <yao.jin@xxxxxxxxxxxxxxx>
Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
Link: http://lkml.kernel.org/r/20190604130017.31207-13-adrian.hunter@xxxxxxxxx
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
---
tools/perf/util/time-utils.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/tools/perf/util/time-utils.c b/tools/perf/util/time-utils.c
index 20663a460df3..1d67cf1216c7 100644
--- a/tools/perf/util/time-utils.c
+++ b/tools/perf/util/time-utils.c
@@ -389,13 +389,12 @@ bool perf_time__ranges_skip_sample(struct perf_time_interval *ptime_buf,
ptime = &ptime_buf[i];

if (timestamp >= ptime->start &&
- ((timestamp < ptime->end && i < num - 1) ||
- (timestamp <= ptime->end && i == num - 1))) {
- break;
+ (timestamp <= ptime->end || !ptime->end)) {
+ return false;
}
}

- return (i == num) ? true : false;
+ return true;
}

int perf_time__parse_for_ranges(const char *time_str,