Re: [PATCH v2 1/3] perf diff: Support --time filter option

From: Jin, Yao
Date: Wed Feb 27 2019 - 08:04:29 EST




On 2/27/2019 5:27 PM, Jiri Olsa wrote:
On Tue, Feb 26, 2019 at 08:11:07PM +0800, Jin Yao wrote:

SNIP

+ abstime_tmp = abstime_ostr;
data__for_each_file(i, d) {
- d->session = perf_session__new(&d->data, false, &tool);
+ d->session = perf_session__new(&d->data, false, &pdiff.tool);
if (!d->session) {
pr_err("Failed to open %s\n", d->data.path);
ret = -1;
goto out_delete;
}
+ if (abstime_ostr) {
+ ret = parse_absolute_time(d, &abstime_tmp);
+ if (ret < 0)
+ goto out_delete;
+ } else if (pdiff.time_str) {
+ ret = parse_percent_time(d);
+ if (ret < 0)
+ goto out_delete;
+ } else {
+ pdiff.range_num = 1;

hum, why are we setting range_num to 1 again?

Yes, that may be not necessary. I will remove this line and test again.


it's really hard to parse this code, maybe
it'd be better in separate loop/function
that would setup just timestamps..


Do you mean the above parsing code should be put in a separate function (e.g. parse_time_string in following example)?

data__for_each_file(i, d) {
....
d->session = perf_session__new(&d->data, false, &pdiff.tool);
....
parse_time_string(...);
ret = perf_session__process_events(d->session);
....
}

Thanks
Jin Yao


thanks,
jirka