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@xxxxxxx> > --- > 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 ]