The called function iommu_del_device() checks if the device has
attached IOMMU group, we needn't check it again in the parent
function call tce_iommu_bus_notifier().

Signed-off-by: Gavin Shan <[email protected]>
---
 arch/powerpc/platforms/powernv/pci.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/arch/powerpc/platforms/powernv/pci.c 
b/arch/powerpc/platforms/powernv/pci.c
index f91a4e5..b562b0d 100644
--- a/arch/powerpc/platforms/powernv/pci.c
+++ b/arch/powerpc/platforms/powernv/pci.c
@@ -820,17 +820,18 @@ static int tce_iommu_bus_notifier(struct notifier_block 
*nb,
                unsigned long action, void *data)
 {
        struct device *dev = data;
+       int ret = 0;
 
        switch (action) {
        case BUS_NOTIFY_ADD_DEVICE:
-               return iommu_add_device(dev);
+               ret = iommu_add_device(dev);
+               break;
        case BUS_NOTIFY_DEL_DEVICE:
-               if (dev->iommu_group)
-                       iommu_del_device(dev);
-               return 0;
-       default:
-               return 0;
+               iommu_del_device(dev);
+               break;
        }
+
+       return ret;
 }
 
 static struct notifier_block tce_iommu_bus_nb = {
-- 
1.8.3.2

_______________________________________________
Linuxppc-dev mailing list
[email protected]
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to