VMSTATE_PCIE_DEVICE() currently has the following users: * ioh3420 * xio3130-downstream * x3130-upstream * nec-usb-xhci
All except for XHCI have VMSTATE_STRUCT(....exp.aer_log, ...) following VMSTATE_PCIE_DEVICE(), and XHCI was marked unmigratable in v1.5.0. Therefore move this recurring PCIe-only field into vmstate_pcie_device while we still can without breaking migration compatibility. Cc: Juan Quintela <quint...@redhat.com> Cc: Gerd Hoffmann <kra...@redhat.com> Signed-off-by: Andreas Färber <afaer...@suse.de> --- hw/pci-bridge/ioh3420.c | 2 -- hw/pci-bridge/xio3130_downstream.c | 2 -- hw/pci-bridge/xio3130_upstream.c | 2 -- hw/pci/pci.c | 2 ++ 4 files changed, 2 insertions(+), 6 deletions(-) diff --git a/hw/pci-bridge/ioh3420.c b/hw/pci-bridge/ioh3420.c index e07c7e8..296ed9f 100644 --- a/hw/pci-bridge/ioh3420.c +++ b/hw/pci-bridge/ioh3420.c @@ -188,8 +188,6 @@ static const VMStateDescription vmstate_ioh3420 = { .post_load = pcie_cap_slot_post_load, .fields = (VMStateField[]) { VMSTATE_PCIE_DEVICE(parent_obj.parent_obj.parent_obj, PCIESlot), - VMSTATE_STRUCT(parent_obj.parent_obj.parent_obj.exp.aer_log, - PCIESlot, 0, vmstate_pcie_aer_log, PCIEAERLog), VMSTATE_END_OF_LIST() } }; diff --git a/hw/pci-bridge/xio3130_downstream.c b/hw/pci-bridge/xio3130_downstream.c index 2c84b1a..f58717f 100644 --- a/hw/pci-bridge/xio3130_downstream.c +++ b/hw/pci-bridge/xio3130_downstream.c @@ -155,8 +155,6 @@ static const VMStateDescription vmstate_xio3130_downstream = { .post_load = pcie_cap_slot_post_load, .fields = (VMStateField[]) { VMSTATE_PCIE_DEVICE(parent_obj.parent_obj.parent_obj, PCIESlot), - VMSTATE_STRUCT(parent_obj.parent_obj.parent_obj.exp.aer_log, - PCIESlot, 0, vmstate_pcie_aer_log, PCIEAERLog), VMSTATE_END_OF_LIST() } }; diff --git a/hw/pci-bridge/xio3130_upstream.c b/hw/pci-bridge/xio3130_upstream.c index 82add15..fd78966 100644 --- a/hw/pci-bridge/xio3130_upstream.c +++ b/hw/pci-bridge/xio3130_upstream.c @@ -134,8 +134,6 @@ static const VMStateDescription vmstate_xio3130_upstream = { .minimum_version_id_old = 1, .fields = (VMStateField[]) { VMSTATE_PCIE_DEVICE(parent_obj.parent_obj, PCIEPort), - VMSTATE_STRUCT(parent_obj.parent_obj.exp.aer_log, PCIEPort, 0, - vmstate_pcie_aer_log, PCIEAERLog), VMSTATE_END_OF_LIST() } }; diff --git a/hw/pci/pci.c b/hw/pci/pci.c index 4c004f5..51ec4f7 100644 --- a/hw/pci/pci.c +++ b/hw/pci/pci.c @@ -490,6 +490,8 @@ const VMStateDescription vmstate_pcie_device = { VMSTATE_BUFFER_UNSAFE_INFO(irq_state, PCIDevice, 2, vmstate_info_pci_irq_state, PCI_NUM_PINS * sizeof(int32_t)), + VMSTATE_STRUCT(exp.aer_log, PCIDevice, 0, + vmstate_pcie_aer_log, PCIEAERLog), VMSTATE_END_OF_LIST() } }; -- 1.8.1.4