2021-01-15 07:04:25

by Li, Meng

[permalink] [raw]
Subject: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for regmap_config"

From: Limeng <[email protected]>

This reverts commit 529a1101212a785c5df92c314b0e718287150c3b.

The reverted patch moves the memory free to error path, but introduce
a memory leak. There is another commit 94cc89eb8fa5("regmap: debugfs:
Fix handling of name string for debugfs init delays") fixing this
debugfs init issue from root cause. With this fixing, the name field
in struct regmap_debugfs_node is removed. When initialize debugfs
for syscon driver, the name field of struct regmap_config is not
used anymore. So, revert this patch directly to avoid memory leak.

v2:
Notify the author of the reverted commit by adding Cc:

Fixes: 529a1101212a("mfd: syscon: Don't free allocated name for regmap_config")
Cc: Marc Zyngier <[email protected]>
Cc: [email protected]
Signed-off-by: Meng Li <[email protected]>
---
drivers/mfd/syscon.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mfd/syscon.c b/drivers/mfd/syscon.c
index ca465794ea9c..df5cebb372a5 100644
--- a/drivers/mfd/syscon.c
+++ b/drivers/mfd/syscon.c
@@ -108,6 +108,7 @@ static struct syscon *of_syscon_register(struct device_node *np, bool check_clk)
syscon_config.max_register = resource_size(&res) - reg_io_width;

regmap = regmap_init_mmio(NULL, base, &syscon_config);
+ kfree(syscon_config.name);
if (IS_ERR(regmap)) {
pr_err("regmap init failed\n");
ret = PTR_ERR(regmap);
@@ -144,7 +145,6 @@ static struct syscon *of_syscon_register(struct device_node *np, bool check_clk)
regmap_exit(regmap);
err_regmap:
iounmap(base);
- kfree(syscon_config.name);
err_map:
kfree(syscon);
return ERR_PTR(ret);
--
2.17.1


2021-02-22 03:49:17

by Li, Meng

[permalink] [raw]
Subject: RE: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for regmap_config"

Hi Marc&Lee,

Is there any comment on this patch?
Could you please help to review this patch so that I can improve it if it still has weakness?

Thanks,
Limeng

> -----Original Message-----
> From: Li, Meng <[email protected]>
> Sent: Friday, January 15, 2021 9:51 AM
> To: [email protected]
> Cc: [email protected]; [email protected]; [email protected]; Hao, Kexin
> <[email protected]>; Li, Meng <[email protected]>
> Subject: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for
> regmap_config"
>
> From: Limeng <[email protected]>
>
> This reverts commit 529a1101212a785c5df92c314b0e718287150c3b.
>
> The reverted patch moves the memory free to error path, but introduce a
> memory leak. There is another commit 94cc89eb8fa5("regmap: debugfs:
> Fix handling of name string for debugfs init delays") fixing this debugfs init
> issue from root cause. With this fixing, the name field in struct
> regmap_debugfs_node is removed. When initialize debugfs for syscon driver,
> the name field of struct regmap_config is not used anymore. So, revert this
> patch directly to avoid memory leak.
>
> v2:
> Notify the author of the reverted commit by adding Cc:
>
> Fixes: 529a1101212a("mfd: syscon: Don't free allocated name for
> regmap_config")
> Cc: Marc Zyngier <[email protected]>
> Cc: [email protected]
> Signed-off-by: Meng Li <[email protected]>
> ---
> drivers/mfd/syscon.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/mfd/syscon.c b/drivers/mfd/syscon.c index
> ca465794ea9c..df5cebb372a5 100644
> --- a/drivers/mfd/syscon.c
> +++ b/drivers/mfd/syscon.c
> @@ -108,6 +108,7 @@ static struct syscon *of_syscon_register(struct
> device_node *np, bool check_clk)
> syscon_config.max_register = resource_size(&res) - reg_io_width;
>
> regmap = regmap_init_mmio(NULL, base, &syscon_config);
> + kfree(syscon_config.name);
> if (IS_ERR(regmap)) {
> pr_err("regmap init failed\n");
> ret = PTR_ERR(regmap);
> @@ -144,7 +145,6 @@ static struct syscon *of_syscon_register(struct
> device_node *np, bool check_clk)
> regmap_exit(regmap);
> err_regmap:
> iounmap(base);
> - kfree(syscon_config.name);
> err_map:
> kfree(syscon);
> return ERR_PTR(ret);
> --
> 2.17.1

2021-02-22 09:15:57

by Marc Zyngier

[permalink] [raw]
Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for regmap_config"

Hi Limeng,

On 2021-02-22 03:45, Li, Meng wrote:
> Hi Marc&Lee,
>
> Is there any comment on this patch?
> Could you please help to review this patch so that I can improve it if
> it still has weakness?

If you are confident that the root issue has been fixed, no objection
from me, but I'm not in a position to test it at the moment (the board
I found the problem on is in a bit of a state).

Thanks,

M.

>
> Thanks,
> Limeng
>
>> -----Original Message-----
>> From: Li, Meng <[email protected]>
>> Sent: Friday, January 15, 2021 9:51 AM
>> To: [email protected]
>> Cc: [email protected]; [email protected]; [email protected]; Hao, Kexin
>> <[email protected]>; Li, Meng <[email protected]>
>> Subject: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name
>> for
>> regmap_config"
>>
>> From: Limeng <[email protected]>
>>
>> This reverts commit 529a1101212a785c5df92c314b0e718287150c3b.
>>
>> The reverted patch moves the memory free to error path, but introduce
>> a
>> memory leak. There is another commit 94cc89eb8fa5("regmap: debugfs:
>> Fix handling of name string for debugfs init delays") fixing this
>> debugfs init
>> issue from root cause. With this fixing, the name field in struct
>> regmap_debugfs_node is removed. When initialize debugfs for syscon
>> driver,
>> the name field of struct regmap_config is not used anymore. So, revert
>> this
>> patch directly to avoid memory leak.
>>
>> v2:
>> Notify the author of the reverted commit by adding Cc:
>>
>> Fixes: 529a1101212a("mfd: syscon: Don't free allocated name for
>> regmap_config")
>> Cc: Marc Zyngier <[email protected]>
>> Cc: [email protected]
>> Signed-off-by: Meng Li <[email protected]>
>> ---
>> drivers/mfd/syscon.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/mfd/syscon.c b/drivers/mfd/syscon.c index
>> ca465794ea9c..df5cebb372a5 100644
>> --- a/drivers/mfd/syscon.c
>> +++ b/drivers/mfd/syscon.c
>> @@ -108,6 +108,7 @@ static struct syscon *of_syscon_register(struct
>> device_node *np, bool check_clk)
>> syscon_config.max_register = resource_size(&res) - reg_io_width;
>>
>> regmap = regmap_init_mmio(NULL, base, &syscon_config);
>> + kfree(syscon_config.name);
>> if (IS_ERR(regmap)) {
>> pr_err("regmap init failed\n");
>> ret = PTR_ERR(regmap);
>> @@ -144,7 +145,6 @@ static struct syscon *of_syscon_register(struct
>> device_node *np, bool check_clk)
>> regmap_exit(regmap);
>> err_regmap:
>> iounmap(base);
>> - kfree(syscon_config.name);
>> err_map:
>> kfree(syscon);
>> return ERR_PTR(ret);
>> --
>> 2.17.1

--
Jazz is not dead. It just smells funny...

2021-02-22 09:23:21

by Lee Jones

[permalink] [raw]
Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for regmap_config"

On Mon, 22 Feb 2021, Marc Zyngier wrote:

> Hi Limeng,
>
> On 2021-02-22 03:45, Li, Meng wrote:
> > Hi Marc&Lee,
> >
> > Is there any comment on this patch?
> > Could you please help to review this patch so that I can improve it if
> > it still has weakness?
>
> If you are confident that the root issue has been fixed, no objection
> from me, but I'm not in a position to test it at the moment (the board
> I found the problem on is in a bit of a state).

I'm not keen on flip-flopping this patch in and out of the kernel.
Someone really needs to spend some time to map out the full life-cycle
and propose a (possibly cross-subsystem) solution.

--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog

2021-02-22 09:40:03

by Li, Meng

[permalink] [raw]
Subject: RE: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for regmap_config"

Thanks for all of your comments.

Regards,
Limeng

> -----Original Message-----
> From: Lee Jones <[email protected]>
> Sent: Monday, February 22, 2021 5:21 PM
> To: Marc Zyngier <[email protected]>
> Cc: Li, Meng <[email protected]>; [email protected];
> [email protected]; Hao, Kexin <[email protected]>
> Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for
> regmap_config"
>
> [Please note: This e-mail is from an EXTERNAL e-mail address]
>
> On Mon, 22 Feb 2021, Marc Zyngier wrote:
>
> > Hi Limeng,
> >
> > On 2021-02-22 03:45, Li, Meng wrote:
> > > Hi Marc&Lee,
> > >
> > > Is there any comment on this patch?
> > > Could you please help to review this patch so that I can improve it
> > > if it still has weakness?
> >
> > If you are confident that the root issue has been fixed, no objection
> > from me, but I'm not in a position to test it at the moment (the board
> > I found the problem on is in a bit of a state).
>
> I'm not keen on flip-flopping this patch in and out of the kernel.
> Someone really needs to spend some time to map out the full life-cycle and
> propose a (possibly cross-subsystem) solution.
>
> --
> Lee Jones [李琼斯]
> Senior Technical Lead - Developer Services Linaro.org │ Open source
> software for Arm SoCs Follow Linaro: Facebook | Twitter | Blog

2021-03-09 09:44:59

by Lee Jones

[permalink] [raw]
Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for regmap_config"

On Mon, 22 Feb 2021, Li, Meng wrote:
> > -----Original Message-----
> > From: Lee Jones <[email protected]>
> > Sent: Monday, February 22, 2021 5:21 PM
> > To: Marc Zyngier <[email protected]>
> > Cc: Li, Meng <[email protected]>; [email protected];
> > [email protected]; Hao, Kexin <[email protected]>
> > Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for
> > regmap_config"
> >
> > [Please note: This e-mail is from an EXTERNAL e-mail address]
> >
> > On Mon, 22 Feb 2021, Marc Zyngier wrote:
> >
> > > Hi Limeng,
> > >
> > > On 2021-02-22 03:45, Li, Meng wrote:
> > > > Hi Marc&Lee,
> > > >
> > > > Is there any comment on this patch?
> > > > Could you please help to review this patch so that I can improve it
> > > > if it still has weakness?
> > >
> > > If you are confident that the root issue has been fixed, no objection
> > > from me, but I'm not in a position to test it at the moment (the board
> > > I found the problem on is in a bit of a state).
> >
> > I'm not keen on flip-flopping this patch in and out of the kernel.
> > Someone really needs to spend some time to map out the full life-cycle and
> > propose a (possibly cross-subsystem) solution.
> >
> Thanks for all of your comments.

Have you looked into this further at all?

--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog

2021-03-09 09:53:17

by Li, Meng

[permalink] [raw]
Subject: RE: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for regmap_config"



> -----Original Message-----
> From: Lee Jones <[email protected]>
> Sent: Tuesday, March 9, 2021 5:43 PM
> To: Li, Meng <[email protected]>
> Cc: Marc Zyngier <[email protected]>; [email protected];
> [email protected]; Hao, Kexin <[email protected]>
> Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for
> regmap_config"
>
> [Please note: This e-mail is from an EXTERNAL e-mail address]
>
> On Mon, 22 Feb 2021, Li, Meng wrote:
> > > -----Original Message-----
> > > From: Lee Jones <[email protected]>
> > > Sent: Monday, February 22, 2021 5:21 PM
> > > To: Marc Zyngier <[email protected]>
> > > Cc: Li, Meng <[email protected]>; [email protected];
> > > [email protected]; Hao, Kexin <[email protected]>
> > > Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated
> > > name for regmap_config"
> > >
> > > [Please note: This e-mail is from an EXTERNAL e-mail address]
> > >
> > > On Mon, 22 Feb 2021, Marc Zyngier wrote:
> > >
> > > > Hi Limeng,
> > > >
> > > > On 2021-02-22 03:45, Li, Meng wrote:
> > > > > Hi Marc&Lee,
> > > > >
> > > > > Is there any comment on this patch?
> > > > > Could you please help to review this patch so that I can improve
> > > > > it if it still has weakness?
> > > >
> > > > If you are confident that the root issue has been fixed, no
> > > > objection from me, but I'm not in a position to test it at the
> > > > moment (the board I found the problem on is in a bit of a state).
> > >
> > > I'm not keen on flip-flopping this patch in and out of the kernel.
> > > Someone really needs to spend some time to map out the full
> > > life-cycle and propose a (possibly cross-subsystem) solution.
> > >
> > Thanks for all of your comments.
>
> Have you looked into this further at all?
>

No.
Maintainer expects better solution to solve this issue from frame level, and consider cross-subsystem.

Thanks,
Limeng

> --
> Lee Jones [李琼斯]
> Senior Technical Lead - Developer Services Linaro.org │ Open source
> software for Arm SoCs Follow Linaro: Facebook | Twitter | Blog

2021-03-09 18:17:30

by Lee Jones

[permalink] [raw]
Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for regmap_config"

On Tue, 09 Mar 2021, Li, Meng wrote:

>
>
> > -----Original Message-----
> > From: Lee Jones <[email protected]>
> > Sent: Tuesday, March 9, 2021 5:43 PM
> > To: Li, Meng <[email protected]>
> > Cc: Marc Zyngier <[email protected]>; [email protected];
> > [email protected]; Hao, Kexin <[email protected]>
> > Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for
> > regmap_config"
> >
> > [Please note: This e-mail is from an EXTERNAL e-mail address]
> >
> > On Mon, 22 Feb 2021, Li, Meng wrote:
> > > > -----Original Message-----
> > > > From: Lee Jones <[email protected]>
> > > > Sent: Monday, February 22, 2021 5:21 PM
> > > > To: Marc Zyngier <[email protected]>
> > > > Cc: Li, Meng <[email protected]>; [email protected];
> > > > [email protected]; Hao, Kexin <[email protected]>
> > > > Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated
> > > > name for regmap_config"
> > > >
> > > > [Please note: This e-mail is from an EXTERNAL e-mail address]
> > > >
> > > > On Mon, 22 Feb 2021, Marc Zyngier wrote:
> > > >
> > > > > Hi Limeng,
> > > > >
> > > > > On 2021-02-22 03:45, Li, Meng wrote:
> > > > > > Hi Marc&Lee,
> > > > > >
> > > > > > Is there any comment on this patch?
> > > > > > Could you please help to review this patch so that I can improve
> > > > > > it if it still has weakness?
> > > > >
> > > > > If you are confident that the root issue has been fixed, no
> > > > > objection from me, but I'm not in a position to test it at the
> > > > > moment (the board I found the problem on is in a bit of a state).
> > > >
> > > > I'm not keen on flip-flopping this patch in and out of the kernel.
> > > > Someone really needs to spend some time to map out the full
> > > > life-cycle and propose a (possibly cross-subsystem) solution.
> > > >
> > > Thanks for all of your comments.
> >
> > Have you looked into this further at all?
> >
>
> No.
> Maintainer expects better solution to solve this issue from frame level, and consider cross-subsystem.

Yes, I do. Does that mean you're going to drop it?

--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog

2021-03-10 01:43:31

by Li, Meng

[permalink] [raw]
Subject: RE: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for regmap_config"



> -----Original Message-----
> From: Lee Jones <[email protected]>
> Sent: Wednesday, March 10, 2021 2:15 AM
> To: Li, Meng <[email protected]>
> Cc: Marc Zyngier <[email protected]>; [email protected];
> [email protected]; Hao, Kexin <[email protected]>
> Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for
> regmap_config"
>
> [Please note: This e-mail is from an EXTERNAL e-mail address]
>
> On Tue, 09 Mar 2021, Li, Meng wrote:
>
> >
> >
> > > -----Original Message-----
> > > From: Lee Jones <[email protected]>
> > > Sent: Tuesday, March 9, 2021 5:43 PM
> > > To: Li, Meng <[email protected]>
> > > Cc: Marc Zyngier <[email protected]>; [email protected];
> > > [email protected]; Hao, Kexin <[email protected]>
> > > Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated
> > > name for regmap_config"
> > >
> > > [Please note: This e-mail is from an EXTERNAL e-mail address]
> > >
> > > On Mon, 22 Feb 2021, Li, Meng wrote:
> > > > > -----Original Message-----
> > > > > From: Lee Jones <[email protected]>
> > > > > Sent: Monday, February 22, 2021 5:21 PM
> > > > > To: Marc Zyngier <[email protected]>
> > > > > Cc: Li, Meng <[email protected]>;
> > > > > [email protected]; [email protected]; Hao, Kexin
> > > > > <[email protected]>
> > > > > Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free
> > > > > allocated name for regmap_config"
> > > > >
> > > > > [Please note: This e-mail is from an EXTERNAL e-mail address]
> > > > >
> > > > > On Mon, 22 Feb 2021, Marc Zyngier wrote:
> > > > >
> > > > > > Hi Limeng,
> > > > > >
> > > > > > On 2021-02-22 03:45, Li, Meng wrote:
> > > > > > > Hi Marc&Lee,
> > > > > > >
> > > > > > > Is there any comment on this patch?
> > > > > > > Could you please help to review this patch so that I can
> > > > > > > improve it if it still has weakness?
> > > > > >
> > > > > > If you are confident that the root issue has been fixed, no
> > > > > > objection from me, but I'm not in a position to test it at the
> > > > > > moment (the board I found the problem on is in a bit of a state).
> > > > >
> > > > > I'm not keen on flip-flopping this patch in and out of the kernel.
> > > > > Someone really needs to spend some time to map out the full
> > > > > life-cycle and propose a (possibly cross-subsystem) solution.
> > > > >
> > > > Thanks for all of your comments.
> > >
> > > Have you looked into this further at all?
> > >
> >
> > No.
> > Maintainer expects better solution to solve this issue from frame level, and
> consider cross-subsystem.
>
> Yes, I do. Does that mean you're going to drop it?
>

Thanks for fixing this issue.
Please discard my patch, I will not do further effort and drop it.

Thanks,
Limeng

> --
> Lee Jones [李琼斯]
> Senior Technical Lead - Developer Services Linaro.org │ Open source
> software for Arm SoCs Follow Linaro: Facebook | Twitter | Blog

2021-03-10 08:33:30

by Lee Jones

[permalink] [raw]
Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for regmap_config"

On Wed, 10 Mar 2021, Li, Meng wrote:

>
>
> > -----Original Message-----
> > From: Lee Jones <[email protected]>
> > Sent: Wednesday, March 10, 2021 2:15 AM
> > To: Li, Meng <[email protected]>
> > Cc: Marc Zyngier <[email protected]>; [email protected];
> > [email protected]; Hao, Kexin <[email protected]>
> > Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated name for
> > regmap_config"
> >
> > [Please note: This e-mail is from an EXTERNAL e-mail address]
> >
> > On Tue, 09 Mar 2021, Li, Meng wrote:
> >
> > >
> > >
> > > > -----Original Message-----
> > > > From: Lee Jones <[email protected]>
> > > > Sent: Tuesday, March 9, 2021 5:43 PM
> > > > To: Li, Meng <[email protected]>
> > > > Cc: Marc Zyngier <[email protected]>; [email protected];
> > > > [email protected]; Hao, Kexin <[email protected]>
> > > > Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free allocated
> > > > name for regmap_config"
> > > >
> > > > [Please note: This e-mail is from an EXTERNAL e-mail address]
> > > >
> > > > On Mon, 22 Feb 2021, Li, Meng wrote:
> > > > > > -----Original Message-----
> > > > > > From: Lee Jones <[email protected]>
> > > > > > Sent: Monday, February 22, 2021 5:21 PM
> > > > > > To: Marc Zyngier <[email protected]>
> > > > > > Cc: Li, Meng <[email protected]>;
> > > > > > [email protected]; [email protected]; Hao, Kexin
> > > > > > <[email protected]>
> > > > > > Subject: Re: [v2][PATCH] Revert "mfd: syscon: Don't free
> > > > > > allocated name for regmap_config"
> > > > > >
> > > > > > [Please note: This e-mail is from an EXTERNAL e-mail address]
> > > > > >
> > > > > > On Mon, 22 Feb 2021, Marc Zyngier wrote:
> > > > > >
> > > > > > > Hi Limeng,
> > > > > > >
> > > > > > > On 2021-02-22 03:45, Li, Meng wrote:
> > > > > > > > Hi Marc&Lee,
> > > > > > > >
> > > > > > > > Is there any comment on this patch?
> > > > > > > > Could you please help to review this patch so that I can
> > > > > > > > improve it if it still has weakness?
> > > > > > >
> > > > > > > If you are confident that the root issue has been fixed, no
> > > > > > > objection from me, but I'm not in a position to test it at the
> > > > > > > moment (the board I found the problem on is in a bit of a state).
> > > > > >
> > > > > > I'm not keen on flip-flopping this patch in and out of the kernel.
> > > > > > Someone really needs to spend some time to map out the full
> > > > > > life-cycle and propose a (possibly cross-subsystem) solution.
> > > > > >
> > > > > Thanks for all of your comments.
> > > >
> > > > Have you looked into this further at all?
> > > >
> > >
> > > No.
> > > Maintainer expects better solution to solve this issue from frame level, and
> > consider cross-subsystem.
> >
> > Yes, I do. Does that mean you're going to drop it?
> >
>
> Thanks for fixing this issue.
> Please discard my patch, I will not do further effort and drop it.

For the record, this has not been fixed.

Someone still needs to work on a suitable fix for this issue.

--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog