From: Joerg Roedel <[email protected]>

This check needs to be there and got lost at some point
during development. Add it again.

Fixes: 641fb0efbff0 ('iommu/of: Don't call iommu_ops->add_device directly')
Reported-by: Marek Szyprowski <[email protected]>
Reported-by: kernelci.org bot <[email protected]>
Signed-off-by: Joerg Roedel <[email protected]>
---
 drivers/iommu/iommu.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
index a2131751dcff..3ed4db334341 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
@@ -114,10 +114,14 @@ void iommu_device_unregister(struct iommu_device *iommu)
 int iommu_probe_device(struct device *dev)
 {
        const struct iommu_ops *ops = dev->bus->iommu_ops;
+       int ret = -EINVAL;
 
        WARN_ON(dev->iommu_group);
 
-       return ops->add_device(dev);
+       if (ops)
+               ret = ops->add_device(dev);
+
+       return ret;
 }
 
 void iommu_release_device(struct device *dev)
-- 
2.13.7

_______________________________________________
iommu mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to