[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 23/25] contrib/plugins: fix coverity warning in cache
|
From: |
Alex Bennée |
|
Subject: |
[PULL 23/25] contrib/plugins: fix coverity warning in cache |
|
Date: |
Wed, 11 Oct 2023 11:33:27 +0100 |
Coverity complains that appends_stats_line can be fed a 0 leading
to the undefined behaviour of a divide by 0.
Fixes: CID 1519044
Fixes: CID 1519047
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231009164104.369749-24-alex.bennee@linaro.org>
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index 4fca3edd07..9e7ade3b37 100644
--- a/contrib/plugins/cache.c
+++ b/contrib/plugins/cache.c
@@ -535,15 +535,13 @@ static void caches_free(Cache **caches)
}
}
-static void append_stats_line(GString *line, uint64_t l1_daccess,
- uint64_t l1_dmisses, uint64_t l1_iaccess,
- uint64_t l1_imisses, uint64_t l2_access,
- uint64_t l2_misses)
+static void append_stats_line(GString *line,
+ uint64_t l1_daccess, uint64_t l1_dmisses,
+ uint64_t l1_iaccess, uint64_t l1_imisses,
+ uint64_t l2_access, uint64_t l2_misses)
{
- double l1_dmiss_rate, l1_imiss_rate, l2_miss_rate;
-
- l1_dmiss_rate = ((double) l1_dmisses) / (l1_daccess) * 100.0;
- l1_imiss_rate = ((double) l1_imisses) / (l1_iaccess) * 100.0;
+ double l1_dmiss_rate = ((double) l1_dmisses) / (l1_daccess) * 100.0;
+ double l1_imiss_rate = ((double) l1_imisses) / (l1_iaccess) * 100.0;
g_string_append_printf(line, "%-14" PRIu64 " %-12" PRIu64 " %9.4lf%%"
" %-14" PRIu64 " %-12" PRIu64 " %9.4lf%%",
@@ -554,8 +552,8 @@ static void append_stats_line(GString *line, uint64_t
l1_daccess,
l1_imisses,
l1_iaccess ? l1_imiss_rate : 0.0);
- if (use_l2) {
- l2_miss_rate = ((double) l2_misses) / (l2_access) * 100.0;
+ if (l2_access && l2_misses) {
+ double l2_miss_rate = ((double) l2_misses) / (l2_access) * 100.0;
g_string_append_printf(line,
" %-12" PRIu64 " %-11" PRIu64 " %10.4lf%%",
l2_access,
--
2.39.2
- [PULL 05/25] tests/docker: make docker engine choice entirely configure driven, (continued)
- [PULL 05/25] tests/docker: make docker engine choice entirely configure driven, Alex Bennée, 2023/10/11
- [PULL 09/25] gdbstub: Fix target.xml response, Alex Bennée, 2023/10/11
- [PULL 06/25] configure: allow user to override docker engine, Alex Bennée, 2023/10/11
- [PULL 20/25] accel/tcg: Add plugin_enabled to DisasContextBase, Alex Bennée, 2023/10/11
- [PULL 15/25] gdbstub: Use g_markup_printf_escaped(), Alex Bennée, 2023/10/11
- [PULL 03/25] tests/lcitool: add swtpm to the package list, Alex Bennée, 2023/10/11
- [PULL 07/25] configure: remove gcc version suffixes, Alex Bennée, 2023/10/11
- [PULL 11/25] contrib/plugins: Use GRWLock in execlog, Alex Bennée, 2023/10/11
- [PULL 12/25] gdbstub: Introduce GDBFeature structure, Alex Bennée, 2023/10/11
- [PULL 17/25] target/ppc: Remove references to gdb_has_xml, Alex Bennée, 2023/10/11
- [PULL 23/25] contrib/plugins: fix coverity warning in cache,
Alex Bennée <=
- [PULL 25/25] contrib/plugins: fix coverity warning in hotblocks, Alex Bennée, 2023/10/11
- [PULL 16/25] target/arm: Remove references to gdb_has_xml, Alex Bennée, 2023/10/11
- [PULL 21/25] target/sh4: Disable decode_gusa when plugins enabled, Alex Bennée, 2023/10/11
- [PULL 18/25] gdbstub: Remove gdb_has_xml variable, Alex Bennée, 2023/10/11
- [PULL 24/25] contrib/plugins: fix coverity warning in lockstep, Alex Bennée, 2023/10/11
- [PULL 22/25] plugins: Set final instruction count in plugin_gen_tb_end, Alex Bennée, 2023/10/11
- Re: [PULL 00/25] testing, gdbstub and plugin updates, Stefan Hajnoczi, 2023/10/11