* [PATCH] mips: lantiq: Add missing of_node_put() in irq.c
@ 2022-06-15 15:33 Liang He
2022-06-21 15:21 ` Thomas Bogendoerfer
0 siblings, 1 reply; 4+ messages in thread
From: Liang He @ 2022-06-15 15:33 UTC (permalink / raw)
To: john, tsbogend; +Cc: linux-mips, linux-kernel, windhl
In icu_of_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/mips/lantiq/irq.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c
index b732495f138a..62f1b20a2169 100644
--- a/arch/mips/lantiq/irq.c
+++ b/arch/mips/lantiq/irq.c
@@ -396,6 +396,9 @@ int __init icu_of_init(struct device_node *node, struct device_node *parent)
ret = of_property_read_u32_array(eiu_node, "lantiq,eiu-irqs",
ltq_eiu_irq, exin_avail);
+
+ of_node_put(eiu_node);
+
if (ret)
panic("failed to load external irq resources");
@@ -409,6 +412,9 @@ int __init icu_of_init(struct device_node *node, struct device_node *parent)
panic("Failed to remap eiu memory");
}
+ /* if eiu_node&of_address_to_resource */
+ of_node_put(eiu_node);
+
return 0;
}
--
2.25.1
^ permalink raw reply related [flat|nested] 4+ messages in thread* Re: [PATCH] mips: lantiq: Add missing of_node_put() in irq.c
2022-06-15 15:33 [PATCH] mips: lantiq: Add missing of_node_put() in irq.c Liang He
@ 2022-06-21 15:21 ` Thomas Bogendoerfer
2022-06-21 15:32 ` Liang He
0 siblings, 1 reply; 4+ messages in thread
From: Thomas Bogendoerfer @ 2022-06-21 15:21 UTC (permalink / raw)
To: Liang He; +Cc: john, linux-mips, linux-kernel
On Wed, Jun 15, 2022 at 11:33:39PM +0800, Liang He wrote:
> In icu_of_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/mips/lantiq/irq.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c
> index b732495f138a..62f1b20a2169 100644
> --- a/arch/mips/lantiq/irq.c
> +++ b/arch/mips/lantiq/irq.c
> @@ -396,6 +396,9 @@ int __init icu_of_init(struct device_node *node, struct device_node *parent)
>
> ret = of_property_read_u32_array(eiu_node, "lantiq,eiu-irqs",
> ltq_eiu_irq, exin_avail);
> +
trailing whitespaces
> + of_node_put(eiu_node);
> +
trailing whitespaces
> if (ret)
> panic("failed to load external irq resources");
>
> @@ -409,6 +412,9 @@ int __init icu_of_init(struct device_node *node, struct device_node *parent)
> panic("Failed to remap eiu memory");
> }
>
> + /* if eiu_node&of_address_to_resource */
> + of_node_put(eiu_node);
> +
if I'm not mistaken you are freeing the taken reference twice. Shouldn't
it work by only adding the last of_node_put() ?
Thomas.
--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]
^ permalink raw reply [flat|nested] 4+ messages in thread* Re:Re: [PATCH] mips: lantiq: Add missing of_node_put() in irq.c
2022-06-21 15:21 ` Thomas Bogendoerfer
@ 2022-06-21 15:32 ` Liang He
2022-06-22 9:02 ` Krzysztof Kozlowski
0 siblings, 1 reply; 4+ messages in thread
From: Liang He @ 2022-06-21 15:32 UTC (permalink / raw)
To: Thomas Bogendoerfer; +Cc: john, linux-mips, linux-kernel
At 2022-06-21 23:21:19, "Thomas Bogendoerfer" <tsbogend@alpha.franken.de> wrote:
>On Wed, Jun 15, 2022 at 11:33:39PM +0800, Liang He wrote:
>> In icu_of_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/mips/lantiq/irq.c | 6 ++++++
>> 1 file changed, 6 insertions(+)
>>
>> diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c
>> index b732495f138a..62f1b20a2169 100644
>> --- a/arch/mips/lantiq/irq.c
>> +++ b/arch/mips/lantiq/irq.c
>> @@ -396,6 +396,9 @@ int __init icu_of_init(struct device_node *node, struct device_node *parent)
>>
>> ret = of_property_read_u32_array(eiu_node, "lantiq,eiu-irqs",
>> ltq_eiu_irq, exin_avail);
>> +
>
>trailing whitespaces
>
>> + of_node_put(eiu_node);
>> +
>
>trailing whitespaces
>
>> if (ret)
>> panic("failed to load external irq resources");
>>
>> @@ -409,6 +412,9 @@ int __init icu_of_init(struct device_node *node, struct device_node *parent)
>> panic("Failed to remap eiu memory");
>> }
>>
>> + /* if eiu_node&of_address_to_resource */
>> + of_node_put(eiu_node);
>> +
>
>if I'm not mistaken you are freeing the taken reference twice. Shouldn't
>it work by only adding the last of_node_put() ?
>
>Thomas.
Hi, Thomas.
Thanks very much for your effort to review and apply my patches.
You are right, this patch is wrong and only the last put is needed.
I will send a new patch: removing trailing whitspace and the first put.
Thans again.
Liang
>
>--
>Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
>good idea. [ RFC1925, 2.3 ]
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [PATCH] mips: lantiq: Add missing of_node_put() in irq.c
2022-06-21 15:32 ` Liang He
@ 2022-06-22 9:02 ` Krzysztof Kozlowski
0 siblings, 0 replies; 4+ messages in thread
From: Krzysztof Kozlowski @ 2022-06-22 9:02 UTC (permalink / raw)
To: Liang He, Thomas Bogendoerfer; +Cc: john, linux-mips, linux-kernel
On 21/06/2022 17:32, Liang He wrote:
>
>
> At 2022-06-21 23:21:19, "Thomas Bogendoerfer" <tsbogend@alpha.franken.de> wrote:
>> On Wed, Jun 15, 2022 at 11:33:39PM +0800, Liang He wrote:
>>> In icu_of_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/mips/lantiq/irq.c | 6 ++++++
>>> 1 file changed, 6 insertions(+)
>>>
>>> diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c
>>> index b732495f138a..62f1b20a2169 100644
>>> --- a/arch/mips/lantiq/irq.c
>>> +++ b/arch/mips/lantiq/irq.c
>>> @@ -396,6 +396,9 @@ int __init icu_of_init(struct device_node *node, struct device_node *parent)
>>>
>>> ret = of_property_read_u32_array(eiu_node, "lantiq,eiu-irqs",
>>> ltq_eiu_irq, exin_avail);
>>> +
>>
>> trailing whitespaces
>>
>>> + of_node_put(eiu_node);
>>> +
>>
>> trailing whitespaces
>>
>>> if (ret)
>>> panic("failed to load external irq resources");
>>>
>>> @@ -409,6 +412,9 @@ int __init icu_of_init(struct device_node *node, struct device_node *parent)
>>> panic("Failed to remap eiu memory");
>>> }
>>>
>>> + /* if eiu_node&of_address_to_resource */
>>> + of_node_put(eiu_node);
>>> +
>>
>> if I'm not mistaken you are freeing the taken reference twice. Shouldn't
>> it work by only adding the last of_node_put() ?
>>
>> Thomas.
>
> Hi, Thomas.
>
> Thanks very much for your effort to review and apply my patches.
>
> You are right, this patch is wrong and only the last put is needed.
>
> I will send a new patch: removing trailing whitspace and the first put.
>
> Thans again.
Thomas,
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
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-06-22 9:02 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-06-15 15:33 [PATCH] mips: lantiq: Add missing of_node_put() in irq.c Liang He
2022-06-21 15:21 ` Thomas Bogendoerfer
2022-06-21 15:32 ` Liang He
2022-06-22 9:02 ` Krzysztof Kozlowski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).