[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87muqlqdog.fsf@concordia.ellerman.id.au>
Date: Wed, 07 Nov 2018 23:23:27 +1100
From: Michael Ellerman <mpe@...erman.id.au>
To: frowand.list@...il.com, Rob Herring <robh+dt@...nel.org>,
Pantelis Antoniou <pantelis.antoniou@...sulko.com>,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Paul Mackerras <paulus@...ba.org>,
Alan Tull <atull@...nel.org>, Moritz Fischer <mdf@...nel.org>
Cc: linux-kernel@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org,
devicetree@...r.kernel.org, linux-fpga@...r.kernel.org
Subject: Re: [PATCH v6 04/18] powerpc/pseries: add of_node_put() in dlpar_detach_node()
frowand.list@...il.com writes:
> From: Frank Rowand <frank.rowand@...y.com>
>
> "of: overlay: add missing of_node_get() in __of_attach_node_sysfs"
It would be clearer if you said 'The previous commit "of: overlay ..."
> added a missing of_node_get() to __of_attach_node_sysfs(). This
> results in a refcount imbalance for nodes attached with
> dlpar_attach_node(). The calling sequence from dlpar_attach_node()
> to __of_attach_node_sysfs() is:
>
> dlpar_attach_node()
> of_attach_node()
> __of_attach_node_sysfs()
>
> Tested-by: Alan Tull <atull@...nel.org>
> Signed-off-by: Frank Rowand <frank.rowand@...y.com>
> ---
>
> ***** UNTESTED. I need people with the affected PowerPC systems
> ***** (systems that dynamically allocate and deallocate
> ***** devicetree nodes) to test this patch.
This looks OK to me in light of the previous patch.
Acked-by: Michael Ellerman <mpe@...erman.id.au>
It also means dlpar_detach_node() is again behaving as described in the
comment to of_detach_node().
It would be good to make mention of:
Fixes: 68baf692c435 ("powerpc/pseries: Fix of_node_put() underflow during DLPAR remove")
Which removed an of_node_put() in the exact same place for different
reasons.
cheers
> diff --git a/arch/powerpc/platforms/pseries/dlpar.c b/arch/powerpc/platforms/pseries/dlpar.c
> index 7625546caefd..17958043e7f7 100644
> --- a/arch/powerpc/platforms/pseries/dlpar.c
> +++ b/arch/powerpc/platforms/pseries/dlpar.c
> @@ -270,6 +270,8 @@ int dlpar_detach_node(struct device_node *dn)
> if (rc)
> return rc;
>
> + of_node_put(dn);
> +
> return 0;
> }
>
> --
> Frank Rowand <frank.rowand@...y.com>
Powered by blists - more mailing lists