On Thu, Oct 13, 2022 at 06:19:26PM +0100, Peter Maydell wrote:
> The semantic difference between the deprecated device_legacy_reset()
> function and the newer device_cold_reset() function is that the new
> function resets both the device itself and any qbuses it owns,
> whereas the legacy function resets just the device itself and nothing
> else.
>
> The pc_machine_reset() and microvm_machine_reset() functions use
> device_legacy_reset() to reset the APIC; this is an APICCommonState
> and does not have any qbuses, so for this purpose the two functions
> behave identically and we can stop using the deprecated one.
>
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
> ---
> NB: tested only with 'make check' and 'make check-avocado'
>
> hw/i386/microvm.c | 2 +-
> hw/i386/pc.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/hw/i386/microvm.c b/hw/i386/microvm.c
> index 7fe8cce03e9..0b08010bf0a 100644
> --- a/hw/i386/microvm.c
> +++ b/hw/i386/microvm.c
> @@ -486,7 +486,7 @@ static void microvm_machine_reset(MachineState *machine)
> cpu = X86_CPU(cs);
>
> if (cpu->apic_state) {
> - device_legacy_reset(cpu->apic_state);
> + device_cold_reset(cpu->apic_state);
> }
> }
> }
> diff --git a/hw/i386/pc.c b/hw/i386/pc.c
> index 566accf7e60..2b2d0bc2b33 100644
> --- a/hw/i386/pc.c
> +++ b/hw/i386/pc.c
> @@ -1860,7 +1860,7 @@ static void pc_machine_reset(MachineState *machine)
> cpu = X86_CPU(cs);
>
> if (cpu->apic_state) {
> - device_legacy_reset(cpu->apic_state);
> + device_cold_reset(cpu->apic_state);
> }
> }
> }
> --
> 2.25.1