From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: stefanha@redhat.com, "Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Peter Maydell" <peter.maydell@linaro.org>
Subject: [PULL 10/56] target/arm/hvf: Clean up local variable shadowing
Date: Fri, 29 Sep 2023 10:50:07 +0200 [thread overview]
Message-ID: <20230929085053.2789105-11-armbru@redhat.com> (raw)
In-Reply-To: <20230929085053.2789105-1-armbru@redhat.com>
From: Philippe Mathieu-Daudé <philmd@linaro.org>
Per Peter Maydell analysis [*]:
The hvf_vcpu_exec() function is not documented, but in practice
its caller expects it to return either EXCP_DEBUG (for "this was
a guest debug exception you need to deal with") or something else
(presumably the intention being 0 for OK).
The hvf_sysreg_read() and hvf_sysreg_write() functions are also not
documented, but they return 0 on success, or 1 for a completely
unrecognized sysreg where we've raised the UNDEF exception (but
not if we raised an UNDEF exception for an unrecognized GIC sysreg --
I think this is a bug). We use this return value to decide whether
we need to advance the PC past the insn or not. It's not the same
as the return value we want to return from hvf_vcpu_exec().
Retain the variable as locally scoped but give it a name that
doesn't clash with the other function-scoped variable.
This fixes:
target/arm/hvf/hvf.c:1936:13: error: declaration shadows a local variable [-Werror,-Wshadow]
int ret = 0;
^
target/arm/hvf/hvf.c:1807:9: note: previous declaration is here
int ret;
^
[*] https://lore.kernel.org/qemu-devel/CAFEAcA_e+fU6JKtS+W63wr9cCJ6btu_hT_ydZWOwC0kBkDYYYQ@mail.gmail.com/
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-ID: <20230904161235.84651-4-philmd@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
target/arm/hvf/hvf.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/target/arm/hvf/hvf.c b/target/arm/hvf/hvf.c
index 546c0e817f..757e13b0f9 100644
--- a/target/arm/hvf/hvf.c
+++ b/target/arm/hvf/hvf.c
@@ -1934,16 +1934,16 @@ int hvf_vcpu_exec(CPUState *cpu)
uint32_t rt = (syndrome >> 5) & 0x1f;
uint32_t reg = syndrome & SYSREG_MASK;
uint64_t val;
- int ret = 0;
+ int sysreg_ret = 0;
if (isread) {
- ret = hvf_sysreg_read(cpu, reg, rt);
+ sysreg_ret = hvf_sysreg_read(cpu, reg, rt);
} else {
val = hvf_get_reg(cpu, rt);
- ret = hvf_sysreg_write(cpu, reg, val);
+ sysreg_ret = hvf_sysreg_write(cpu, reg, val);
}
- advance_pc = !ret;
+ advance_pc = !sysreg_ret;
break;
}
case EC_WFX_TRAP:
--
2.41.0
next prev parent reply other threads:[~2023-09-29 8:52 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-29 8:49 [PULL 00/56] -Wshadow=local patches patches for 2023-09-29 Markus Armbruster
2023-09-29 8:49 ` [PULL 01/56] migration/rdma: Fix save_page method to fail on polling error Markus Armbruster
2023-09-29 8:49 ` [PULL 02/56] migration: Clean up local variable shadowing Markus Armbruster
2023-09-29 8:50 ` [PULL 03/56] ui: " Markus Armbruster
2023-09-29 8:50 ` [PULL 04/56] block/dirty-bitmap: " Markus Armbruster
2023-09-29 8:50 ` [PULL 05/56] block/vdi: " Markus Armbruster
2023-09-29 8:50 ` [PULL 06/56] block: " Markus Armbruster
2023-09-29 8:50 ` [PULL 07/56] qobject atomics osdep: Make a few macros more hygienic Markus Armbruster
2023-09-29 8:50 ` [PULL 08/56] tcg: Clean up local variable shadowing Markus Armbruster
2023-09-29 8:50 ` [PULL 09/56] target/arm/tcg: " Markus Armbruster
2023-09-29 8:50 ` Markus Armbruster [this message]
2023-09-29 8:50 ` [PULL 11/56] target/mips: " Markus Armbruster
2023-09-29 8:50 ` [PULL 12/56] target/m68k: " Markus Armbruster
2023-09-29 8:50 ` [PULL 13/56] target/tricore: " Markus Armbruster
2023-09-29 8:50 ` [PULL 14/56] hw/arm/armv7m: " Markus Armbruster
2023-09-29 8:50 ` [PULL 15/56] hw/arm/virt: " Markus Armbruster
2023-09-29 8:50 ` [PULL 16/56] hw/arm/allwinner: " Markus Armbruster
2023-09-29 8:50 ` [PULL 17/56] hw/m68k: " Markus Armbruster
2023-09-29 8:50 ` [PULL 18/56] hw/microblaze: " Markus Armbruster
2023-09-29 8:50 ` [PULL 19/56] hw/nios2: " Markus Armbruster
2023-09-29 8:50 ` [PULL 20/56] net/eth: " Markus Armbruster
2023-09-29 8:50 ` [PULL 21/56] crypto/cipher-gnutls.c: " Markus Armbruster
2023-09-29 8:50 ` [PULL 22/56] util/vhost-user-server: " Markus Armbruster
2023-09-29 8:50 ` [PULL 23/56] linux-user/strace: " Markus Armbruster
2023-09-29 8:50 ` [PULL 24/56] sysemu/device_tree: " Markus Armbruster
2023-09-29 8:50 ` [PULL 25/56] softmmu/memory: " Markus Armbruster
2023-09-29 8:50 ` [PULL 26/56] softmmu/physmem: " Markus Armbruster
2023-09-29 8:50 ` [PULL 27/56] hw/core/machine: " Markus Armbruster
2023-09-29 8:50 ` [PULL 28/56] hw/intc/openpic: " Markus Armbruster
2023-09-29 8:50 ` [PULL 29/56] hw/ppc: Clean up local variable shadowing in _FDT helper routine Markus Armbruster
2023-09-29 8:50 ` [PULL 30/56] pnv/psi: Clean up local variable shadowing Markus Armbruster
2023-09-29 8:50 ` [PULL 31/56] spapr: Clean up local variable shadowing in spapr_dt_cpus() Markus Armbruster
2023-09-29 8:50 ` [PULL 32/56] spapr: Clean up local variable shadowing in spapr_init_cpus() Markus Armbruster
2023-09-29 8:50 ` [PULL 33/56] spapr: Clean up local variable shadowing in spapr_get_fw_dev_path() Markus Armbruster
2023-09-29 8:50 ` [PULL 34/56] spapr/drc: Clean up local variable shadowing in rtas_ibm_configure_connector() Markus Armbruster
2023-09-29 8:50 ` [PULL 35/56] spapr/pci: Clean up local variable shadowing in spapr_phb_realize() Markus Armbruster
2023-09-29 8:50 ` [PULL 36/56] spapr/drc: Clean up local variable shadowing in prop_get_fdt() Markus Armbruster
2023-09-29 8:50 ` [PULL 37/56] test-throttle: don't shadow 'index' variable in do_test_accounting() Markus Armbruster
2023-09-29 8:50 ` [PULL 38/56] hw/acpi: changes towards enabling -Wshadow=local Markus Armbruster
2023-09-30 3:54 ` Ani Sinha
2023-09-30 8:41 ` Markus Armbruster
2023-10-02 10:49 ` Michael S. Tsirkin
2023-09-29 8:50 ` [PULL 39/56] hw/intc/arm_gicv3_its: Avoid shadowing variable in do_process_its_cmd() Markus Armbruster
2023-09-29 8:50 ` [PULL 40/56] hw/misc/arm_sysctl.c: Avoid shadowing local variable Markus Armbruster
2023-09-29 8:50 ` [PULL 41/56] hw/arm/smmuv3.c: Avoid shadowing variable Markus Armbruster
2023-09-29 8:50 ` [PULL 42/56] hw/arm/smmuv3-internal.h: Don't use locals in statement macros Markus Armbruster
2023-09-29 8:50 ` [PULL 43/56] aspeed/i2c: Clean up local variable shadowing Markus Armbruster
2023-09-29 8:50 ` [PULL 44/56] aspeed: " Markus Armbruster
2023-09-29 8:50 ` [PULL 45/56] aspeed/i3c: Rename variable shadowing a local Markus Armbruster
2023-09-29 8:50 ` [PULL 46/56] aspeed/timer: Clean up local variable shadowing Markus Armbruster
2023-09-29 8:50 ` [PULL 47/56] intel_iommu: Fix shadow local variables on "size" Markus Armbruster
2023-09-29 8:50 ` [PULL 48/56] crypto: remove shadowed 'ret' variable Markus Armbruster
2023-09-29 8:50 ` [PULL 49/56] seccomp: avoid shadowing of 'action' variable Markus Armbruster
2023-09-29 8:50 ` [PULL 50/56] qemu-nbd: changes towards enabling -Wshadow=local Markus Armbruster
2023-09-29 8:50 ` [PULL 51/56] hw/riscv: opentitan: Fixup local variables shadowing Markus Armbruster
2023-09-29 8:50 ` [PULL 52/56] target/riscv: cpu: " Markus Armbruster
2023-09-29 8:50 ` [PULL 53/56] target/riscv: vector_helper: " Markus Armbruster
2023-09-29 8:50 ` [PULL 54/56] softmmu/device_tree: " Markus Armbruster
2023-09-29 8:50 ` [PULL 55/56] hw/nvme: Clean up local variable shadowing in nvme_ns_init() Markus Armbruster
2023-09-29 8:50 ` [PULL 56/56] disas/m68k: clean up local variable shadowing Markus Armbruster
2023-10-02 21:57 ` [PULL 00/56] -Wshadow=local patches patches for 2023-09-29 Stefan Hajnoczi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230929085053.2789105-11-armbru@redhat.com \
--to=armbru@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=philmd@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).