Messages in this thread | | | Date | Thu, 1 Dec 2022 12:50:52 +0800 | Subject | Re: [PATCH v3 02/20] iommu/apple-dart: Remove detach_dev callback | From | Baolu Lu <> |
| |
On 2022/12/1 1:00, Sven Peter wrote: > On Mon, Nov 28, 2022, at 07:46, Lu Baolu wrote: >> The IOMMU driver supports default domain, so the detach_dev op will never >> be called. Remove it to avoid dead code. >> >> Signed-off-by: Lu Baolu<baolu.lu@linux.intel.com> >> --- > Reviewed-by: Sven Peter<sven@svenpeter.dev> > >> drivers/iommu/apple-dart.c | 17 ----------------- >> 1 file changed, 17 deletions(-) >> >> diff --git a/drivers/iommu/apple-dart.c b/drivers/iommu/apple-dart.c >> index 4f4a323be0d0..6fbe6b275c79 100644 >> --- a/drivers/iommu/apple-dart.c >> +++ b/drivers/iommu/apple-dart.c >> @@ -535,22 +535,6 @@ static int apple_dart_attach_dev(struct >> iommu_domain *domain, >> return ret; >> } >> >> -static void apple_dart_detach_dev(struct iommu_domain *domain, >> - struct device *dev) >> -{ > Thanks for cleaning this entire API up! > > It actually turns out that this is slightly broken because I assumed that > detach_dev would always be called for any attach_dev. I think the only > consequence for a device that used to be assigned to domain A and is now moved to > domain B is that any TLB flushes required for A will still flush the TLB for that > device. > > That's not a big deal but I'll eventually send a fix. > >> - int i; >> - struct apple_dart_stream_map *stream_map; >> - struct apple_dart_master_cfg *cfg = dev_iommu_priv_get(dev); >> - struct apple_dart_domain *dart_domain = to_dart_domain(domain); >> - >> - for_each_stream_map(i, cfg, stream_map) >> - apple_dart_hw_disable_dma(stream_map); >> - >> - if (domain->type == IOMMU_DOMAIN_DMA || >> - domain->type == IOMMU_DOMAIN_UNMANAGED) >> - apple_dart_domain_remove_streams(dart_domain, cfg); > Something might complain about unused apple_dart_domain_remove_streams now. > Might make sense to drop that for now as well.
Done. Thanks!
Best regards, baolu
| |