From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from rune.pobox.com (rune.pobox.com [208.210.124.79]) by ozlabs.org (Postfix) with ESMTP id D66D9DDEF0 for ; Wed, 3 Jan 2007 09:37:16 +1100 (EST) Date: Tue, 2 Jan 2007 16:37:06 -0600 From: Nathan Lynch To: linuxppc-dev@ozlabs.org Subject: [PATCH] fix unbalanced uses of of_node_put Message-ID: <20070102223706.GB6279@localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Olof Johansson , Paul Mackerras List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , The (maple|pasemi)_init_IRQ functions call of_node_put(root) once more than they should, causing the refcount of the root node to underflow, which triggers the WARN_ON in kref_get. Signed-off-by: Nathan Lynch diff --git a/arch/powerpc/platforms/maple/setup.c b/arch/powerpc/platforms/maple/setup.c index f12d5c6..50855d4 100644 --- a/arch/powerpc/platforms/maple/setup.c +++ b/arch/powerpc/platforms/maple/setup.c @@ -254,7 +254,6 @@ static void __init maple_init_IRQ(void) printk(KERN_DEBUG "OpenPIC addr: %lx, has ISUs: %d\n", openpic_addr, has_isus); } - of_node_put(root); BUG_ON(openpic_addr == 0); diff --git a/arch/powerpc/platforms/pasemi/setup.c b/arch/powerpc/platforms/pasemi/setup.c index 89d6e29..bea7d1b 100644 --- a/arch/powerpc/platforms/pasemi/setup.c +++ b/arch/powerpc/platforms/pasemi/setup.c @@ -129,7 +129,6 @@ static __init void pas_init_IRQ(void) } openpic_addr = of_read_number(opprop, naddr); printk(KERN_DEBUG "OpenPIC addr: %lx\n", openpic_addr); - of_node_put(root); mpic = mpic_alloc(mpic_node, openpic_addr, MPIC_PRIMARY, 0, 0, " PAS-OPIC ");