Patchwork fix live migration

login
register
mail settings
Submitter Gerd Hoffmann
Date Nov. 8, 2012, 3:01 p.m.
Message ID <1352386912-1665-1-git-send-email-kraxel@redhat.com>
Download mbox | patch
Permalink /patch/197847/
State New
Headers show

Comments

Gerd Hoffmann - Nov. 8, 2012, 3:01 p.m.
Commit 1c380f9460522f32c8dd2577b2a53d518ec91c6d breaks live migration.
DMA stops working for ehci (and probably for any pci device) after
restoring the guest because the bus master region never gets enabled.
Add code doing that after loading the pci config space from vmstate.

Cc: Avi Kivity <avi@redhat.com>
Cc: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/pci.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

Patch

diff --git a/hw/pci.c b/hw/pci.c
index dceda0b..9841e39 100644
--- a/hw/pci.c
+++ b/hw/pci.c
@@ -367,6 +367,10 @@  static int get_pci_config_device(QEMUFile *f, void *pv, size_t size)
 
     pci_update_mappings(s);
 
+    memory_region_set_enabled(&s->bus_master_enable_region,
+                              pci_get_word(s->config + PCI_COMMAND)
+                              & PCI_COMMAND_MASTER);
+
     g_free(config);
     return 0;
 }