Messages in this thread | | | Date | Tue, 13 Oct 2020 16:14:21 +0200 | From | Pavel Machek <> | Subject | Re: [PATCH 4.19 27/38] iommu/exynos: add missing put_device() call in exynos_iommu_of_xlate() |
| |
Hi! > >> From: Yu Kuai <yukuai3@huawei.com> > >> > >> [ Upstream commit 1a26044954a6d1f4d375d5e62392446af663be7a ] > >> > >> if of_find_device_by_node() succeed, exynos_iommu_of_xlate() doesn't have > >> a corresponding put_device(). Thus add put_device() to fix the exception > >> handling for this function implementation. > > Okay, this looks reasonable, but... > > > > Do we miss put_device() in normal path, too? I'd expect another > > put_device at end of exynos_iommu_of_xlate() or perhaps in release > > path somewhere... > > Frankly, there is no release path, so there is no need for put_device. > Once initialized, Exynos IOMMU stays in the system forever. There is no > point to remove IOMMU nor the API for that. Keeping increased refcount > for its device just matches this behavior. > > If the missing put_device() is really a problem, then we can move it > from the error path just after data = platform_get_drvdata(sysmmu) > assignment. Feel free to send a patch if you think this is a more > appropriate approach.
exynos_iommu_detach_device() looks like a place where resources could be freed? But if there's no release path, we don't really need to do anything.
Sorry about the noise.
Best regards, Pavel -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany [unhandled content-type:application/pgp-signature] | |