diff options
| author | Peter Maydell <peter.maydell@linaro.org> | 2025-09-22 10:37:01 +0100 |
|---|---|---|
| committer | Alex Bennée <alex.bennee@linaro.org> | 2025-09-26 10:07:54 +0100 |
| commit | 04387b4a056771bf4a95b310507c8302f12c4b65 (patch) | |
| tree | a339b6b9cda4906a69a84f442efa98c9f8dc5899 | |
| parent | c9e79557e465dc5ec92803aca4f330b9dc3c2d41 (diff) | |
| download | focaccia-qemu-04387b4a056771bf4a95b310507c8302f12c4b65.tar.gz focaccia-qemu-04387b4a056771bf4a95b310507c8302f12c4b65.zip | |
contrib/plugins/execlog: Explicitly check for qemu_plugin_read_register() failure
In insn_check_regs() we don't explicitly check whether
qemu_plugin_read_register() failed, which confuses Coverity into
thinking that sz can be -1 in the memcmp(). In fact the assertion
that sz == reg->last->len means this can't happen, but it's clearer
to both humans and Coverity if we explicitly assert that sz > 0, as
we already do in init_vcpu_register().
Coverity: CID 1611901, 1611902
Fixes: af6e4e0a22c1 ("contrib/plugins: extend execlog to track register changes")
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Message-ID: <20250710144543.1187715-1-peter.maydell@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-ID: <20250922093711.2768983-17-alex.bennee@linaro.org>
Diffstat (limited to '')
| -rw-r--r-- | contrib/plugins/execlog.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/contrib/plugins/execlog.c b/contrib/plugins/execlog.c index 06ec76d6e9..811f320319 100644 --- a/contrib/plugins/execlog.c +++ b/contrib/plugins/execlog.c @@ -95,6 +95,7 @@ static void insn_check_regs(CPU *cpu) g_byte_array_set_size(reg->new, 0); sz = qemu_plugin_read_register(reg->handle, reg->new); + g_assert(sz > 0); g_assert(sz == reg->last->len); if (memcmp(reg->last->data, reg->new->data, sz)) { |