Messages in this thread | | | Date | Fri, 18 Jan 2013 15:05:57 +0100 | From | Jiri Olsa <> | Subject | Re: [PATCH v2 2/2] perf stat: add interval printing |
| |
On Fri, Jan 18, 2013 at 02:59:58PM +0100, Stephane Eranian wrote: > On Fri, Jan 18, 2013 at 2:50 PM, Jiri Olsa <jolsa@redhat.com> wrote: > > On Fri, Jan 18, 2013 at 02:06:28PM +0100, Stephane Eranian wrote: > >> This patch adds a new printing mode for perf stat. > >> It allows internval printing. That means perf stat > > > > SNIP > > > >> const char * const stat_usage[] = { > >> @@ -1245,12 +1356,23 @@ int cmd_stat(int argc, const char **argv, const char *prefix __maybe_unused) > >> usage_with_options(stat_usage, options); > >> return -1; > >> } > >> + if (interval < 0 || (interval > 0 && interval < 100)) { > >> + pr_err("print interval must be >= 100ms\n"); > >> + usage_with_options(stat_usage, options); > >> + return -1; > >> + } > >> > >> list_for_each_entry(pos, &evsel_list->entries, node) { > >> if (perf_evsel__alloc_stat_priv(pos) < 0 || > >> perf_evsel__alloc_counts(pos, perf_evsel__nr_cpus(pos)) < 0) > >> goto out_free_fd; > >> } > >> + if (interval) { > >> + list_for_each_entry(pos, &evsel_list->entries, node) { > >> + if (perf_evsel__alloc_prev_raw_counts(pos) < 0) > >> + goto out_free_fd; > >> + } > >> + } > > > > this could be squeezed up into the previous loop, > > > The raw_counts are lazily allocated. So you'd have to have > > if (interval) > perf_evsel__alloc_prev_raw_counts(pos); > > in the body of the loop.
right, jirka
| |