This is instead of re-writing the same logic in virtio driver. Signed-off-by: Max Gurtovoy <mgurtovoy@xxxxxxxxxx> --- drivers/virtio/virtio_pci_common.c | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/drivers/virtio/virtio_pci_common.c b/drivers/virtio/virtio_pci_common.c index ad258a9d3b9f..67d3970e57f2 100644 --- a/drivers/virtio/virtio_pci_common.c +++ b/drivers/virtio/virtio_pci_common.c @@ -607,7 +607,6 @@ static int virtio_pci_sriov_configure(struct pci_dev *pci_dev, int num_vfs) { struct virtio_pci_device *vp_dev = pci_get_drvdata(pci_dev); struct virtio_device *vdev = &vp_dev->vdev; - int ret; if (!(vdev->config->get_status(vdev) & VIRTIO_CONFIG_S_DRIVER_OK)) return -EBUSY; @@ -615,19 +614,7 @@ static int virtio_pci_sriov_configure(struct pci_dev *pci_dev, int num_vfs) if (!__virtio_test_bit(vdev, VIRTIO_F_SR_IOV)) return -EINVAL; - if (pci_vfs_assigned(pci_dev)) - return -EPERM; - - if (num_vfs == 0) { - pci_disable_sriov(pci_dev); - return 0; - } - - ret = pci_enable_sriov(pci_dev, num_vfs); - if (ret < 0) - return ret; - - return num_vfs; + return pci_sriov_configure_simple(pci_dev, num_vfs); } static struct pci_driver virtio_pci_driver = { -- 2.18.1