On 32-bit systems, using perf report -n would yield garbage
for the Samples column. This is because the hpp code was
assuming the hist_entry.stat.nr_events was u64 when in
reality it was u32.
This patch fixes the problem by defining nr_events
to be u64. u32 is too small anyway.
Signed-off-by: Stephane Eranian <[email protected]>
---
diff --git a/tools/perf/ui/browsers/hists.c b/tools/perf/ui/browsers/hists.c
index ef2f93c..616757e 100644
--- a/tools/perf/ui/browsers/hists.c
+++ b/tools/perf/ui/browsers/hists.c
@@ -992,7 +992,7 @@ static int hist_browser__fprintf_entry(struct hist_browser *browser,
printed += fprintf(fp, " %5.2f%%", percent);
if (symbol_conf.show_nr_samples)
- printed += fprintf(fp, " %11u", he->stat.nr_events);
+ printed += fprintf(fp, " %11"PRIu64, he->stat.nr_events);
if (symbol_conf.show_total_period)
printed += fprintf(fp, " %12" PRIu64, he->stat.period);
diff --git a/tools/perf/util/sort.h b/tools/perf/util/sort.h
index 13761d8..ecda054 100644
--- a/tools/perf/util/sort.h
+++ b/tools/perf/util/sort.h
@@ -49,7 +49,7 @@ struct he_stat {
u64 period_us;
u64 period_guest_sys;
u64 period_guest_us;
- u32 nr_events;
+ u64 nr_events;
};
struct hist_entry_diff {
Hi Stephane,
2012-10-22 (월), 23:00 +0200, Stephane Eranian:
> On 32-bit systems, using perf report -n would yield garbage
> for the Samples column. This is because the hpp code was
> assuming the hist_entry.stat.nr_events was u64 when in
> reality it was u32.
>
> This patch fixes the problem by defining nr_events
> to be u64. u32 is too small anyway.
>
> Signed-off-by: Stephane Eranian <[email protected]>
Acked-by: Namhyung Kim <[email protected]>
Thanks,
Namhyung