@@ -122,6 +122,7 @@ void qpci_memwrite(QPCIDevice *bus, QPCIBar token, uint64_t off,
const void *buf, size_t len);
QPCIBar qpci_iomap(QPCIDevice *dev, int barno, uint64_t *sizeptr);
void qpci_iounmap(QPCIDevice *dev, QPCIBar addr);
+void qpci_migrate_fixup(QPCIDevice *to, QPCIDevice *from);
QPCIBar qpci_legacy_iomap(QPCIDevice *dev, uint16_t addr);
void qpci_unplug_acpi_device_test(QTestState *qs, const char *id, uint8_t slot);
@@ -137,6 +137,7 @@ static void ahci_migrate(AHCIQState *from, AHCIQState *to, const char *uri)
memcpy(to, from, sizeof(AHCIQState));
to->parent = tmp;
to->dev = dev;
+ qpci_migrate_fixup(to->dev, from->dev);
tmp = from->parent;
dev = from->dev;
@@ -586,6 +586,10 @@ QPCIBar qpci_legacy_iomap(QPCIDevice *dev, uint16_t addr)
return bar;
}
+void qpci_migrate_fixup(QPCIDevice *to, QPCIDevice *from)
+{
+}
+
void add_qpci_address(QOSGraphEdgeOptions *opts, QPCIAddress *addr)
{
g_assert(addr);
Migration tests can create new QPCI devices for the destination machine which may need to take on some state of the source machine after destination is complete. Add a migration fixup helper and call it from ahci migration tests. This is currently a noop and will be used subsequently. Signed-off-by: Nicholas Piggin <npiggin@gmail.com> --- tests/qtest/libqos/pci.h | 1 + tests/qtest/ahci-test.c | 1 + tests/qtest/libqos/pci.c | 4 ++++ 3 files changed, 6 insertions(+)