Re: [PATCH 03/22] iommu: Propagate error in add_iommu_group

From: Joerg Roedel
Date: Mon Jun 29 2015 - 05:37:15 EST


Hello Heiko,

On Mon, Jun 29, 2015 at 11:28:40AM +0200, Heiko Stübner wrote:
> The Rockchip iommu uses bus_set_ops to set its iommu-ops for the platform
> bus and currently returns -ENODEV if it encounters a platform_devices that
> does not have an iommu. As add_iommu_group ignored these returns
> till now this worked, but of course starts to fail now.
>
> All two invocations of the add_device callback ignored (or still ignore) the
> return value so I've come with the following small patch to fix the breakage
> that now exists in the 4.2 tree.
>
> There is probably a better solution possible in the longer term, likely
> similar to what Samsung does, but I'm not sure yet how this would work
> with our drm device that needs an iommu mapping without having an
> iommu (the iommus being attached to the crtc-components).

Yes, this issue was already reported from the Exynos side. I have a fix
which just ignores -ENODEV as the return value for now. This fixes
Exynos, and should fix Rockchip (and some other IOMMU drivers) too.


Joerg

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/