diff options
author | Robin Murphy <robin.murphy@arm.com> | 2022-06-21 16:14:27 +0100 |
---|---|---|
committer | Joerg Roedel <jroedel@suse.de> | 2022-07-06 12:55:53 +0200 |
commit | 4d26ba671e3deed010311345e4426e6e11eaaf4c (patch) | |
tree | 4bbef47511c6955e24595aac837dc5b12d63dbec /drivers/iommu/virtio-iommu.c | |
parent | b321a2fba2734cbac799034081e20dcdb321ef4f (diff) | |
download | linux-stable-4d26ba671e3deed010311345e4426e6e11eaaf4c.tar.gz linux-stable-4d26ba671e3deed010311345e4426e6e11eaaf4c.tar.bz2 linux-stable-4d26ba671e3deed010311345e4426e6e11eaaf4c.zip |
iommu: Clean up release_device checks
Since .release_device is now called through per-device ops, any call
which gets as far as a driver definitely *is* for that driver, for a
device which has successfully passed .probe_device, so all the checks to
that effect are now redundant and can be removed. In the same vein we
can also skip freeing fwspecs which are now managed by core code.
Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
Link: https://lore.kernel.org/r/02671dbfad7a3343fc25a44222350efcb455fe3c.1655822151.git.robin.murphy@arm.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Diffstat (limited to 'drivers/iommu/virtio-iommu.c')
-rw-r--r-- | drivers/iommu/virtio-iommu.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/drivers/iommu/virtio-iommu.c b/drivers/iommu/virtio-iommu.c index 25be4b822aa0..55337796a5f8 100644 --- a/drivers/iommu/virtio-iommu.c +++ b/drivers/iommu/virtio-iommu.c @@ -981,13 +981,7 @@ static void viommu_probe_finalize(struct device *dev) static void viommu_release_device(struct device *dev) { - struct iommu_fwspec *fwspec = dev_iommu_fwspec_get(dev); - struct viommu_endpoint *vdev; - - if (!fwspec || fwspec->ops != &viommu_ops) - return; - - vdev = dev_iommu_priv_get(dev); + struct viommu_endpoint *vdev = dev_iommu_priv_get(dev); generic_iommu_put_resv_regions(dev, &vdev->resv_regions); kfree(vdev); |