diff options
Diffstat (limited to 'tools/perf/util')
-rw-r--r-- | tools/perf/util/block-info.c | 10 | ||||
-rw-r--r-- | tools/perf/util/block-info.h | 2 |
2 files changed, 12 insertions, 0 deletions
diff --git a/tools/perf/util/block-info.c b/tools/perf/util/block-info.c index ba891751a6ed..597d1205fa6c 100644 --- a/tools/perf/util/block-info.c +++ b/tools/perf/util/block-info.c @@ -454,3 +454,13 @@ int report__browse_block_hists(struct block_hist *bh, float min_percent, return 0; } + +float block_info__total_cycles_percent(struct hist_entry *he) +{ + struct block_info *bi = he->block_info; + + if (bi->total_cycles) + return bi->cycles * 100.0 / bi->total_cycles; + + return 0.0; +} diff --git a/tools/perf/util/block-info.h b/tools/perf/util/block-info.h index 8309297a6e8f..e4d20bccd9b6 100644 --- a/tools/perf/util/block-info.h +++ b/tools/perf/util/block-info.h @@ -73,4 +73,6 @@ struct block_report *block_info__create_report(struct evlist *evlist, int report__browse_block_hists(struct block_hist *bh, float min_percent, struct evsel *evsel); +float block_info__total_cycles_percent(struct hist_entry *he); + #endif /* __PERF_BLOCK_H */ |