perf tools: Create function to perform multiple time range checking
authorJin Yao <yao.jin@linux.intel.com>
Fri, 8 Dec 2017 13:13:44 +0000 (21:13 +0800)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Mon, 8 Jan 2018 14:41:06 +0000 (11:41 -0300)
commit9a9b8b4b2271e763c1600311a3d4ecc2ac359b55
treeab3a2dca1dc0e5af42f9473958aefd67463fb7d6
parent13a70f350665580708ab11f725d3578eaacbf2d0
perf tools: Create function to perform multiple time range checking

Previous patch supports the multiple time range.

For example, select the first and second 10% time slices.
perf report --time 10%/1,10%/2

We need a function to check if a timestamp is in the ranges of
[0, 10%) and [10%, 20%].

Note that it includes the last element in [10%, 20%] but it doesn't
include the last element in [0, 10%). It's to avoid the overlap.

This patch implments a new function perf_time__ranges_skip_sample
for this checking.

Change log:

v4: Let perf_time__ranges_skip_sample be compatible with
    perf_time__skip_sample when only one time range.

Signed-off-by: Jin Yao <yao.jin@linux.intel.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Kan Liang <kan.liang@intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/1512738826-2628-5-git-send-email-yao.jin@linux.intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/time-utils.c
tools/perf/util/time-utils.h