tools/perf/bench/inject-buildid.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
perf bench internals inject-build-id suffers from the following error when
only one DSO is collected.
perf bench internals inject-build-id -v
Collected 1 DSOs
traps: internals-injec[2305] trap divide error
ip:557566ba6394 sp:7ffd4de97fe0 error:0 in perf[557566b2a000+23d000]
Build-id injection benchmark
Iteration #1
Floating point exception
This patch removes the unnecessary minus one from the divisor which also
corrects the randomization range.
Signed-off-by: He Zhe <zhe.he@windriver.com>
---
tools/perf/bench/inject-buildid.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/perf/bench/inject-buildid.c b/tools/perf/bench/inject-buildid.c
index 49331743c743..a759eb2328be 100644
--- a/tools/perf/bench/inject-buildid.c
+++ b/tools/perf/bench/inject-buildid.c
@@ -362,7 +362,7 @@ static int inject_build_id(struct bench_data *data, u64 *max_rss)
return -1;
for (i = 0; i < nr_mmaps; i++) {
- int idx = rand() % (nr_dsos - 1);
+ int idx = rand() % nr_dsos;
struct bench_dso *dso = &dsos[idx];
u64 timestamp = rand() % 1000000;
--
2.25.1
On Tue, May 07, 2024 at 02:50:26PM +0800, He Zhe wrote: > perf bench internals inject-build-id suffers from the following error when > only one DSO is collected. > > perf bench internals inject-build-id -v > Collected 1 DSOs > traps: internals-injec[2305] trap divide error > ip:557566ba6394 sp:7ffd4de97fe0 error:0 in perf[557566b2a000+23d000] > Build-id injection benchmark > Iteration #1 > Floating point exception > > This patch removes the unnecessary minus one from the divisor which also > corrects the randomization range. Thanks, applied to perf-tools-next, and added: Fixes: 0bf02a0d80427f26 ("perf bench: Add build-id injection benchmark") To make sure this ends up being picked by the stable guys and backporters. - Arnaldo > Signed-off-by: He Zhe <zhe.he@windriver.com> > --- > tools/perf/bench/inject-buildid.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/tools/perf/bench/inject-buildid.c b/tools/perf/bench/inject-buildid.c > index 49331743c743..a759eb2328be 100644 > --- a/tools/perf/bench/inject-buildid.c > +++ b/tools/perf/bench/inject-buildid.c > @@ -362,7 +362,7 @@ static int inject_build_id(struct bench_data *data, u64 *max_rss) > return -1; > > for (i = 0; i < nr_mmaps; i++) { > - int idx = rand() % (nr_dsos - 1); > + int idx = rand() % nr_dsos; > struct bench_dso *dso = &dsos[idx]; > u64 timestamp = rand() % 1000000; > > -- > 2.25.1 >
© 2016 - 2024 Red Hat, Inc.