* [PATCH] iommu: Use of_property_present()
@ 2024-07-31 19:12 Rob Herring (Arm)
2024-08-01 9:58 ` Robin Murphy
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Rob Herring (Arm) @ 2024-07-31 19:12 UTC (permalink / raw)
To: Joerg Roedel, Will Deacon, Robin Murphy; +Cc: iommu, linux-kernel
Use of_property_present() to test for property presence rather than
of_(find|get)_property(). This is part of a larger effort to remove
callers of of_find_property() and similar functions. of_find_property()
leaks the DT struct property and data pointers which is a problem for
dynamically allocated nodes which may be freed.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
drivers/iommu/fsl_pamu_domain.c | 4 +---
drivers/iommu/of_iommu.c | 2 +-
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/drivers/iommu/fsl_pamu_domain.c b/drivers/iommu/fsl_pamu_domain.c
index e9d2bff4659b..30be786bff11 100644
--- a/drivers/iommu/fsl_pamu_domain.c
+++ b/drivers/iommu/fsl_pamu_domain.c
@@ -416,14 +416,12 @@ static struct iommu_group *fsl_pamu_device_group(struct device *dev)
static struct iommu_device *fsl_pamu_probe_device(struct device *dev)
{
- int len;
-
/*
* uboot must fill the fsl,liodn for platform devices to be supported by
* the iommu.
*/
if (!dev_is_pci(dev) &&
- !of_get_property(dev->of_node, "fsl,liodn", &len))
+ !of_property_present(dev->of_node, "fsl,liodn"))
return ERR_PTR(-ENODEV);
return &pamu_iommu;
diff --git a/drivers/iommu/of_iommu.c b/drivers/iommu/of_iommu.c
index 78d61da75257..e7a6a1611d19 100644
--- a/drivers/iommu/of_iommu.c
+++ b/drivers/iommu/of_iommu.c
@@ -214,7 +214,7 @@ void of_iommu_get_resv_regions(struct device *dev, struct list_head *list)
* that represent reservations in the IOVA space, which are regions that should
* not be mapped.
*/
- if (of_find_property(it.node, "reg", NULL)) {
+ if (of_property_present(it.node, "reg")) {
err = of_address_to_resource(it.node, 0, &phys);
if (err < 0) {
dev_err(dev, "failed to parse memory region %pOF: %d\n",
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] iommu: Use of_property_present()
2024-07-31 19:12 [PATCH] iommu: Use of_property_present() Rob Herring (Arm)
@ 2024-08-01 9:58 ` Robin Murphy
2024-09-03 19:20 ` Rob Herring
2024-09-04 9:31 ` Joerg Roedel
2 siblings, 0 replies; 4+ messages in thread
From: Robin Murphy @ 2024-08-01 9:58 UTC (permalink / raw)
To: Rob Herring (Arm), Joerg Roedel, Will Deacon; +Cc: iommu, linux-kernel
On 2024-07-31 8:12 pm, Rob Herring (Arm) wrote:
> Use of_property_present() to test for property presence rather than
> of_(find|get)_property(). This is part of a larger effort to remove
> callers of of_find_property() and similar functions. of_find_property()
> leaks the DT struct property and data pointers which is a problem for
> dynamically allocated nodes which may be freed.
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> drivers/iommu/fsl_pamu_domain.c | 4 +---
> drivers/iommu/of_iommu.c | 2 +-
> 2 files changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/iommu/fsl_pamu_domain.c b/drivers/iommu/fsl_pamu_domain.c
> index e9d2bff4659b..30be786bff11 100644
> --- a/drivers/iommu/fsl_pamu_domain.c
> +++ b/drivers/iommu/fsl_pamu_domain.c
> @@ -416,14 +416,12 @@ static struct iommu_group *fsl_pamu_device_group(struct device *dev)
>
> static struct iommu_device *fsl_pamu_probe_device(struct device *dev)
> {
> - int len;
> -
> /*
> * uboot must fill the fsl,liodn for platform devices to be supported by
> * the iommu.
> */
> if (!dev_is_pci(dev) &&
> - !of_get_property(dev->of_node, "fsl,liodn", &len))
> + !of_property_present(dev->of_node, "fsl,liodn"))
> return ERR_PTR(-ENODEV);
>
> return &pamu_iommu;
> diff --git a/drivers/iommu/of_iommu.c b/drivers/iommu/of_iommu.c
> index 78d61da75257..e7a6a1611d19 100644
> --- a/drivers/iommu/of_iommu.c
> +++ b/drivers/iommu/of_iommu.c
> @@ -214,7 +214,7 @@ void of_iommu_get_resv_regions(struct device *dev, struct list_head *list)
> * that represent reservations in the IOVA space, which are regions that should
> * not be mapped.
> */
> - if (of_find_property(it.node, "reg", NULL)) {
> + if (of_property_present(it.node, "reg")) {
> err = of_address_to_resource(it.node, 0, &phys);
> if (err < 0) {
> dev_err(dev, "failed to parse memory region %pOF: %d\n",
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] iommu: Use of_property_present()
2024-07-31 19:12 [PATCH] iommu: Use of_property_present() Rob Herring (Arm)
2024-08-01 9:58 ` Robin Murphy
@ 2024-09-03 19:20 ` Rob Herring
2024-09-04 9:31 ` Joerg Roedel
2 siblings, 0 replies; 4+ messages in thread
From: Rob Herring @ 2024-09-03 19:20 UTC (permalink / raw)
To: Joerg Roedel, Will Deacon, Robin Murphy; +Cc: iommu, linux-kernel
On Wed, Jul 31, 2024 at 2:13 PM Rob Herring (Arm) <robh@kernel.org> wrote:
>
> Use of_property_present() to test for property presence rather than
> of_(find|get)_property(). This is part of a larger effort to remove
> callers of of_find_property() and similar functions. of_find_property()
> leaks the DT struct property and data pointers which is a problem for
> dynamically allocated nodes which may be freed.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> drivers/iommu/fsl_pamu_domain.c | 4 +---
> drivers/iommu/of_iommu.c | 2 +-
> 2 files changed, 2 insertions(+), 4 deletions(-)
Ping!
>
> diff --git a/drivers/iommu/fsl_pamu_domain.c b/drivers/iommu/fsl_pamu_domain.c
> index e9d2bff4659b..30be786bff11 100644
> --- a/drivers/iommu/fsl_pamu_domain.c
> +++ b/drivers/iommu/fsl_pamu_domain.c
> @@ -416,14 +416,12 @@ static struct iommu_group *fsl_pamu_device_group(struct device *dev)
>
> static struct iommu_device *fsl_pamu_probe_device(struct device *dev)
> {
> - int len;
> -
> /*
> * uboot must fill the fsl,liodn for platform devices to be supported by
> * the iommu.
> */
> if (!dev_is_pci(dev) &&
> - !of_get_property(dev->of_node, "fsl,liodn", &len))
> + !of_property_present(dev->of_node, "fsl,liodn"))
> return ERR_PTR(-ENODEV);
>
> return &pamu_iommu;
> diff --git a/drivers/iommu/of_iommu.c b/drivers/iommu/of_iommu.c
> index 78d61da75257..e7a6a1611d19 100644
> --- a/drivers/iommu/of_iommu.c
> +++ b/drivers/iommu/of_iommu.c
> @@ -214,7 +214,7 @@ void of_iommu_get_resv_regions(struct device *dev, struct list_head *list)
> * that represent reservations in the IOVA space, which are regions that should
> * not be mapped.
> */
> - if (of_find_property(it.node, "reg", NULL)) {
> + if (of_property_present(it.node, "reg")) {
> err = of_address_to_resource(it.node, 0, &phys);
> if (err < 0) {
> dev_err(dev, "failed to parse memory region %pOF: %d\n",
> --
> 2.43.0
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] iommu: Use of_property_present()
2024-07-31 19:12 [PATCH] iommu: Use of_property_present() Rob Herring (Arm)
2024-08-01 9:58 ` Robin Murphy
2024-09-03 19:20 ` Rob Herring
@ 2024-09-04 9:31 ` Joerg Roedel
2 siblings, 0 replies; 4+ messages in thread
From: Joerg Roedel @ 2024-09-04 9:31 UTC (permalink / raw)
To: Rob Herring (Arm); +Cc: Will Deacon, Robin Murphy, iommu, linux-kernel
On Wed, Jul 31, 2024 at 01:12:44PM -0600, Rob Herring (Arm) wrote:
> Use of_property_present() to test for property presence rather than
> of_(find|get)_property(). This is part of a larger effort to remove
> callers of of_find_property() and similar functions. of_find_property()
> leaks the DT struct property and data pointers which is a problem for
> dynamically allocated nodes which may be freed.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> drivers/iommu/fsl_pamu_domain.c | 4 +---
> drivers/iommu/of_iommu.c | 2 +-
> 2 files changed, 2 insertions(+), 4 deletions(-)
Applied, thanks.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-09-04 9:31 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-31 19:12 [PATCH] iommu: Use of_property_present() Rob Herring (Arm)
2024-08-01 9:58 ` Robin Murphy
2024-09-03 19:20 ` Rob Herring
2024-09-04 9:31 ` Joerg Roedel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox