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 <alex.williamson@redhat.com>
Found-by: Amit Shah <amit.shah@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Alex Williamson 2010-06-17 09:15:02 -06:00 committed by Anthony Liguori
parent 511c023103
commit 8a91110738

View File

@ -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;
}