summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorJoerg Roedel <jroedel@suse.de>2020-05-27 13:53:13 +0200
committerJoerg Roedel <jroedel@suse.de>2020-05-29 17:18:08 +0200
commit736c3333e3970e7eb0c47a3811588ff0e760f19b (patch)
tree95f771e5c2f69fd309317a50dec2f937d02faa59 /drivers
parentiommu/amd: Store dev_data as device iommu private data (diff)
downloadlinux-736c3333e3970e7eb0c47a3811588ff0e760f19b.tar.xz
linux-736c3333e3970e7eb0c47a3811588ff0e760f19b.zip
iommu/amd: Remove redundant devid checks
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
Diffstat (limited to 'drivers')
-rw-r--r--drivers/iommu/amd_iommu.c13
1 files changed, 2 insertions, 11 deletions
diff --git a/drivers/iommu/amd_iommu.c b/drivers/iommu/amd_iommu.c
index 7461b49580a8..7c1884cab91f 100644
--- a/drivers/iommu/amd_iommu.c
+++ b/drivers/iommu/amd_iommu.c
@@ -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);