From: Alex Williamson Date: Thu, 17 Jun 2010 15:15:02 +0000 (-0600) Subject: virtio-pci: fix bus master bug setting on load X-Git-Tag: v0.13.0-rc0~178 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8a911107386b5c7a78a629f0fe29381cf0ea5f6f;p=thirdparty%2Fqemu.git virtio-pci: fix bus master bug setting on load The comment suggests we're checking for the driver in the ready state and bus master disabled, but the code is checking that it's not in the ready state. Signed-off-by: Alex Williamson Found-by: Amit Shah Signed-off-by: Anthony Liguori --- diff --git a/hw/virtio-pci.c b/hw/virtio-pci.c index 9accb77ee55..d1303b1a388 100644 --- a/hw/virtio-pci.c +++ b/hw/virtio-pci.c @@ -155,7 +155,7 @@ static int virtio_pci_load_config(void * opaque, QEMUFile *f) /* Try to find out if the guest has bus master disabled, but is in ready state. Then we have a buggy guest OS. */ - if (!(proxy->vdev->status & VIRTIO_CONFIG_S_DRIVER_OK) && + if ((proxy->vdev->status & VIRTIO_CONFIG_S_DRIVER_OK) && !(proxy->pci_dev.config[PCI_COMMAND] & PCI_COMMAND_MASTER)) { proxy->bugs |= VIRTIO_PCI_BUG_BUS_MASTER; }