[PATCH v4 8/9] iommu: Remove unused argument in is_attach_deferred

Jason Gunthorpe jgg at nvidia.com
Wed Mar 30 07:23:40 PDT 2022


On Wed, Mar 30, 2022 at 05:00:39PM +0300, Tony Lindgren wrote:
> Hi,
> 
> * Lu Baolu <baolu.lu at linux.intel.com> [700101 02:00]:
> > The is_attach_deferred iommu_ops callback is a device op. The domain
> > argument is unnecessary and never used. Remove it to make code clean.
> 
> Looks like this causes a regression for at least drivers/iommu/omap-iommu.c.
> 
> To me it seems the issue is there is no is_attach_deferred implemented, so
> we get a NULL pointer dereference at virtual address 00000008:
> 
> __iommu_probe_device from probe_iommu_group+0x2c/0x38
> probe_iommu_group from bus_for_each_dev+0x74/0xbc
> bus_for_each_dev from bus_iommu_probe+0x34/0x2e8
> bus_iommu_probe from bus_set_iommu+0x80/0xc8
> bus_set_iommu from omap_iommu_init+0x88/0xcc
> omap_iommu_init from do_one_initcall+0x44/0x24c
> 
> Any ideas for a fix?
> 
> It would be good to fix this quickly so we don't end up with a broken
> v5.18-rc1..
> 
> For reference, this is mainline commit 41bb23e70b50 ("iommu: Remove unused
> argument in is_attach_deferred").

Are you confident in the bisection? I don't see how that commit could
NULL deref..

Can you find the code that is the NULL deref?

Jason



More information about the linux-arm-kernel mailing list