Revert "clocksource: rockchip: remove unnecessary clear irq before request_irq"
[firefly-linux-kernel-4.4.55.git] / drivers / virtio / virtio_pci_common.c
index 5447b818633232937d7cb87ddb21424da1281010..2046a68ad0ba20748129d2ff338d964268051634 100644 (file)
@@ -507,10 +507,6 @@ static int virtio_pci_probe(struct pci_dev *pci_dev,
        if (rc)
                goto err_enable_device;
 
-       rc = pci_request_regions(pci_dev, "virtio-pci");
-       if (rc)
-               goto err_request_regions;
-
        if (force_legacy) {
                rc = virtio_pci_legacy_probe(vp_dev);
                /* Also try modern mode if we can't map BAR0 (no IO space). */
@@ -540,8 +536,6 @@ err_register:
        else
             virtio_pci_modern_remove(vp_dev);
 err_probe:
-       pci_release_regions(pci_dev);
-err_request_regions:
        pci_disable_device(pci_dev);
 err_enable_device:
        kfree(vp_dev);
@@ -551,6 +545,7 @@ err_enable_device:
 static void virtio_pci_remove(struct pci_dev *pci_dev)
 {
        struct virtio_pci_device *vp_dev = pci_get_drvdata(pci_dev);
+       struct device *dev = get_device(&vp_dev->vdev.dev);
 
        unregister_virtio_device(&vp_dev->vdev);
 
@@ -559,8 +554,8 @@ static void virtio_pci_remove(struct pci_dev *pci_dev)
        else
                virtio_pci_modern_remove(vp_dev);
 
-       pci_release_regions(pci_dev);
        pci_disable_device(pci_dev);
+       put_device(dev);
 }
 
 static struct pci_driver virtio_pci_driver = {