iommu/amd: Remove redundant devid checks
authorJoerg Roedel <jroedel@suse.de>
Wed, 27 May 2020 11:53:13 +0000 (13:53 +0200)
committerJoerg Roedel <jroedel@suse.de>
Fri, 29 May 2020 15:18:08 +0000 (17:18 +0200)
Checking the return value of get_device_id() in a code-path which has
already done check_device() is not needed, as check_device() does the
same check and bails out if it fails.

Signed-off-by: Joerg Roedel <jroedel@suse.de>
Reviewed-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Link: https://lore.kernel.org/r/20200527115313.7426-11-joro@8bytes.org
drivers/iommu/amd_iommu.c

index 7461b49..7c1884c 100644 (file)
@@ -413,13 +413,8 @@ static void iommu_ignore_device(struct device *dev)
 static void amd_iommu_uninit_device(struct device *dev)
 {
        struct iommu_dev_data *dev_data;
-       int devid;
-
-       devid = get_device_id(dev);
-       if (devid < 0)
-               return;
 
-       dev_data = search_dev_data(devid);
+       dev_data = dev_iommu_priv_get(dev);
        if (!dev_data)
                return;
 
@@ -2173,16 +2168,12 @@ static void amd_iommu_probe_finalize(struct device *dev)
 
 static void amd_iommu_release_device(struct device *dev)
 {
+       int devid = get_device_id(dev);
        struct amd_iommu *iommu;
-       int devid;
 
        if (!check_device(dev))
                return;
 
-       devid = get_device_id(dev);
-       if (devid < 0)
-               return;
-
        iommu = amd_iommu_rlookup_table[devid];
 
        amd_iommu_uninit_device(dev);