diff options
author | Li Yang <leoli@freescale.com> | 2007-01-17 14:42:22 +0800 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-01-22 21:27:35 +1100 |
commit | 06cd9396778d5b70ba27fa8158db78d6bc0f007b (patch) | |
tree | 21914455cd9f38ec71e067cdabc2f56aa315ea04 /arch | |
parent | 121361f72ca93cb6710e368bb89f9d976b1da443 (diff) | |
download | linux-stable-06cd9396778d5b70ba27fa8158db78d6bc0f007b.tar.gz linux-stable-06cd9396778d5b70ba27fa8158db78d6bc0f007b.tar.bz2 linux-stable-06cd9396778d5b70ba27fa8158db78d6bc0f007b.zip |
[POWERPC] Fix OF node refcnt underflow in 836x and 832x platform code
Incorrect use of of_find_node_by_name() causes of_node_put()
on a node which has already been put. It causes the refcount of
the node to underflow, which triggers the WARN_ON in kref_get
for 836x and 832x. This fixes it.
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/platforms/83xx/mpc832x_mds.c | 2 | ||||
-rw-r--r-- | arch/powerpc/platforms/83xx/mpc8360e_pb.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/arch/powerpc/platforms/83xx/mpc832x_mds.c b/arch/powerpc/platforms/83xx/mpc832x_mds.c index f58c9780b66f..4d471190be8d 100644 --- a/arch/powerpc/platforms/83xx/mpc832x_mds.c +++ b/arch/powerpc/platforms/83xx/mpc832x_mds.c @@ -103,7 +103,7 @@ static void __init mpc832x_sys_setup_arch(void) #ifdef CONFIG_QUICC_ENGINE qe_reset(); - if ((np = of_find_node_by_name(np, "par_io")) != NULL) { + if ((np = of_find_node_by_name(NULL, "par_io")) != NULL) { par_io_init(np); of_node_put(np); diff --git a/arch/powerpc/platforms/83xx/mpc8360e_pb.c b/arch/powerpc/platforms/83xx/mpc8360e_pb.c index 7bfd47ad7233..53b92a904e8e 100644 --- a/arch/powerpc/platforms/83xx/mpc8360e_pb.c +++ b/arch/powerpc/platforms/83xx/mpc8360e_pb.c @@ -108,7 +108,7 @@ static void __init mpc8360_sys_setup_arch(void) #ifdef CONFIG_QUICC_ENGINE qe_reset(); - if ((np = of_find_node_by_name(np, "par_io")) != NULL) { + if ((np = of_find_node_by_name(NULL, "par_io")) != NULL) { par_io_init(np); of_node_put(np); |