eni_vdpa: Simplify 'eni_vdpa_probe()'
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Sun, 7 Nov 2021 16:14:56 +0000 (17:14 +0100)
committerMichael S. Tsirkin <mst@redhat.com>
Fri, 14 Jan 2022 23:50:52 +0000 (18:50 -0500)
When 'pcim_enable_device()' is used, some resources become automagically
managed.
There is no need to call 'pci_free_irq_vectors()' when the driver is
removed. The same will already be done by 'pcim_release()'.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/02045bdcbbb25f79bae4827f66029cfcddc90381.1636301587.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Jason Wang <jasowang@redhat.com>
drivers/vdpa/alibaba/eni_vdpa.c

index 3f788794571a535a86e16b98d605df8db75db8e0..fe1b83b5f80da27f83c2ad77f20ac843ed28306d 100644 (file)
@@ -450,11 +450,6 @@ static u16 eni_vdpa_get_num_queues(struct eni_vdpa *eni_vdpa)
        return num;
 }
 
-static void eni_vdpa_free_irq_vectors(void *data)
-{
-       pci_free_irq_vectors(data);
-}
-
 static int eni_vdpa_probe(struct pci_dev *pdev, const struct pci_device_id *id)
 {
        struct device *dev = &pdev->dev;
@@ -488,13 +483,6 @@ static int eni_vdpa_probe(struct pci_dev *pdev, const struct pci_device_id *id)
        eni_vdpa->vdpa.dma_dev = &pdev->dev;
        eni_vdpa->queues = eni_vdpa_get_num_queues(eni_vdpa);
 
-       ret = devm_add_action_or_reset(dev, eni_vdpa_free_irq_vectors, pdev);
-       if (ret) {
-               ENI_ERR(pdev,
-                       "failed for adding devres for freeing irq vectors\n");
-               goto err;
-       }
-
        eni_vdpa->vring = devm_kcalloc(&pdev->dev, eni_vdpa->queues,
                                      sizeof(*eni_vdpa->vring),
                                      GFP_KERNEL);