Re: Regression observed since "iommu: Propagate error in add_iommu_group" with arm-smmu

From: Joerg Roedel
Date: Mon Jun 29 2015 - 09:17:10 EST


Hi Eric

On Mon, Jun 29, 2015 at 02:46:46PM +0200, Eric Auger wrote:
> Hi Joerg, Will
>
> I observe a regression since commit
> 19762d7095e6392b6ec56c363a6f29b2119488c2 (iommu: Propagate error in
> add_iommu_group) with arm-smmu: I am not able to bind the vfio-platform
> driver to one Calxeda Midway xgmac anymore. This latter is not assigned
> any group.
>
> Looks like the cause is, in iommu_bus_init, when doing
> bus_for_each_dev(bus, NULL, &cb, add_iommu_group),
> add_iommu_group fails for some devices which are not upstream to smmu
> and enumerated before the xgmac. As a consequence bus_for_each_dev
> returns without looking at the xgmac.
>
> arm_smmu_add_platform_device currently returns -ENODEV when no smmu/no
> master port for the device. Shouldn't we return 0 now?

I posted a patch today which fixes this by ignoring -ENODEV as a return
value in add_iommu_group. See here:

http://lists.linuxfoundation.org/pipermail/iommu/2015-June/013508.html

I'll send this fix upstream asap (means: tomorrow). It would be great if
you can test it too in your setup.


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/