Commit c11738cf authored by Thierry Reding's avatar Thierry Reding Committed by Joerg Roedel
Browse files

iommu: virtio: Use generic_iommu_put_resv_regions()



Use the new standard function instead of open-coding it.

Cc: Jean-Philippe Brucker <jean-philippe@linaro.org>
Cc: virtualization@lists.linux-foundation.org
Reviewed-by: default avatarJean-Philippe Brucker <jean-philippe@linaro.org>
Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
parent 0ecdebb7
Loading
Loading
Loading
Loading
+3 −11
Original line number Diff line number Diff line
@@ -837,14 +837,6 @@ static void viommu_get_resv_regions(struct device *dev, struct list_head *head)
	iommu_dma_get_resv_regions(dev, head);
}

static void viommu_put_resv_regions(struct device *dev, struct list_head *head)
{
	struct iommu_resv_region *entry, *next;

	list_for_each_entry_safe(entry, next, head, list)
		kfree(entry);
}

static struct iommu_ops viommu_ops;
static struct virtio_driver virtio_iommu_drv;

@@ -914,7 +906,7 @@ static int viommu_add_device(struct device *dev)
err_unlink_dev:
	iommu_device_unlink(&viommu->iommu, dev);
err_free_dev:
	viommu_put_resv_regions(dev, &vdev->resv_regions);
	generic_iommu_put_resv_regions(dev, &vdev->resv_regions);
	kfree(vdev);

	return ret;
@@ -932,7 +924,7 @@ static void viommu_remove_device(struct device *dev)

	iommu_group_remove_device(dev);
	iommu_device_unlink(&vdev->viommu->iommu, dev);
	viommu_put_resv_regions(dev, &vdev->resv_regions);
	generic_iommu_put_resv_regions(dev, &vdev->resv_regions);
	kfree(vdev);
}

@@ -961,7 +953,7 @@ static struct iommu_ops viommu_ops = {
	.remove_device		= viommu_remove_device,
	.device_group		= viommu_device_group,
	.get_resv_regions	= viommu_get_resv_regions,
	.put_resv_regions	= viommu_put_resv_regions,
	.put_resv_regions	= generic_iommu_put_resv_regions,
	.of_xlate		= viommu_of_xlate,
};