[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 3/5] hw/misc/sifive_test.c: replace exit calls with proper
From: |
Alistair Francis |
Subject: |
Re: [PATCH v3 3/5] hw/misc/sifive_test.c: replace exit calls with proper shutdown |
Date: |
Mon, 18 Sep 2023 12:06:45 +1000 |
On Thu, Sep 7, 2023 at 9:26 PM Clément Chigot <chigot@adacore.com> wrote:
>
> This replaces the exit calls by shutdown requests, ensuring a proper
> cleanup of Qemu. Otherwise, some connections like gdb could be broken
> before its final packet ("Wxx") is being sent. This part, being done
> inside qemu_cleanup function, can be reached only when the main loop
> exits after a shutdown request.
>
> Signed-off-by: Clément Chigot <chigot@adacore.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Alistair
> ---
> hw/misc/sifive_test.c | 9 +++++++--
> 1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/hw/misc/sifive_test.c b/hw/misc/sifive_test.c
> index 56df45bfe5..ad688079c4 100644
> --- a/hw/misc/sifive_test.c
> +++ b/hw/misc/sifive_test.c
> @@ -25,6 +25,7 @@
> #include "qemu/module.h"
> #include "sysemu/runstate.h"
> #include "hw/misc/sifive_test.h"
> +#include "sysemu/sysemu.h"
>
> static uint64_t sifive_test_read(void *opaque, hwaddr addr, unsigned int
> size)
> {
> @@ -39,9 +40,13 @@ static void sifive_test_write(void *opaque, hwaddr addr,
> int code = (val64 >> 16) & 0xffff;
> switch (status) {
> case FINISHER_FAIL:
> - exit(code);
> + qemu_system_shutdown_request_with_code(
> + SHUTDOWN_CAUSE_GUEST_PANIC, code);
> + return;
> case FINISHER_PASS:
> - exit(0);
> + qemu_system_shutdown_request_with_code(
> + SHUTDOWN_CAUSE_GUEST_SHUTDOWN, code);
> + return;
> case FINISHER_RESET:
> qemu_system_reset_request(SHUTDOWN_CAUSE_GUEST_RESET);
> return;
> --
> 2.25.1
>
- [PATCH v3 0/5] Risc-V/gdb: replace exit calls with proper shutdown, Clément Chigot, 2023/09/07
- [PATCH v3 4/5] hw/char: riscv_htif: replace exit calls with proper shutdown, Clément Chigot, 2023/09/07
- [PATCH v3 5/5] gdbstub: replace exit calls with proper shutdown for softmmu, Clément Chigot, 2023/09/07
- [PATCH v3 2/5] softmmu: pass the main loop status to gdb "Wxx" packet, Clément Chigot, 2023/09/07
- [PATCH v3 3/5] hw/misc/sifive_test.c: replace exit calls with proper shutdown, Clément Chigot, 2023/09/07
- Re: [PATCH v3 3/5] hw/misc/sifive_test.c: replace exit calls with proper shutdown,
Alistair Francis <=
- [PATCH v3 1/5] softmmu: add means to pass an exit code when requesting a shutdown, Clément Chigot, 2023/09/07