Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755392AbdGYEs0 (ORCPT ); Tue, 25 Jul 2017 00:48:26 -0400 Received: from ozlabs.org ([103.22.144.67]:39661 "EHLO ozlabs.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753942AbdGYEru (ORCPT ); Tue, 25 Jul 2017 00:47:50 -0400 From: Michael Ellerman To: Tyrel Datwyler , Laurent Vivier , linux-kernel@vger.kernel.org Cc: David Gibson , linuxppc-dev@lists.ozlabs.org, Tyrel Datwyler , Thomas Huth Subject: Re: [PATCH] powerpc/pseries: Fix of_node_put() underflow during pseries remove In-Reply-To: References: <20170721145139.9384-1-lvivier@redhat.com> <87tw22jeud.fsf@concordia.ellerman.id.au> User-Agent: Notmuch/0.21 (https://notmuchmail.org) Date: Tue, 25 Jul 2017 14:47:48 +1000 Message-ID: <87inih6s23.fsf@concordia.ellerman.id.au> MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1215 Lines: 32 Tyrel Datwyler writes: > On 07/24/2017 03:42 AM, Michael Ellerman wrote: >> Laurent Vivier writes: >> >>> As for commit 68baf692c435 ("powerpc/pseries: Fix of_node_put() >>> underflow during DLPAR remove"), the call to of_node_put() >>> must be removed from pSeries_reconfig_remove_node(). >>> >>> dlpar_detach_node() and pSeries_reconfig_remove_node() call >>> of_detach_node(), and thus the node should not be released >>> in this case too. >>> >>> Signed-off-by: Laurent Vivier >>> --- >>> arch/powerpc/platforms/pseries/reconfig.c | 1 - >>> 1 file changed, 1 deletion(-) >> >> Thanks. I'll spare you the swearing about why we have the same bug in >> two places. > > That's probably my bad. I must have failed to test with older powerpc-util tooling where > drmgr uses the /proc/ofdt interface for device tree modification. OK. Really we should have automated tests of the various cases, I've just never had time to write any. Mainly the thing that bugs me is that we still have the two separate paths. Or if we must maintain both they could at least share more code, the two functions do basically the same thing AFAICS. cheers