xemu/hw/i386
David Woodhouse 3de75ed352 hw/xen: don't clear map_track[] in xen_gnttab_reset()
The refcounts actually correspond to 'active_ref' structures stored in a
GHashTable per "user" on the backend side (mostly, per XenDevice).

If we zero map_track[] on reset, then when the backend drivers get torn
down and release their mapping we hit the assert(s->map_track[ref] != 0)
in gnt_unref().

So leave them in place. Each backend driver will disconnect and reconnect
as the guest comes back up again and reconnects, and it all works out OK
in the end as the old refs get dropped.

Cc: qemu-stable@nongnu.org
Fixes: de26b26197 ("hw/xen: Implement soft reset for emulated gnttab")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
2023-11-06 10:03:45 +00:00
..
kvm hw/xen: don't clear map_track[] in xen_gnttab_reset() 2023-11-06 10:03:45 +00:00
xen xen-platform: do full PCI reset during unplug of IDE devices 2023-08-01 10:22:33 +01:00
Kconfig hw/isa/piix3: Merge hw/isa/piix4.c 2023-10-22 05:18:17 -04:00
acpi-build.c hw/cxl: Add QTG _DSM support for ACPI0017 device 2023-10-22 05:18:17 -04:00
acpi-build.h hw/acpi/ich9: Enable ACPI PCI hot-plug 2021-07-16 04:33:35 -04:00
acpi-common.c hw/i386/acpi-build: Use pc_madt_cpu_entry() directly 2023-10-04 18:15:05 -04:00
acpi-common.h hw/i386/acpi-build: Use pc_madt_cpu_entry() directly 2023-10-04 18:15:05 -04:00
acpi-microvm.c hw/i386: changes towards enabling -Wshadow=local for x86 machines 2023-10-06 10:56:54 +02:00
acpi-microvm.h microvm/acpi: add minimal acpi support 2020-09-17 14:16:19 +02:00
amd_iommu.c hw/i386/amd_iommu: Do not use SysBus API to map local MMIO region 2023-10-19 23:13:28 +02:00
amd_iommu.h amd_iommu: Fix APIC address check 2023-10-04 18:15:06 -04:00
e820_memory_layout.c hw/i386/e820: remove legacy reserved entries for e820 2022-11-02 06:56:31 -04:00
e820_memory_layout.h hw/i386/e820: remove legacy reserved entries for e820 2022-11-02 06:56:31 -04:00
fw_cfg.c hw/i386/fw_cfg: Include missing 'cpu.h' header 2023-09-07 13:32:37 +02:00
fw_cfg.h hw/i386/e820: remove legacy reserved entries for e820 2022-11-02 06:56:31 -04:00
intel_iommu.c virtio,pc,pci: features, cleanups 2023-10-23 14:45:29 -07:00
intel_iommu_internal.h intel-iommu: Report interrupt remapping faults, fix return value 2023-10-22 05:18:17 -04:00
kvmvapic.c Do not include cpu.h if it's not really necessary 2021-05-02 17:24:51 +02:00
meson.build hw/xen: cleanup sourcesets 2023-10-18 10:01:01 +02:00
microvm-dt.c hw/rtc/mc146818rtc: QOM'ify io_base offset 2022-06-11 11:44:50 +02:00
microvm-dt.h microvm: add device tree support. 2021-11-02 17:24:17 +01:00
microvm.c hw/acpi: Realize ACPI_GED sysbus device before accessing it 2023-10-19 23:13:28 +02:00
multiboot.c bulk: Rename TARGET_FMT_plx -> HWADDR_FMT_plx 2023-01-18 11:14:34 +01:00
multiboot.h target/i386: use DMA-enabled multiboot ROM for new-enough QEMU machine types 2021-11-02 15:57:27 +01:00
pc.c kvm: i8254: require KVM_CAP_PIT2 and KVM_CAP_PIT_STATE2 2023-10-25 19:53:38 +02:00
pc_piix.c docs/about: Mark the old pc-i440fx-2.0 - 2.3 machine types as deprecated 2023-10-27 09:43:06 +02:00
pc_q35.c hw/i386/pc_q35: Wire ICH9 LPC function's interrupts before its realize() 2023-10-22 05:18:16 -04:00
pc_sysfw.c i386: factor out x86_firmware_configure() 2022-04-27 07:51:01 +02:00
pc_sysfw_ovmf-stubs.c hw/i386: Introduce X86_FW_OVMF Kconfig symbol 2021-07-14 22:28:58 +02:00
pc_sysfw_ovmf.c hw/i386: Replace magic number with field length calculation 2022-03-06 05:08:23 -05:00
port92.c Use OBJECT_DECLARE_SIMPLE_TYPE when possible 2020-09-18 14:12:32 -04:00
sgx-epc.c Mark remaining global TypeInfo instances as const 2022-02-21 13:30:20 +00:00
sgx-stub.c numa: Enable numa for SGX EPC sections 2021-12-10 09:47:18 +01:00
sgx.c *: Add missing includes of qemu/error-report.h 2023-03-22 15:06:57 +00:00
trace-events vmmouse: replace DPRINTF with tracing 2023-09-12 10:37:01 +04:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
vmmouse.c vmmouse: use explicit code 2023-09-12 10:37:02 +04:00
vmport.c Do not include cpu.h if it's not really necessary 2021-05-02 17:24:51 +02:00
x86-iommu-stub.c hw/i386/pc: Remove x86_iommu_get_type() 2021-11-01 18:49:10 -04:00
x86-iommu.c hw/i386/x86-iommu: Fix endianness issue in x86_iommu_irq_to_msi_message() 2023-08-03 16:16:17 -04:00
x86.c hw/i386: changes towards enabling -Wshadow=local for x86 machines 2023-10-06 10:56:54 +02:00