2023-05-09 02:32:22

by Hao Ge

[permalink] [raw]
Subject: [PATCH] mediatek/clk-mt8173-apmixedsys: use devm_of_iomap to avoid resource leak in clk_mt8173_apmixed_probe

Use devm_platform_ioremap_resource to take the place of of_iomap for
avoid that we don't called iounmap when return some error or remove
device.

Fixes: 4c02c9af3cb9 ("clk: mediatek: mt8173: Break down clock drivers and allow module build")
Signed-off-by: Hao Ge <[email protected]>
---
drivers/clk/mediatek/clk-mt8173-apmixedsys.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/clk/mediatek/clk-mt8173-apmixedsys.c b/drivers/clk/mediatek/clk-mt8173-apmixedsys.c
index 8c2aa8b0f39e..8a2a88c63d15 100644
--- a/drivers/clk/mediatek/clk-mt8173-apmixedsys.c
+++ b/drivers/clk/mediatek/clk-mt8173-apmixedsys.c
@@ -146,8 +146,8 @@ static int clk_mt8173_apmixed_probe(struct platform_device *pdev)
struct clk_hw *hw;
int r;

- base = of_iomap(node, 0);
- if (!base)
+ base = devm_of_iomap(&pdev->dev, node, 0, NULL);
+ if (IS_ERR(base))
return PTR_ERR(base);

clk_data = mtk_alloc_clk_data(CLK_APMIXED_NR_CLK);
--
2.25.1


No virus found
Checked by Hillstone Network AntiVirus


2023-05-10 21:31:09

by Stephen Boyd

[permalink] [raw]
Subject: Re: [PATCH] mediatek/clk-mt8173-apmixedsys: use devm_of_iomap to avoid resource leak in clk_mt8173_apmixed_probe

Quoting Hao Ge (2023-05-08 19:12:14)
> Use devm_platform_ioremap_resource to take the place of of_iomap for
> avoid that we don't called iounmap when return some error or remove
> device.
>
> Fixes: 4c02c9af3cb9 ("clk: mediatek: mt8173: Break down clock drivers and allow module build")
> Signed-off-by: Hao Ge <[email protected]>
> ---

Is this v3?

2023-05-11 01:48:17

by Hao Ge

[permalink] [raw]
Subject: Re: [PATCH] mediatek/clk-mt8173-apmixedsys: use devm_of_iomap to avoid resource leak in clk_mt8173_apmixed_probe

On Wed, 10 May 2023 14:18:08 -0700
Stephen Boyd <[email protected]> wrote:

> Quoting Hao Ge (2023-05-08 19:12:14)
> > Use devm_platform_ioremap_resource to take the place of of_iomap for
> > avoid that we don't called iounmap when return some error or remove
> > device.
> >
> > Fixes: 4c02c9af3cb9 ("clk: mediatek: mt8173: Break down clock
> > drivers and allow module build") Signed-off-by: Hao Ge
> > <[email protected]> ---
>
> Is this v3?
Hi Stephen

yes,Perhaps you are too busy,I have not received a response
in the future, so you are unsure about the status of V2.
So I adjusted the code and title make changes smaller and
sent V3 for it.It is precisely because of these that I did
not continue the original mail thread.

Best regards
Hao



2023-05-11 02:03:45

by Hao Ge

[permalink] [raw]
Subject: Re: [PATCH] mediatek/clk-mt8173-apmixedsys: use devm_of_iomap to avoid resource leak in clk_mt8173_apmixed_probe



> On May 11, 2023, at 09:27, Hao Ge <[email protected]> wrote:
>
> On Wed, 10 May 2023 14:18:08 -0700
> Stephen Boyd <[email protected]> wrote:
>
>> Quoting Hao Ge (2023-05-08 19:12:14)
>>> Use devm_platform_ioremap_resource to take the place of of_iomap for
>>> avoid that we don't called iounmap when return some error or remove
>>> device.
>>> Fixes: 4c02c9af3cb9 ("clk: mediatek: mt8173: Break down clock
>>> drivers and allow module build") Signed-off-by: Hao Ge
>>> <[email protected]> ---
>> Is this v3?
> Hi Stephen
>
> yes,Perhaps you are too busy,I have not received a response
> in the future, so you are unsure about the status of V2.
> So I adjusted the code and title make changes smaller and
> sent V3 for it.It is precisely because of these that I did
> not continue the original mail thread.
>
> Best regards
> Hao
Hi Stephen

I made a few typos in my previous email. To avoid misunderstandings, I corrected them and sent a new one.

Yes,Perhaps you are too busy,I have not received a response in the future, so I am unsure about the status of V2.So I adjusted the code and title make changes smaller and
sent V3 for it.It is precisely because of these that I did not continue the original mail thread.

Best regards
Hao

2023-05-11 22:38:48

by Stephen Boyd

[permalink] [raw]
Subject: Re: [PATCH] mediatek/clk-mt8173-apmixedsys: use devm_of_iomap to avoid resource leak in clk_mt8173_apmixed_probe

Quoting Hao Ge (2023-05-10 18:26:54)
> On Wed, 10 May 2023 14:18:08 -0700
> Stephen Boyd <[email protected]> wrote:
>
> > Quoting Hao Ge (2023-05-08 19:12:14)
> > > Use devm_platform_ioremap_resource to take the place of of_iomap for
> > > avoid that we don't called iounmap when return some error or remove
> > > device.
> > >
> > > Fixes: 4c02c9af3cb9 ("clk: mediatek: mt8173: Break down clock
> > > drivers and allow module build") Signed-off-by: Hao Ge
> > > <[email protected]> ---
> >
> > Is this v3?
> Hi Stephen
>
> yes,Perhaps you are too busy,I have not received a response
> in the future, so you are unsure about the status of V2.
> So I adjusted the code and title make changes smaller and
> sent V3 for it.It is precisely because of these that I did
> not continue the original mail thread.
>

I'm waiting for the usual mediatek clk driver folks to review the patch.

2023-05-12 00:44:03

by Chen-Yu Tsai

[permalink] [raw]
Subject: Re: [PATCH] mediatek/clk-mt8173-apmixedsys: use devm_of_iomap to avoid resource leak in clk_mt8173_apmixed_probe

On Tue, May 9, 2023 at 11:12 AM Hao Ge <[email protected]> wrote:
>
> Use devm_platform_ioremap_resource to take the place of of_iomap for
> avoid that we don't called iounmap when return some error or remove
> device.
>
> Fixes: 4c02c9af3cb9 ("clk: mediatek: mt8173: Break down clock drivers and allow module build")
> Signed-off-by: Hao Ge <[email protected]>
> ---
> drivers/clk/mediatek/clk-mt8173-apmixedsys.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/clk/mediatek/clk-mt8173-apmixedsys.c b/drivers/clk/mediatek/clk-mt8173-apmixedsys.c
> index 8c2aa8b0f39e..8a2a88c63d15 100644
> --- a/drivers/clk/mediatek/clk-mt8173-apmixedsys.c
> +++ b/drivers/clk/mediatek/clk-mt8173-apmixedsys.c
> @@ -146,8 +146,8 @@ static int clk_mt8173_apmixed_probe(struct platform_device *pdev)
> struct clk_hw *hw;
> int r;
>
> - base = of_iomap(node, 0);
> - if (!base)
> + base = devm_of_iomap(&pdev->dev, node, 0, NULL);
> + if (IS_ERR(base))

From lib/devres.c:

* Please Note: This is not a one-to-one replacement for of_iomap() because the
* of_iomap() function does not track whether the region is already mapped. If
* two drivers try to map the same memory, the of_iomap() function will succeed
* but the devm_of_iomap() function will return -EBUSY.

The register range for apmixedsys given in mt8173.dtsi overlaps with
the HDMI phy. I'm concerned that would cause issues.

ChenYu

> return PTR_ERR(base);
>
> clk_data = mtk_alloc_clk_data(CLK_APMIXED_NR_CLK);
> --
> 2.25.1
>
>
> No virus found
> Checked by Hillstone Network AntiVirus

Subject: Re: [PATCH] mediatek/clk-mt8173-apmixedsys: use devm_of_iomap to avoid resource leak in clk_mt8173_apmixed_probe

Il 12/05/23 02:39, Chen-Yu Tsai ha scritto:
> On Tue, May 9, 2023 at 11:12 AM Hao Ge <[email protected]> wrote:
>>
>> Use devm_platform_ioremap_resource to take the place of of_iomap for
>> avoid that we don't called iounmap when return some error or remove
>> device.
>>
>> Fixes: 4c02c9af3cb9 ("clk: mediatek: mt8173: Break down clock drivers and allow module build")
>> Signed-off-by: Hao Ge <[email protected]>
>> ---
>> drivers/clk/mediatek/clk-mt8173-apmixedsys.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/clk/mediatek/clk-mt8173-apmixedsys.c b/drivers/clk/mediatek/clk-mt8173-apmixedsys.c
>> index 8c2aa8b0f39e..8a2a88c63d15 100644
>> --- a/drivers/clk/mediatek/clk-mt8173-apmixedsys.c
>> +++ b/drivers/clk/mediatek/clk-mt8173-apmixedsys.c
>> @@ -146,8 +146,8 @@ static int clk_mt8173_apmixed_probe(struct platform_device *pdev)
>> struct clk_hw *hw;
>> int r;
>>
>> - base = of_iomap(node, 0);
>> - if (!base)
>> + base = devm_of_iomap(&pdev->dev, node, 0, NULL);
>> + if (IS_ERR(base))
>
> From lib/devres.c:
>
> * Please Note: This is not a one-to-one replacement for of_iomap() because the
> * of_iomap() function does not track whether the region is already mapped. If
> * two drivers try to map the same memory, the of_iomap() function will succeed
> * but the devm_of_iomap() function will return -EBUSY.
>
> The register range for apmixedsys given in mt8173.dtsi overlaps with
> the HDMI phy. I'm concerned that would cause issues.

I agree, that will cause issues.

Regards,
Angelo