From patchwork Fri Nov 16 13:44:34 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [01/14] fix live migration Date: Fri, 16 Nov 2012 03:44:34 -0000 From: Gerd Hoffmann X-Patchwork-Id: 199602 Message-Id: <1353073487-19233-2-git-send-email-kraxel@redhat.com> To: qemu-devel@nongnu.org Cc: Hans de Goede , Gerd Hoffmann , Avi Kivity 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 Cc: Hans de Goede Signed-off-by: Gerd Hoffmann --- hw/pci.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) 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; }