From: Kan Liang <kan.li...@intel.com> no functional change
Signed-off-by: Kan Liang <kan.li...@intel.com> --- tools/perf/builtin-kvm.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/tools/perf/builtin-kvm.c b/tools/perf/builtin-kvm.c index 721f4f9..397a6b6 100644 --- a/tools/perf/builtin-kvm.c +++ b/tools/perf/builtin-kvm.c @@ -741,11 +741,18 @@ static s64 perf_kvm__mmap_read_idx(struct perf_kvm_stat *kvm, int idx, { union perf_event *event; struct perf_sample sample; + struct perf_mmap_read read; s64 n = 0; int err; *mmap_time = ULLONG_MAX; - while ((event = perf_evlist__mmap_read(kvm->evlist, idx)) != NULL) { + + if (perf_evlist__mmap_read_init(kvm->evlist, idx, &read, false)) { + pr_err("Can't get mmap information\n"); + return -1; + } + + while ((event = perf_mmap__read_event(&read)) != NULL) { err = perf_evlist__parse_sample(kvm->evlist, event, &sample); if (err) { perf_evlist__mmap_consume(kvm->evlist, idx); @@ -774,6 +781,7 @@ static s64 perf_kvm__mmap_read_idx(struct perf_kvm_stat *kvm, int idx, if (n == PERF_KVM__MAX_EVENTS_PER_MMAP) break; } + perf_mmap__read_done(&read); return n; } -- 2.5.5