[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 08/25] target/i386: Avoid unreachable variable declaration in mmu_
From: |
Paolo Bonzini |
Subject: |
[PULL 08/25] target/i386: Avoid unreachable variable declaration in mmu_translate() |
Date: |
Fri, 21 Apr 2023 11:32:59 +0200 |
From: Peter Maydell <peter.maydell@linaro.org>
Coverity complains (CID 1507880) that the declaration "int error_code;"
in mmu_translate() is unreachable code. Since this is only a declaration,
this isn't actually a bug, but:
* it's a bear-trap for future changes, because if it was changed to
include an initialization 'int error_code = foo;' then the
initialization wouldn't actually happen (being dead code)
* it's against our coding style, which wants declarations to be
at the start of blocks
* it means that anybody reading the code has to go and look up
exactly what the C rules are for skipping over variable declarations
using a goto
Move the declaration to the top of the function.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20230406155946.3362077-1-peter.maydell@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
target/i386/tcg/sysemu/excp_helper.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/target/i386/tcg/sysemu/excp_helper.c
b/target/i386/tcg/sysemu/excp_helper.c
index e87f90dbe3c7..b5f0abffa3de 100644
--- a/target/i386/tcg/sysemu/excp_helper.c
+++ b/target/i386/tcg/sysemu/excp_helper.c
@@ -147,6 +147,7 @@ static bool mmu_translate(CPUX86State *env, const
TranslateParams *in,
hwaddr pte_addr, paddr;
uint32_t pkr;
int page_size;
+ int error_code;
restart_all:
rsvd_mask = ~MAKE_64BIT_MASK(0, env_archcpu(env)->phys_bits);
@@ -467,7 +468,6 @@ do_check_protect_pse36:
out->page_size = page_size;
return true;
- int error_code;
do_fault_rsvd:
error_code = PG_ERROR_RSVD_MASK;
goto do_fault_cont;
--
2.40.0
- [PULL 00/25] First batch of misc patches for QEMU 8.1, Paolo Bonzini, 2023/04/21
- [PULL 01/25] mtest2make.py: teach suite name that are just "PROJECT", Paolo Bonzini, 2023/04/21
- [PULL 02/25] build-sys: prevent meson from downloading wrapped subprojects, Paolo Bonzini, 2023/04/21
- [PULL 03/25] build-sys: add slirp.wrap, Paolo Bonzini, 2023/04/21
- [PULL 05/25] vnc: avoid underflow when accessing user-provided address, Paolo Bonzini, 2023/04/21
- [PULL 04/25] nvme: remove constant argument to tracepoint, Paolo Bonzini, 2023/04/21
- [PULL 06/25] tests: bios-tables-test: replace memset with initializer, Paolo Bonzini, 2023/04/21
- [PULL 07/25] configure: Avoid -Werror=maybe-uninitialized, Paolo Bonzini, 2023/04/21
- [PULL 09/25] lasi: fix RTC migration, Paolo Bonzini, 2023/04/21
- [PULL 08/25] target/i386: Avoid unreachable variable declaration in mmu_translate(),
Paolo Bonzini <=
- [PULL 11/25] target/mips: tcg: detect out-of-bounds accesses to cpu_gpr and cpu_gpr_hi, Paolo Bonzini, 2023/04/21
- [PULL 10/25] coverity: update COMPONENTS.md, Paolo Bonzini, 2023/04/21
- [PULL 13/25] io: mark mixed functions that can suspend, Paolo Bonzini, 2023/04/21
- [PULL 12/25] qapi-gen: mark coroutine QMP command functions as coroutine_fn, Paolo Bonzini, 2023/04/21
- [PULL 18/25] postcopy-ram: do not use qatomic_mb_read, Paolo Bonzini, 2023/04/21
- [PULL 14/25] migration: mark mixed functions that can suspend, Paolo Bonzini, 2023/04/21
- [PULL 15/25] monitor: mark mixed functions that can suspend, Paolo Bonzini, 2023/04/21
- [PULL 16/25] target/i386: Change wrong XFRM value in SGX CPUID leaf, Paolo Bonzini, 2023/04/21
- [PULL 17/25] block-backend: remove qatomic_mb_read(), Paolo Bonzini, 2023/04/21
- [PULL 20/25] docs: explain effect of smp_read_barrier_depends() on modern architectures, Paolo Bonzini, 2023/04/21