Message ID | 20220617121235.4047670-1-windhl@126.com |
---|---|
State | New |
Headers | show |
Series | arm: mach-imx: Fix refcount leak bug in src | expand |
Hi, On Fr, 2022-06-17 at 20:12 +0800, Liang He wrote: > In imx7_src_init(), of_find_compatible_node() will return a node > pointer with refcount incremented. We should use of_node_put() when > it is not used anymore. > > Signed-off-by: Liang He <windhl@126.com> > --- > arch/arm/mach-imx/src.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/arch/arm/mach-imx/src.c b/arch/arm/mach-imx/src.c > index 59a8e8cc4469..fff2776f9180 100644 > --- a/arch/arm/mach-imx/src.c > +++ b/arch/arm/mach-imx/src.c > @@ -195,6 +195,7 @@ void __init imx7_src_init(void) > return; > > > > > src_base = of_iomap(np, 0); > + of_node_put(np); Thank you for the patch. There is another instance of this pattern a few lines above, in imx_src_init(). regards Philipp
At 2022-06-17 23:39:43, "Philipp Zabel" <p.zabel@pengutronix.de> wrote: >Hi, > >On Fr, 2022-06-17 at 20:12 +0800, Liang He wrote: >> In imx7_src_init(), of_find_compatible_node() will return a node >> pointer with refcount incremented. We should use of_node_put() when >> it is not used anymore. >> >> Signed-off-by: Liang He <windhl@126.com> >> --- >> arch/arm/mach-imx/src.c | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/arch/arm/mach-imx/src.c b/arch/arm/mach-imx/src.c >> index 59a8e8cc4469..fff2776f9180 100644 >> --- a/arch/arm/mach-imx/src.c >> +++ b/arch/arm/mach-imx/src.c >> @@ -195,6 +195,7 @@ void __init imx7_src_init(void) >> return; >> >> >> >> >> src_base = of_iomap(np, 0); >> + of_node_put(np); > >Thank you for the patch. There is another instance of this pattern a >few lines above, in imx_src_init(). > >regards >Philipp Thanks very much for your reply, Philipp. In fact, I have confirmed if there is any existed same patch in lore.kernel.org before I begin to send my patch. So there is indeed a patch reported by Miaoqian for imx_src_init(). However, that patch does not consider the bug in imx7_src_init(). Thanks again. Liang
On 17/06/2022 14:12, Liang He wrote: > In imx7_src_init(), of_find_compatible_node() will return a node > pointer with refcount incremented. We should use of_node_put() when > it is not used anymore. > > Signed-off-by: Liang He <windhl@126.com> > --- Before applying the patch please check it carefully. Previous evidence [1][2] suggests that not it was not even compiled. [1] https://lore.kernel.org/all/202206221602.odN70SHs-lkp@intel.com/ [2] https://lore.kernel.org/all/16f9a971.44e5.1817068ee3c.Coremail.windhl@126.com/ Best regards, Krzysztof
diff --git a/arch/arm/mach-imx/src.c b/arch/arm/mach-imx/src.c index 59a8e8cc4469..fff2776f9180 100644 --- a/arch/arm/mach-imx/src.c +++ b/arch/arm/mach-imx/src.c @@ -195,6 +195,7 @@ void __init imx7_src_init(void) return; src_base = of_iomap(np, 0); + of_node_put(np); if (!src_base) return; @@ -203,6 +204,7 @@ void __init imx7_src_init(void) return; gpc_base = of_iomap(np, 0); + of_node_put(np); if (!gpc_base) return; }
In imx7_src_init(), of_find_compatible_node() will return a node pointer with refcount incremented. We should use of_node_put() when it is not used anymore. Signed-off-by: Liang He <windhl@126.com> --- arch/arm/mach-imx/src.c | 2 ++ 1 file changed, 2 insertions(+)