On Thu, Oct 10, 2024 at 12:48:10PM -0700, Tomasz Jeznach wrote: > @@ -856,7 +1445,7 @@ static struct iommu_domain riscv_iommu_identity_domain = { > > static int riscv_iommu_device_domain_type(struct device *dev) > { > - return IOMMU_DOMAIN_IDENTITY; > + return 0; > } Remove the function please instead of returning 0 > +static void riscv_iommu_release_device(struct device *dev) > +{ > + struct riscv_iommu_info *info = dev_iommu_priv_get(dev); > + > + synchronize_rcu(); > + kfree(info); > +} Just call kfree_rcu() ? We have a variation that doesn't require the rcu_head now. Jason