diff options
author | Mark Cave-Ayland | 2021-03-04 23:10:25 +0100 |
---|---|---|
committer | Mark Cave-Ayland | 2021-03-07 11:39:05 +0100 |
commit | 0bd005be782d9492afe3cc6fc494d8c3b477e5b8 (patch) | |
tree | 934a3b98e8d92410f08af9b4c5e025b3060369b0 /include/hw | |
parent | esp: QOMify the internal ESP device state (diff) | |
download | qemu-0bd005be782d9492afe3cc6fc494d8c3b477e5b8.tar.gz qemu-0bd005be782d9492afe3cc6fc494d8c3b477e5b8.tar.xz qemu-0bd005be782d9492afe3cc6fc494d8c3b477e5b8.zip |
esp: add vmstate_esp version to embedded ESPState
The QOM object representing ESPState is currently embedded within both the
SYSBUS_ESP and PCI_ESP devices with migration state handled by embedding
vmstate_esp within each device using VMSTATE_STRUCT.
Since the vmstate_esp fields are embedded directly within the migration
stream, the incoming vmstate_esp version_id is lost. The only version information
available is that from vmstate_sysbus_esp_scsi and vmstate_esp_pci_scsi, but
those versions represent their respective devices and not that of the underlying
ESPState.
Resolve this by adding a new version-dependent field in vmstate_sysbus_esp_scsi
and vmstate_esp_pci_scsi which stores the vmstate_esp version_id field within
ESPState to be used to allow migration from older QEMU versions.
Finally bump the vmstate_esp version to 5 to cover the upcoming ESPState changes
within this patch series.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20210304221103.6369-5-mark.cave-ayland@ilande.co.uk>
Diffstat (limited to 'include/hw')
-rw-r--r-- | include/hw/scsi/esp.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/hw/scsi/esp.h b/include/hw/scsi/esp.h index af23f813cb..9d149cbc9f 100644 --- a/include/hw/scsi/esp.h +++ b/include/hw/scsi/esp.h @@ -68,6 +68,8 @@ struct ESPState { uint32_t pdma_start; uint32_t pdma_cur; void (*pdma_cb)(ESPState *s); + + uint8_t mig_version_id; }; #define TYPE_SYSBUS_ESP "sysbus-esp" |