virtio: set pci bus master enable bit
authorMichael S. Tsirkin <mst@redhat.com>
Sun, 29 Nov 2009 15:52:00 +0000 (17:52 +0200)
committerMichael S. Tsirkin <mst@redhat.com>
Tue, 2 Mar 2010 11:41:14 +0000 (13:41 +0200)
As all virtio devices perform DMA, we
must enable bus mastering for them to be
spec compliant.

This patch fixes hotplug of virtio devices
with Linux guests and qemu 0.11-0.12.

Tested-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
drivers/virtio/virtio_pci.c

index 1b65732169984032da0093371c448cfcf14db020..625447f645d935d59cc23ee5813357ae044ae8ce 100644 (file)
@@ -649,6 +649,7 @@ static int __devinit virtio_pci_probe(struct pci_dev *pci_dev,
                goto out_req_regions;
 
        pci_set_drvdata(pci_dev, vp_dev);
+       pci_set_master(pci_dev);
 
        /* we use the subsystem vendor/device id as the virtio vendor/device
         * id.  this allows us to use the same PCI vendor/device id for all